В разработке я считаю важными следующие метрики: качество кодовой базы, скорость доставки фич и удобство работы с кодом. С ростом числа разработчиков, команд и приложений очень легко получить снижение этих метрик. Наша задача — не допустить этого.
В докладе мы поговорим о том, какие инженерные практики позволили нам поддерживать указанные метрики на высоком уровне в условиях непрерывного роста. Мы поговорим про вызовы, с которыми столкнулись, и как мы с ними справились.
Вызовы:
* разработка не должна замедляться с ростом кодовой базы;
* над кодом работают несколько команд. Они не должны мешать друг другу;
* в команде один разработчик. Он ушел в отпуск. Разработчик из другой команды должен легко подхватить его задачи;
* новые разработчики должны быстро вливаться, даже если кодовая база большая;
* тестирование не должно усложняться с ростом числа фич;
* рефакторинг мы проводим постоянно. Мы не хотим создавать новые баги при этом;
* код-ревью и кросс-командное ревью не должны быть головной болью;
* необходимость фиксации всего в соглашениях. Зачем?