Найти в Дзене

Путь инженера

Оглавление

В этой статье я расскажу о пути инженера (от собеседования и предложения о работе до ключевого игрока) в быстро растущей продуктовой команде, и о том, через какие этапы становления проходил я сам и наша компания.

Первоначальная версия этой статьи была написана как план выступления на бизнес-встрече в ноябре 2022 года в Сочи, на которой поделился не только техническими, но и управленческими инсайтами, предложил решение существующих на тот момент проблем.

Вступление

Всем привет! Меня зовут Андрей. Я проработал в одной и той же продуктовой команде 6 лет и прошел путь от рядового программиста до лида, наблюдая, как стартап превращается в масштабный бизнес из нескольких продуктов.

Когда я пришёл в компанию, нас было около 20 человек и только два продукта. Компания росла и развивалась, запускались новые продуктовые направления, и на момент конца 2022 года мы выросли до 85 человек.

Вызовы роста

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

  1. Коммуникационный хаос. Несмотря на пересечение продуктовых направлений, команды работали изолированно. Новые инженеры сталкивались с «информационным вакуумом»: им приходилось самостоятельно разбираться в архитектуре, бизнес-логике и даже базовых процессах. Это удлиняло адаптацию и повышало риски ошибок.
  2. Конфликт приоритетов. Продуктовая разработка требовала скорости, но часть инженеров фокусировалась на «идеальном коде». Это создавало напряжение: пока одни спешили запустить MVP, другие тратили дни на рефакторинг.

Когда перфекционизм становится проблемой

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

  • Раздражение и саботаж. Он критиковал задачи как «недостаточно технически интересные».
  • Искусственное усложнение. Простые фичи обрастали ненужными абстракциями, что замедляло разработку.
  • Поиск «побега». Вместо текущих задач он начал предлагать глобальные изменения в инфраструктуре.
  • Уход. В итоге мы потеряли талантливого специалиста, потому что не смогли найти баланс между его амбициями и нуждами продукта.

Разработчику, который зациклен на «правильности» кода, сложно работать с продуктовыми задачами, которые чаще всего требуют больше скорости, чем качества (качество должно оставаться на достаточном уровне, но всё же вторично). С такими ребятами иногда очень много времени тратится на обсуждения, приходится убеждать разработчика в необходимости подвинуть качество на второй план.

Зачастую, гораздо эффективнее сделать начальный вариант какого-то функционала «на коленке» и проверить, будет ли он полезен, и если будет — то тогда есть смысл «причёсывания» этого кода, в ином же случае, должна быть возможность быстро и безболезненно удалить этот функционал.

В продуктовой разработке мы приняли принцип: «Сначала проверь гипотезу, потом масштабируй». Но такой подход работает только при четком разделении задач:

  • «Скорость» — продуктовые эксперименты, MVP.
  • «Качество» — инфраструктура, ядро продукта, безопасность.

Путь инженера

Путь инженера — это трансформация инженера до ключевого игрока в бизнесе, где код становится не самоцелью, а инструментом для решения реальных задач. На этом пути важно не только оттачивать навыки программирования, но и учиться видеть за строками кода потребности пользователей, адаптироваться к меняющимся приоритетам и находить баланс между идеальными решениями и скоростью реализации.

Путь инженера состоит из 3 основных этапов:

  1. Собеседование и предложение о работе;
  2. Период адаптации и успешное прохождение испытательного срока;
  3. Развитие в компании.

Собеседование и предложение о работе

Проблема: Инженер не оправдывает ожидания команды или команда не оправдывает ожидания инженера.

Причина: Отсутствие единого стандарта проведения собеседования и принятии решения о приеме на работу.

Решение: Не приукрашивать действительность и обговаривать предстоящие задачи ещё до собеседования, разработать план собеседования и стандарт оценки пригодности.

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

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

