Меняем стек на продакшне в сжатые сроки Как правильно масштабироваться
“Вот бы всё это было на другом стеке” — за мою карьеру IT-инженера такая мысль приходила мне в голову, по грубым оценкам, больше одного раза.
Где-то упираешься в ограничения тулинга, где-то слишком много легаси-кода и зависимостей. Иногда хочется в новый стек, чтобы стало проще с людьми — находить, нанимать, онбордить.
Но одно дело — мечтать, а другое — пойти и действительно сделать. В конце 2019 года мы в Самокате решили сменить стек: перейти с Python на Kotlin. На тот момент мы были в продакшне: реальные пользователи, курьеры, дарксторы, логистика, инфраструктура, партнёры.
Переход на новый стек занял 9 месяцев. В процессе мы узнали много интересного: как искать баланс между “перепроверим заранее всё-всё” и “взорвём, а там посмотрим”; как планировать бэклог, чтобы уложиться к дедлайну; как работать с недокументированными частями системы; как не сжечь команду высоким темпом.
Тизер: мы успели к дедлайну и теперь пользуемся инсайтами из опыта смены стека в “мирное время”.
Head of Development в Самокате. Вместе с коллегами строят новый слой городской инфраструктуры — для доставки товаров людям. Спросите Александра при встрече, как за 9 месяцев перевести продукт со 100к заказов/день с Python на Kotlin (и особенно спросите о ночи переключения).