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

Платформа: инженер с продуктовым мышлением

Гость 46-го выпуска — Владимир Калугин, технический продакт-менеджер внутренней платформы разработки Т-Банка с доменом GitLab, CI/CD и артефактов. Александр проходит с ним весь путь: от единственного разработчика в редакции журнала до платформы Спирит, чью первую айдентику пришлось увести от вселенной Warhammer к доброму духу платформы.

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

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

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

От дискет и PHP до Туту

Сначала Владимир пользовался родительским компьютером с дискетами и синим экраном DOS, а позже получил свой на даче: от игр он перешёл к их модификации, потом к вопросу, как они устроены, и упёрся в потолок надстройки над Basic для сборки игр. Период он датирует выходом первой Need for Speed Underground — по прикидке участников, около 2003 года; в 2008-м поступил в Бауманку на ИУ5.

PHP выучил из упрямства: хотел поднять фанатский сайт по вселенной Warhammer, получил белый экран, потому что PHP по умолчанию прячет ошибки, и услышал на форуме от бородатого сисадмина: «С чего ты взял, что мы будем тебе помогать?» Обиделся, купил огромную книгу — а сейчас тому сисадмину благодарен.

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

Паттерны сложились только тогда, когда он сел писать свой фреймворк и встретил проблемы, которые они решают; Александр добавляет, что непонятые паттерны иногда безопаснее — иначе их суют всюду и на вопрос «зачем?» отвечают «я прочитал Гоф, практикуюсь».

02

Туту, Go и старт платформы Спирит

Из редакции он ушёл, когда повышение свелось к рекламным обязанностям без удвоения полставки, а вакансия с бесплатным йогуртом в офисе привела его в Туту, где взяли сразу мидлом и дали больше запрошенного: руководителя удивило, что парень из журнала рассуждает про паттерны и базы данных. Дальше — пять лет, которые он вспоминает как золотые в компании, начавшихся с PHP-монолита, продававшего железнодорожные билеты.

Культура была настоящей: новичку выдавали обязательную «Доставляя счастье» Тони Шея и альбом с правилами компании, а за прочитанную книгу доплачивали около 5% оклада, не больше одной в месяц, со списком и отзывами в Confluence. Александр замечает, что явные принципы позволяют сверять с ними решения, а без них растущая компания спорит неявными установками.

Себя Владимир считал интровертом, но ходил к тимлиду с вопросами по процессам — и стал сначала скрам-мастером на полставки, потом тимлидом без права отказаться: линейным руководителем всех бэкендеров железнодорожного направления, с one-on-one и мнением о повышениях, но без административных полномочий.

Под мультимодальные перевозки, где поездку собирали из самолёта, автобуса и поезда, в компанию занесли Go: команда Владимира переписала на нём поиск, он стал в разы быстрее, единая выдача успешно запустилась, тогда же появилась Kafka.

Сам мультимодальный проект технически работал, но его подкосили ковид и санкции, а самого Владимира — скука и выгорание, симптомы которого он опознал благодаря курсу про выгорание и энергию; после отпуска он уволился одним днём.

Следующее место искал по забавному критерию: чтобы оно совсем не походило на Туту с его бесконечными договорённостями. В тогда ещё Тинькофф его две недели морозили эйчары, и он согласился прийти при условии, что все три этапа проведут за один день; два последних вёл сам Игорь Маслов, руководитель платформы. Офер он сперва отложил ради другой компании, но проверил её историю: по найденным им рассказам, там однажды уволили всех одним днём. В конце 2020 года он вышел в платформу.

03

Платформа, MTS Travel и метрики DevEx

Платформа тогда была отдельной инсталляцией GitLab, где у всех оставались только права разработчика, а роли и настройки жили в самой платформе; первые задачи Владимира были про авторизацию на open-source-связке Ory, куда он законтрибьютил поддержку сервисных учёток. Дальше появились движок квот, GitOps-движок и манифест по API, чтобы интегрирующиеся команды заходили в платформу по одним правилам; Александр отмечает, что такое центральное место нужно проектировать сразу, а Владимир подтверждает, что подход оправдался: интеграций теперь больше, чем платформа успевает отслеживать.

В какой-то момент сменилась айдентика платформы: жёсткую отсылку к Warhammer 40 000, за которую могли прилететь вопросы от Games Workshop, заменил добрый дух платформы, а вместе с ребрендингом пришёл поворот от директивного развития к developer experience.

Из платформы Владимира выдернул технический директор Туту, ушедший запускать travel-продукт в МТС: линейный руководитель всего бэкенда, команда и архитектура с нуля. Дедлайн перед акционерами там уже стоял, а доставшаяся от аутсорса архитектура не тянула: поисковый запрос отрабатывал 30 секунд из-за N+1 в подзапросах на каждый из двух-трёх десятков атрибутов.

Срок сдвинули, архитектуру переписали и запустились в дни мобилизации; работе в два выходных подряд предшествовал честный разговор с двойной оплатой и обещанием, что отказ ничем не аукнется, — согласились все, кроме одного человека.

Навязанный корпоративными архитекторами GraphQL команда отбила аргументом «мы не Netflix».

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

Обратно Владимира позвал Дима, два года не бросавший попыток. Через год после ухода Владимира MTS Travel закрыли.

Роль технического продакта, по его словам, на рынке не устоялась: за рубежом это связующее звено между продактом и командой, а внутри компании спорят между продактом, который разбирается в технике, и принятой в платформе трактовкой — инженером с продуктовыми компетенциями; Александр, курировавший систем-дизайн, считает второй вариант более подходящим для dev-to-dev-продуктов.

Первой задачей стали метрики SPACE: опросы и системные метрики собирают вместе, поле свободного ответа дало больше всего инсайтов, а дашборд открыт по команде, отделу и компании.

Lead time из DORA покрыт примерно на 40%: на большом ландшафте, где каждая команда деплоится по-своему, связать коммит с продом трудно.

AI поверх платформы с непочиненными базовыми проблемами Владимир сравнивает с пластырем для оторванной ноги.

Выводы

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

  1. 01Владимир советует не пропускать фундамент: зная базу, можно сравнить технологии по принципам, на которых они построены; Александр добавляет, что иначе выбор объясняют модой или тем, что увидели в Твиттере.
  2. 02Технический продакт в платформе — это скорее инженер с продуктовыми компетенциями, чем продакт с приставкой «технический»: такую трактовку описывает Владимир, и Александр её поддерживает.
  3. 03DevEx мерят опросами и системными метриками вместе: ответы могут отражать когнитивные искажения, а телеметрия не раскрывает весь контекст. В опыте Владимира больше всего новых наблюдений принесло поле свободного ответа.
  4. 04Чужое решение без своей проблемы не работает: GraphQL, спускаемый корпоративными архитекторами, команда отбила аргументом «мы не Netflix», а до таких инициатив Владимир советует делать перепись технологий у команд.

Источники