Ключевые критерии отбора:

  • Гибкость мышления («MVP-first» вместо «ideal code-first»).
  • Понимание бизнеса (как фича влияет на метрики?).
  • Готовность к рутине (80% задач — это доработки, а не «зеленые поля»).

Вопросы по soft-skills:

  • Почему ушел / уходишь? Если причина ухода в том, что человек не сработался с командой, то лучше будет услышать причины этого.
  • Почему хочешь работать именно у нас? Знаешь что-то о компании и продукте? Что интересно узнать? Готов ли разбираться в продукте? Важно, чтобы человек был заинтересован не только в высокой оплате труда, но и в продукте, над которым предстоит работать.
  • Конец рабочего дня/недели, всплывает критичный баг, какие видишь варианты? Важно, чтобы человек был заинтересован в стабильной работе продукта, над которым предстоит работать.
  • Какие идеи ты принёс на предыдущем месте работы? Какие были внедрены в продукт? Какие не были внедрены в продукт и почему? Важно, чтобы человек был заинтересован в развитии продукта.
  • Что важнее, хорошо написанный код или рост метрик продукта? Важно, чтобы человек понимал реальную задачу и стоимость решения этой задачи.
  • Как отделить задачу, которой нужно заниматься, от задачи, которой не нужно заниматься? Важно, чтобы человек понимал вектор развития продукта и адекватно реагировал на смену курса.

Темы вопросов по hard-skills отличаются в зависимости от инженера, например, для backend или frontend они могут быть такими:

  • Возможности языка.
  • Стандарты кодирования и шаблоны проектирования.
  • Фреймворки.
  • Базы данных.
  • Практическое задание.

Чтобы проще было ответить на вопрос «подходит ли нам тот или иной сотрудник» и сделать выбор в чью-то пользу, имеет смысл заполнить результативную таблицу по каждому кандидату, в которой можно поставить оценку от 1 до 5 по каждому пунктов.

Например, для программиста, пункты могут быть такими:

  • Знает ли возможности языка?
  • Знает ли стандарты кодирования и шаблоны проектирования?
  • Знает ли фреймворк?
  • Знает ли базы данных?
  • Алгоритмически ли мыслит?
  • Умеет ли писать самодокументируемый код?
  • Умеет ли разбираться в чужом коде?
  • Готов ли работать с legacy-кодом?
  • Может ли реализовать какой-либо функционал с нуля?
  • Легко ли общаться с человеком?
  • Понимает ли продуктовую сущность задач? Может ли предложить альтернативное решение, которое позволит сократить T2M?
  • Уверенно ли отвечает на вопросы?

Период адаптации и успешное прохождение испытательного срока

Проблема: Инженер проходит испытательный срок «под ответственность менеджера», в то время как темп работы (медленно работает), цель работы (не понимает реальной цели выполнения задачи) и отношение к работе (выполняет задачу ради «сделать») вызывают вопросы: высокий T2M, конфликты с коллегами, излишняя идеализация кода в ущерб бизнесу.

Причина: Большой поток задач и нежелание тратить время на поиск нового кандидата.

Решение: Внедрить роль ментора, разработать план адаптации и определять цели на испытательный срок.

Без четкого плана адаптации и системы наставничества компании сталкиваются с рядом скрытых издержек:

  • Новые сотрудники месяцами погружаются в проекты, тратя время на поиск информации в устаревшей документации или переспрашивая коллег — это не только замедляет их продуктивность, но и отвлекает опытных разработчиков от ключевых задач.
  • Менеджеры остаются в неведении о реальных сложностях новичков до момента срыва дедлайнов, а обратная связь между командами и руководством становится формальной.
  • Отсутствие менторства лишает текущих сотрудников возможности развивать управленческие навыки, что приводит к застою в их профессиональном росте.

Процесс наставничества подразумевает выделение некоторого текущего сотрудника (наставника), имеющего обширные представления о системах компании, для процесса найма и помощи новичку при прохождении испытательного срока.

