К основному содержимому
к выпуску
Конспект выпуска2025CTO

Из физики в инженерию: любопытство окупается позже

Гость 43-го выпуска — Андрей Иванов: он когда-то работал у Александра, а теперь живёт в Лондоне и отвечает за алгоритмы райдхейлинга в сервисе мобильности. Разговор разматывает его путь: закрытый город физиков, Физтех, свои стартапы, распил монолитов в Тинькофф, шесть лет в британском B2B и приход LLM.

Code of Leadership · выпуск №437 минут

Конспект сокращён относительно полного выпуска; примеры и оценки передают опыт и позиции участников.

Основная линия материала
01

Секретный город, Физтех и кризис отличника

Андрей родился в 1989 году во Владимире, а вырос в Радужном — маленьком городе Владимирской области, который в советское время был закрытым и носил кодовое имя Владимир-30, по расстоянию до областного центра. Там делали лазерное оружие: холодная война дошла до точки, когда ракеты научились делать все, и появилась идея разместить лазеры на орбите, чтобы эти ракеты сбивать. Александр вспоминает космическую программу Рейгана, гость осторожно отвечает, что не берётся судить, был ли это ответ именно на неё. Побочным эффектом закрытого города стала концентрация технически образованных людей: после перестройки часть уехала делать науку в Москву и Америку, но многие остались, и в городе выросли две сильные школы. По воспоминанию Андрея, в девяносто шестом земляк взял золото международной олимпиады по физике. Сам он учился в лицейских классах и в ЗФТШ, куда задания присылали бандеролью, а проверяли студенты Физтеха; в шестнадцать лет уехал в СУНЦ МГУ, а оттуда поступил на ФРТК — отчасти потому, что там была кафедра Intel.

На Физтехе он встретил сокурсников, которые уже писали 3D-движки с физически честным рендером, и понял, что в науке есть люди гораздо талантливее. Александр вставляет байку — по его словам, из книжки про Джеффа Безоса: тот принёс задачу однокурснику-ботанику, тот подумал секунд пятнадцать и выдал ответ, ничего не записывая, — после чего Безос ушёл в инженерию, где нет правила «победитель получает всё» и где учёные второго эшелона не остаются безвестными. Андрей описывает то же ощущение через процессоры: на семинаре ты ещё только думаешь, как решать, а кто-то уже ответил — будто у тебя архитектура прошлого поколения. Опыт отрезвляющий, но, по его словам, это один из лучших периодов жизни. Перелом случился на втором курсе, когда преподаватели по информатике предложили делать курсовую командами: группа Андрея писала «убийцу Скайпа» с многопользовательскими конференциями — примерно в 2007–2008 годах, когда ни Google Meet, ни Zoom ещё не было.

02

От баннерокрутилки до монолитной CMS Тинькофф

Первые опыты были в геймдеве, на буме приложений в соцсетях. Свой стартап Андрей запустил, когда ВКонтакте разрешил разработчикам приложений работать со сторонними рекламодателями: он в одиночку делал платформу монетизации их трафика — разработка, продукт, маркетинг и дизайн на нём одном, LAMP и баннерокрутилка на PHP. Разработчики приходили, видели, что трафика нет, и уходили; расчёт был бегать между ними достаточно быстро, чтобы набралась критическая масса, — и однажды серверы даже перестали справляться. Воодушевившись, он написал в Twitter Олегу Тинькову: не хотите разместить баннер там, где бывает 300 уникальных посетителей? Ответа не было, а человек, отвечавший в банке за привлечение, написал месяцем позже — когда проект уже был брошен ради диплома. Дальше были Clickberry с интерактивным слоем поверх видео, а затем OneTwoTrip: два миллиона строк на Node.js без типизации, авиабилеты и запуск аренды автомобилей, где после ухода продакта Андрей стал ещё и продуктовым лидером команды в два с половиной человека.

Тот продукт он довёл до первой продажи, услышал «покажи деньги — дадим разработчиков» и вернулся в разработку, а вскоре стал тимлидом. Полтора месяца в наушниках он оптимизировал самый тяжёлый шаг поиска с сотнями правил ценообразования: тайминги, по его словам, улучшились процентов на тридцать — точных цифр он не помнит, — виртуальных машин стало на десятки процентов меньше, а на дашбордах Grafana появилась красивая ступенька, которая от релиза к релизу поползла назад, потому что общий код монолита съедал выигрыш. С этой любовью к микросервисам его и скантили в Тинькофф, где хотели декомпозировать монолитную CMS: она управляла сайтом и лендингами, через которые банк привлекал миллионы клиентов, была сделана фронтендерами для фронтендеров и падала целиком, если кто-то неудачно настраивал кеш. Александр вспоминает свой документ о том, как развести сервисы по категориям критичности и уменьшить blast radius.

03

Kubernetes, Лондон и приход LLM

Оркестратор Rancher несколько раз поднимал команду ночью в офис, и вместе со Стасом, отвечавшим за инфраструктуру, они уехали в Kubernetes и Google Cloud — кажется, первой командой в компании; типовые части сервисов упаковал фреймворк Crab авторства Димы, сведший разработку микросервиса к сборке из готовых кубиков. После большого релиза Александр повысил Андрея до менеджера менеджеров с четырьмя командами, но роль оказалась недолгой: желание поработать в международной компании стало жгучим, и из двух офферов он выбрал управленческий трек в британском стартапе, строившем платформу customer intelligence — анализ отзывов, опросов, тикетов, писем и звонков в колл-центры. Шесть лет там начались с команды в шесть человек, серьёзных даунтаймов и инфраструктурного техдолга; опыт переезда в Google Cloud пригодился снова, только теперь под инфраструктуру надо было нанимать людей.

Менеджмент на другом языке стал отдельным челленджем: привычная русскоязычная прямота на западе читается как бестактность, а фокус на хардскилах шокировал кандидатов, ждавших разговора о резюме, зато позволил нанять сильных. Продукт держался на аспектном анализе тональности: под индустрию клиента придумывали набор тем, размечали выборку, тренировали сеть и мерили точность. Потом пришли LLM — мощная модель стала доступна по API, порог входа рухнул, конкуренты полезли как грибы, а клиенты обещали повторить то же самое за выходные на хакатоне; инженерия стала важнее ресёрча, но, возражает Александр, в B2B покупают решение, а не технологию. Ушёл Андрей за масштабом — в глобальный B2C-сервис мобильности, выросший из такси, где цена балансирует пассажиров и водителей. Про бюджет времени он предупреждает, что чексумма не сойдётся: примерно по 12–15% на людей и на ведение проектов, около 30% на техническую работу и 15% на проработку будущих идей.

Выводы

Что стоит унести с собой

  1. 01Оптимизация внутри монолита не держится: ускоренный поиск в OneTwoTrip терял выигрыш от релиза к релизу из-за общего кода — это и стало для Андрея аргументом за микросервисы.
  2. 02Blast radius определяет архитектуру: единая CMS, сделанная фронтендерами для фронтендеров, падала целиком из-за одной ошибки в кеше, поэтому её разбили на микросервисы, а Александр отдельно описывал в документе, как развести их по категориям критичности.
  3. 03LLM обесценили не продукт, а навык: тренировка и вывод моделей уступили место интеграции чужого API, но в B2B платят за упакованное решение, а не за технологию.
  4. 04Любопытство окупается с задержкой: курсы по машинному обучению, взятые «по фану» примерно в 2015 году, пригодились Андрею через две работы, когда он строил продукт на нейросетях.

Источники