13 октября 2020

Доклад "ML для бизнеса. Отказаться нельзя использовать"

 Всем привет.

Этот доклад я подготовил для научной конференции ВоГУ об искусственном интеллекте.

В нём я рассказал немного о Machine Learning, его применении в ПиццаФабрике и поделился опытом внедрения и разработки проектов на его основе.

Доклад готовился для достаточно широкой аудитории конференции, поэтому технических и data science "кишочков" в нём нет. Но если вам интересна тема практического применения ML - приятного просмотра!




23 августа 2020

SQL 101. Missing parts, или о чем умалчивают в лекциях по базам данных

Всем привет!

В этой заметке пойдёт речь не о самом SQL и какие сложные запросы на нём можно писать, сколько о вопросах производительности и неочевидных моментах в проектировании схем БД.

Предлагаю вам обзор книг, которые я бы очень хотел прочитать ещё в университете до того, как пришлось уже на практике находить тонкий баланс между желаемыми фичами клиентов, масштабируемостью и производительностью MySQL.

13 апреля 2020

Теоретический не минимум по микросервисам

Всем привет.

Решил для себя систематизировать список литературы, которые прочитал по теме распределённых систем и, в частности, микросервисов.
Единственная тема, которая осталась не до конца изученной - это SRE и инструменты деплоймента. Скорее всего напишу отдельный пост по этой теме.

Основная проблема микросервисов в том, что люди часто начинают их строить не до конца осознавая какие проблемы им придётся решать.
Один из больнючих вопросов - это консистентность данных, наличие которой надо доказывать с математической жестокостью к себе, чуть ли не по шагам анализируя все сценарии, которые могут произойти после каждого действия. Обработка отказов - ещё один черт из табакерки, который начнёт выпрыгивать из разных непредсказуемых мест. Ну и на сладкое - это копание в кишочках всяких оркестраторов, чтобы понять какие гарантии насчёт zero downtime они вам дают. А потом вы начнёте задумываться как делать миграции баз данных и бэкапы в условиях распределённых систем ...
И закончиться это может осознанием того, что некоторые вещи, которые спокойно делаются в рамках одного процесса, не могут быть надёжно реализованы в принципе в реальных распределённых системах (чего только стоит один замечательный срач насчёт того, почему распределенные блокировки на базе Redis - говно и как они ничего не стоят в плане заявляемых гарантий) или цена будет такой, что сами проклянете тот миг, когда захотели "в эти самые микросервисы" податься.
В общем, это приключение только для крепких духом.

Сразу оставим за скобками вопросы понимания того как работают сети, linux, docker, как профилировать окружение (диск, сеть, память, cpu) с помощью разных тулов.
Без этих знаний дальше лучше вам вообще не читать, ну или вернуться к этой замечательной статье, как только изучите этот необходимый минимум, который вам обязательно пригодится когда ваша система уйдёт в прод.

В общем, если вы не готовы погружаться в весь этот хардкор - спокойно оставайтесь пилить фичи в своём уютном монолите и не комплексуйте. Поверьте, не со всеми монстрами, которые ждут вас в этом новом мире, вы захотите иметь дело. Но если вам всё-таки хочется узнать, насколько глубока кроличья нора, то welcome под кат.

12 января 2020

Когда "достаточно хорошо" уже достаточно, или отзыв на "Путь джедая" Максима Дорофеева

Всем привет.

Новогодние праздники я провёл за чтением разной литературы - "Повелители DOOM", "Kubernetes Patterns", "Путь джедая". Если первые две я готов рекомендовать тем, кому интересны биографии основателей Id Software и как Kubernetes поднимает уровни абстракции ПО до уровня контейнеров, то с последней не всё так замечательно.

В своё время мне дико зашли доклады Максима Дорофеева. На этой волне я прочитал "Критическую цепь" Голдратта, "Deadline" Тома Демарко, "Проект Феникс"Джина Кима, "Kanban: Альтернативный путь в Agile" и ещё больше погрузился в тему фундаментальных идей управления проектами и начал применять полученные знания.

Когда вышла первая книга Максима, то я её непременно купил и провёл с ней все новогодние каникулы. Несмотря на то, что уже был знаком с многими идеями по докладам Максима, она всё равно была отлично структурирована и читать её было одним удовольствием.

Когда в конце 2019 вышла вторая часть - я ждал не менее крутых откровений от автора, но она меня разочаровала.

01 ноября 2019

"Алло, мы ищем Team Lead-a!"

Всем привет.

Прошло 3 года с момента, когда я последний раз выходил на рынок труда (и написал по этому поводу статью), и вот я на нём уже опять. За это время я прошёл путь от Java программиста до руководителя всего отдела разработки компании Smilart, который включал в себя исследователей, админов и программистов.
Но в этот раз всё стало сильно серьёзней: мало того, что с работы пришлось уходить прямо "в никуда", так и всплыли настолько неприятные нюансы поиска работы на позицию Team Lead-a, что чуть не завели меня в депрессию. Но обо всём по порядку.

10 августа 2019

Классика Project Management-a Vol. 3:"Проект Феникс" и "Kanban. Альтернативный путь в Agile"

Всем привет.

Наконец-то дошли руки опубликовать отзыв на ещё две замечательные книжки.
Они разные по формату: первая - это бизнес-роман, вторая - более классический учебник, но схожи тем, что в попытках найти решение насущных проблем в реальных и уже существующих процессах компаний, предлагают взглянуть на всё это с высоты "тысячи футов". Книги не проповедуют какие-то процессные фреймворки, в которые вы должны втиснуться своей компанией, чтобы добиться успеха. Они пытаются рассказать о подходах к разработке специфичных для каждой отдельной компании улучшений, вопросах, которыми надо задаться, чтобы решить давно наболевшие проблемы. Они не призывают сломать старые системы в одночасье, чтобы довериться другим. Они предлагают процессы постепенного улучшения.

04 мая 2019

Концептуальное чтиво. Отзыв на "Liquid Software" и "Чистая архитектура"

Всем привет!

Начало этого года оказалось прям богатым на отличные книжки. Сперва про управление проектами и личную эффективность, а сейчас - про концептуальные вопросы разработки и проектирования ПО. Будучи достаточно жадным до знаний в этих областях и прочитав и насмотревшись всякого, я думал, что что-то новое и полезное я ещё не скоро для себя открою. Но, как это иногда бывает, некоторые люди в отрасли всё-таки продолжают удивлять даже достаточно искушенного читателя. Каждый раз приятно удивляешься тому, что есть ещё люди, которые копают ещё глубже или отполировывают казалось бы уже известные темы до вида законченных методик, которых так не хватает в нашей постоянно меняющейся и достаточно молодой отрасли. О двух таких книгах и пойдёт дальше рассказ.