Идеальный наставник — это сотрудник из той же команды, где будет работать новичок, желательно участвовавший в его собеседовании. Такой подход обеспечивает преемственность: ментор уже понимает сильные стороны подопечного и знает на что обратить внимание.

Наставник становится проводником новичка в первые месяцы работы. Он помогает разобраться в архитектуре, объясняет внутренние процессы и учит формулировать вопросы прежде, чем обращаться к другим отделам. Важно, чтобы ментор не просто давал ответы, а направлял. Кроме того, наставник регулярно информирует руководителя о прогрессе подопечного, отмечая как успехи, так и тревожные сигналы.

Наставничество решает не только проблемы адаптации, но и укрепляет командную культуру. Опытные разработчики, вовлеченные в обучение новичков, начинают глубже понимать процессы компании, а их лидерские качества получают практическую прокачку. Для новичков же наличие «проводника» снижает стресс, ускоряет интеграцию и повышает лояльность — они видят, что компания вкладывается в их развитие.

Также, в рамках адаптации новичка, критически важно проводить структурированные диалоги с руководителем группы разработки. Эти встречи помогают устранить недопонимание, скорректировать вектор работы и дать сотруднику чувство вовлеченности.

Срок: Первые 30–45 дней испытательного срока — момент, когда новичок уже погрузился в процессы, но еще не успел закрепить неэффективные привычки.

Цель: Выявить скрытые проблемы адаптации, скорректировать приоритеты сотрудника, показать, как его работа влияет на общие цели.

Возможные и важные вопросы новичка к руководителю:

  • Есть ли что-то, что мне нужно перестать делать? Есть ли что-то, что мне нужно продолжать делать? Есть ли что-то, что мне нужно начать делать?
  • Могу ли я повлиять на ближайшие планы команды/компании? Могу ли я повлиять на архитектуру? Могу ли я повлиять на смежные области? Что я должен знать перед тем, как предлагать свои идеи?
  • Как мне поступить в случае, если я вижу недочёты по архитектуре (не соблюдение SOLID, например), но команда считает это нормальным? Как мне поступить в случае, если я вижу недочёты по написанию и/или оформлению (не соблюдение PSR, например), но команда считает это нормальным?
  • Какие планы для команды/компании есть на ближайшие 1/3/6/12 месяцев?

Такие встречи — не формальность, а способ построить доверие. Они превращают новичка из «временного ресурса» в осознанного участника команды.

Понимание своей роли в долгосрочных планах повышает вовлеченность. Новичок видит, что его мнение учитывается, а ошибки воспринимаются как этап роста.

Адаптация — это не только про код, но и про интеграцию в команду. Через наставничество и диалог с руководством новичок превращается в осознанного участника процессов, который:

  • Понимает, как его работа влияет на бизнес;
  • Умеет предлагать идеи, не нарушая текущих приоритетов;
  • Знает, куда расти.

Системный подход к этому этапу сокращает время «раскачки» и снижает риски раннего ухода сотрудников.

В конце испытательного срока важно зафиксировать, как новый сотрудник «вписался» в команду, какие его навыки уже приносят пользу, а где требуются корректировки — для этого необходимо провести «нулевое» Performance Review. На основе которого не только принимается решение о прохождении испытательного срока, но и создается персонализированный план роста, который учитывает как амбиции сотрудника, так и потребности бизнеса. Это не оценка ради оценки, а инструмент, который превращает испытательный срок из «экзамена» в начало осознанного пути в компании.

