Пять лет на одном месте
Осенью 2018 я начал работу над первой версией нейронки по маммографии. В мае 2019 прошли первые собеседования в свежий ML-отдел. Получается, я уже около пяти лет работаю в одном и том же месте - Цельсе. Звучит, как очень много - по крайней мере для стремительной IT-индустрии. Какие есть положительные и не очень стороны такого "долгожительства"?

Плюсы
1) Разнообразие ролей, задач и проблем. Начинал я как микс ML-рисёчера и ML-инженера, достаточно быстро к этому добавился пласт лидских задач, связанных с созданием и построением команды - найм, выбор и адаптация процессов, работа с людьми, взаимодействие со смежными командами. Кодерские и ML-задачи постепенно стали уходить на второй план (но не пропали полностью), зато к менеджерских обязанностям присоединились активности по развитию технического и общего бренда. В какой-то момент мы стали развивать и дата-инженерное направление, а я окончательно превратился в лида лидов и даже в ML-продакта. За всё это время мне пришлось столкнуться с огромным количеством задач, побед, неудач и челленджей - от фикса багов и срочного поднятия метрик до полного перестроения отдела и увольнения сотрудников. Портфолио интересных кейсов накоплено очень внушительное.

2) Возможность узнать даже самые долгосрочные последствия своих решений. Некоторые решения могут повлиять на всю нашу последующую жизнь - при этом в моменте они могут казаться не такими значительными. Это правило отлично работает и для менеджерских решений. Нанять или не нанять определённого человека, выбрать тот или иной стиль общения с сотрудниками на самой заре стартапа, произнести те или иные слова в самый сложный момент. Даже постфактум оценить все последствия своих решений практически невозможно - слишком хитро они сплетаются между собой и действиями других людей. Но определённые закономерности уловить точно можно - и я рад возможности это сделать.
3) Глубокое погружение в очень интересную доменную сферу. Наверное, весело работать в аутсорсе, каждый год по несколько новых областей - от ритейла до сельского хозяйства. Да, работа на протяжении нескольких лет в одной сфере иногда может наскучивать, но взамен ты получаешь недостижимую иным способом глубину. Погружения в кредитную сферу мне хватило на всю жизнь, а вот медицина - совсем другое дело. До сих продолжаю узнавать новые штуки, особенно после появления в ML-командах прикреплённых врачей-консультантов.

4) Возможность получить разнообразные знания в ML и software-инженерии. Звучит слегка контринтуитивно - разве работа в одной и той же сфере не ведёт к узости кругозора и профессиональному застою? Оказывается, что совсем необязательно. Во-первых, играет свою роль фактор постепенного превращения рисёч-проекта в большое, сложное продакшн-решение. На разных этапах этого пути удаётся познакомиться с самыми разными инженерными штуками - от создания простенького сёрвинга ML-моделей до рефакторинга запутанного легаси-кода. Во-вторых, хоть всё и крутится вокруг computer vision, но он и сам весьма разнообразный (2D, 3D, multi-view, классификация, ординальная регрессия, детекция, сегментация, классические методы), так ещё и удаётся повозиться с модельками из других доменов (бустинг для агрегации предиктов нейронок, LLM для обработки текстовых заключений врачей).
5) Близкие рабочие и личные отношения с классными людьми. В отделе до сих пор работают два человека из самой первой волны найма, а средний сотрудник ML-отдела отработал у нас больше трёх лет. Для меня это не просто чуваки, которые делают какие-то задачки для нашей компании, а люди, которых я лично нанимал, многие из которых пришли зелёными джунами, а стали лидами и синьорами. Некоторых из них я даже могу назвать друзьями, и каждого из них я всегда рад видеть лично и провести вместе время. Для меня эти ребята - чуть ли не главный кайф, который есть в моей работе.

6) Возможность внести ощутимый вклад в развитие своей области. Когда я начал заниматься Цельсом, область ML в рентгенологии в России, да и в мире тоже, была в достаточно зачаточном состоянии. Да, я не гениальный учёный, пишу средненький код и не всегда самый приятный человек в общении. Но я чувствую, что у меня получилось, пусть немного, но повлиять на развитие и популяризацию ML в медицине в России. Вряд ли это было бы возможно, если бы не долгая, местами нудная и утомительная работа на протяжении последних пяти лет.
Минусы
1) Ограничения в плане профессионального развития и кругозора. Всё-таки работа в одной сфере имеет свои ограничения. Я мало что знаю о хайлоаде и с открытым ртом слушаю доклады ребят из бигтеха. За LLM шарю только на уровне хобби - почитываю интересные статейки (хотя список "на будущее" уже содержит несколько десятков ссылок) и длинные твиттер-треды. Ничего не понимаю в edge-деплое - все последние видосы Антона Мальцева влетели мне в одно ухо и вылетели в другое. Да, знать всё невозможно даже при регулярной смене работы - но всё-таки новое окружение вынуждает постигать новое и ставит перед тобой новые задачи.
2) Определённая поверхностность знаний. Скорость развития стартапа и разнообразие задач часто не позволяет глубоко погружаться в тему. Прикрутил какой-то инференс - работает да и шут с ним. Завелась новая архитектура? Сорри, статью читать нет времени. Выветрилась из головы вся базовая математика и хочется почитать новую книжку Бишопа? Извините, нужно сходить на 17 встреч за три часа (ремарка - нет, не надо, отказывайтесь почти от всех встреч, где нет адженды, или где, вам не могут объяснить, зачем там ваше присутствие). Приходится утешать себя тем, что при необходимости разберёшься в любой теме, но червячок сомнения в своих силах любит время от времени поползать где-то внутри.
3) Обрастание корпоративной политикой. Любая долго существующая компания, даже небольшого размера, начинает обрастать негласными правилами, конфликтами интересов, бюрократией и прочей мутью, с которой надо бороться, но не всегда получается. Чем выше твоя должность в компании и чем дольше ты в компании - тем больше вероятность, что ты будешь в три слоя опутан этой паутиной. Столкнуться с этим в той или иной степени можно и у нас, и в условном Яндексе. Бороться, повышать прозрачность и направлять культуру компании - надо, победить полностью - почти невозможно.
4) Ограничения в плане финансового роста. Трудно спорить с тем, что один из простых способов увеличить зарплату - перейти на другое место работы. На одном месте тоже можно хорошо и плавно расти финансово, но резкие рывки - скорее, редкость, да и потолок чаще всего присутствует. А у меня вообще ситуация особенная - кофаундерская.

Вместо выводов
Однозначно самый частый вопрос, который я слышу от новых знакомых - "зачем ты вернулся из Нью-Йорка в Петербург"? Одна из нескольких важных причин - я приехал открыть ML-отдел в Цельсе. С тех пор утекло много воды, а в стране случилось много плохого (для меня). Но я всё-таки не жалею о возвращении - и во многом благодаря работе в Цельсе.