-
SQL 101. Missing parts, или о чем умалчивают в лекциях по базам данных
Aug 23, 2020
-
4 мин. чтения
-
сборник_тематических_материалов
разработка_ПО
базы_данных
Всем привет.
В этой заметке пойдёт речь не о самом SQL и какие сложные запросы на нём можно писать, сколько о вопросах производительности и неочевидных моментах в проектировании схем БД.
Предлагаю вам обзор книг, которые я бы очень хотел прочитать ещё в университете до того, как пришлось уже на практике находить тонкий баланс между желаемыми фичами клиентов, масштабируемостью и производительностью MySQL.
-
Теоретический не минимум по микросервисам
Apr 13, 2020
-
5 мин. чтения
-
сборник_тематических_материалов
разработка_ПО
рецензия
Всем привет.
Решил для себя систематизировать список литературы, которые прочитал по теме распределённых систем и, в частности, микросервисов. Единственная тема, которая осталась не до конца изученной – это SRE и инструменты деплоймента. Скорее всего напишу отдельный пост по этой теме.
Основная проблема микросервисов в том, что люди часто начинают их строить не до конца осознавая какие проблемы им придётся решать.
Один из больнючих вопросов – это консистентность данных, наличие которой надо доказывать с математической жестокостью к себе, чуть ли не по шагам анализируя все сценарии, которые могут произойти после каждого действия. Обработка отказов – ещё один черт из табакерки, который начнёт выпрыгивать из разных непредсказуемых мест. Ну и на сладкое – это копание в кишочках всяких оркестраторов, чтобы понять какие гарантии насчёт zero downtime они вам дают. А потом вы начнёте задумываться как делать миграции баз данных и бэкапы в условиях распределённых систем …
И закончиться это может осознанием того, что некоторые вещи, которые спокойно делаются в рамках одного процесса, не могут быть надёжно реализованы в принципе в реальных распределённых системах (чего только стоит один замечательный срач насчёт того, почему распределенные блокировки на базе Redis – говно и как они ничего не стоят в плане заявляемых гарантий) или цена будет такой, что сами проклянете тот миг, когда захотели «в эти самые микросервисы» податься. В общем, это приключение только для крепких духом.
Сразу оставим за скобками вопросы понимания того как работают сети, Linux, Docker, как профилировать окружение (диск, сеть, память, cpu) с помощью разных тулов. Без этих знаний дальше лучше вам вообще не читать, ну или вернуться к этой замечательной статье, как только изучите этот необходимый минимум, который вам обязательно пригодится когда ваша система уйдёт в прод.
В общем, если вы не готовы погружаться в весь этот хардкор – спокойно оставайтесь пилить фичи в своём уютном монолите и не комплексуйте. Поверьте, не со всеми монстрами, которые ждут вас в этом новом мире, вы захотите иметь дело. Но если вам всё-таки хочется узнать, насколько глубока кроличья нора, то welcome под кат.
-
Когда «достаточно хорошо» уже достаточно, или отзыв на «Путь джедая» Максима Дорофеева
Jan 12, 2020
-
3 мин. чтения
-
рецензия
Максим_Дорофеев
Всем привет.
Новогодние праздники я провёл за чтением разной литературы – «Повелители DOOM», «Kubernetes Patterns», «Путь джедая». Если первые две я готов рекомендовать тем, кому интересны биографии основателей Id Software и как Kubernetes поднимает уровни абстракции ПО до уровня контейнеров, то с последней не всё так замечательно.
В своё время мне дико зашли доклады Максима Дорофеева. На этой волне я прочитал «Критическую цепь» Голдратта, «Deadline» Тома Демарко, «Проект Феникс» Джина Кима, «Kanban: Альтернативный путь в Agile» и ещё больше погрузился в тему фундаментальных идей управления проектами и начал применять полученные знания.
Когда вышла первая книга Максима, то я её непременно купил и провёл с ней все новогодние каникулы. Несмотря на то, что уже был знаком с многими идеями по докладам Максима, она всё равно была отлично структурирована и читать её было одним удовольствием.
Когда в конце 2019 вышла вторая часть – я ждал не менее крутых откровений от автора, но она меня разочаровала.
-
«Алло, мы ищем Team Lead-a!»
Nov 1, 2019
-
8 мин. чтения
-
управление_разработкой
Всем привет.
Прошло 3 года с момента, когда я последний раз выходил на рынок труда (и написал по этому поводу статью), и вот я на нём уже опять. За это время я прошёл путь от Java программиста до руководителя всего отдела разработки компании Smilart, который включал в себя исследователей, админов и программистов. Но в этот раз всё стало сильно серьёзней: мало того, что с работы пришлось уходить прямо »в никуда», так и всплыли настолько неприятные нюансы поиска работы на позицию Team Lead-a, что чуть не завели меня в депрессию. Но обо всём по порядку.
-
Классика Project Management-a Vol. 3:«Проект Феникс» и «Kanban. Альтернативный путь в Agile»
Aug 10, 2019
-
6 мин. чтения
-
сборник_тематических_материалов
управление_разработкой
рецензия
Всем привет.
Наконец-то дошли руки опубликовать отзыв на ещё две замечательные книжки. Они разные по формату: первая – это бизнес-роман, вторая – более классический учебник, но схожи тем, что в попытках найти решение насущных проблем в реальных и уже существующих процессах компаний, предлагают взглянуть на всё это с высоты «тысячи футов». Книги не проповедуют какие-то процессные фреймворки, в которые вы должны втиснуться своей компанией, чтобы добиться успеха. Они пытаются рассказать о подходах к разработке специфичных для каждой отдельной компании улучшений, вопросах, которыми надо задаться, чтобы решить давно наболевшие проблемы. Они не призывают сломать старые системы в одночасье, чтобы довериться другим. Они предлагают процессы постепенного улучшения.