Принципы
Маленький шаг лучше большого обещания
Три завершённых проекта лучше пяти больших. Команда запоминает — будущему мне доверяют.
Лучшая документация — работающий код
Код-ревью — самая дешёвая документация для следующего инженера. README сам себя не откроет; комментарий в дифе живёт дольше.
Я найму одного хорошо, а не пятерых быстро
На сегодня — три хайра, все на месте. Если бы я нанимал быстро, цифра выглядела бы иначе.
Сначала запустить, потом оптимизировать на данных
Оптимизация без данных — это анимация догадок. Сначала рабочая штука, потом профайлер.
Трое — это уже команда
Привычки маленькой команды надо ставить, пока команда маленькая. Позже — на порядок труднее.
Перед тем как трогать вторую базу — подумай трижды
Каждое новое хранилище — это ещё один on-call, ещё одна история бэкапов и ещё одна система, которой следующему инженеру придётся учиться.
Если страшно деплоить в пятницу — система не готова
Если ты не можешь спокойно выкатить в пятницу в 17:00 — где-то ты уже знал, что система сильнее тебя. Это сигнал, не код.
Слушать дольше, чем говорить
Еженедельные 1:1 с командой. Когда я слушаю больше, чем говорю — половина «нерешённых» вопросов решается сама собой.
Хвалить публично, дебажить наедине
Победы — с именами, в общем чате. Ошибки — один на один, без интонации обвинения. Человек уже знает; не помогать ему чувствовать себя ещё хуже.
Не путай движение и прогресс
Много встреч ≠ много работы. Много релизов ≠ полезные релизы. Вежливое «нет» — самый действенный инструмент, что у меня есть.
Обновляется, когда что-то действительно меняется, а не когда выходит новый фреймворк.