Возможные и важные вопросы руководителя к новичку:

  • В чем ценность? На чем зарабатываем? Кто конкуренты? Кто пользователи? Какие у них проблемы? Важно, чтобы человек понимал продукт и понимал вектор развития этого продукта.
  • Какие последние изменения или обновления продукта ты считаешь наиболее значимыми для пользователей? Что можно сделать в нашем продукте по-другому или лучше? Важно, чтобы человек следил за изменениями продукта и понимал их значимость.
  • Предлагал ли какие-то идеи? Были ли эти идеи востребованы? Важно, чтобы человек принимал активное участие в достижении поставленных целей.
  • Как сам оцениваешь отработанный период? Что узнал? В чём разобрался? В чём, как кажется, что разобрался недостаточно? Важно, чтобы человек мог дать оценку своей деятельности.
  • Какие цели есть на ближайший квартал? Год? Какой скилл прокачаешь за это время? Чем компания может помочь? Чем может помешать? Важно, чтобы у человека было желание развиваться внутри команды, и чтобы мы знали, как ему помочь.
  • Оправдывает ли компания твои ожидания? Если нет, то какие? Важно, чтобы цели сотрудника и компании совпадали.

Развитие в компании

Проблема: Спустя некоторое время работы, инженеру может стать скучно.

Причина: Отсутствие личностного и карьерного роста.

Решение: Разработать стандарт оценки вовлеченности и продуктивности, разрабатывать индивидуальный план развития для каждого инженера.

Оценка вовлеченности и продуктивности — это как «медосмотр» для работы сотрудника. Её цель — понять, насколько человек вкладывается в общее дело, какие у него сильные стороны, где есть пробелы, и как помочь ему расти. Это не экзамен с оценкой «хорошо» или «плохо», а честный разговор, который помогает и сотруднику, и компании двигаться вперёд.

Зачем это нужно?

  • Увидеть прогресс. Что получилось за последние месяцы? Где были трудности?
  • Найти точки роста. Какие навыки прокачать, чтобы работать эффективнее?
  • Строить планы. Поставить цели на следующий квартал или год и понять, как их достичь.
  • Укрепить доверие. Открытый диалог между сотрудником и руководителем — залог здоровой атмосферы в команде.

О чём спрашивать?

  1. Ответственность и самостоятельность: Принимает ли сотрудник решения сам или ждёт указаний? Готов ли отвечать за свои действия, даже если что-то пошло не так? Справляется ли с более сложными задачами, чем раньше?
  2. Командная работа: Помогает ли коллегам, если у них проблемы? Берёт ли ответственность не только за свою работу, но и за общий результат?
  3. Гибкость и бизнес-ориентированность: Может ли быстро сделать «черновой» вариант фичи, чтобы проверить её ценность для бизнеса, даже если код не идеален? Предлагает ли решения во время обсуждения новых задач?
  4. Ценность для компании: Делится ли знаниями с командой, если стал экспертом в чём-то? Изучает ли новые технологии, которые могут улучшить продукт?
  5. Рефлексия и планы: Что удалось сделать за прошедший период? Что не получилось и почему? Как сам сотрудник оценивает свой рост? Где чувствует неуверенность? Какие цели ставит на ближайший год? Какие навыки хочет прокачать?

Почему это работает?

Такая оценка — не просто галочка в отчете. Она помогает:

  • Сотруднику: Понять, куда расти, и получить поддержку.
  • Команде: Увидеть, кто как вкладывается в общий результат.
  • Компании: Удержать таланты и избежать выгорания.

Главное — не превращать разговор в допрос. Это диалог, где важно услышать друг друга и договориться о следующих шагах. Как говорится, «не ошибается тот, кто ничего не делает» — но, если ошибки вовремя заметить и исправить, расти будет и сотрудник, и бизнес.

Итог

Инженер в продуктовой команде — это не просто исполнитель, а соавтор бизнес-логики. Его решения напрямую влияют на то, выживет ли фича на рынке.

Путь инженера — это не только код. Это умение слышать бизнес, принимать неидеальные решения и не бояться меняться.

Лучшее, что мы можем дать сотруднику — это не зарплата, а возможность расти вместе с компанией.

Другие статьи, пересекающиеся с основной мыслью:

P.S. Какие ошибки стали ценными уроками для вас? — Напишите об этом в комментариях.

Подписывайтесь на мой канал в Телеграм