Карьерный путь разработчика. Часть 2: путь менеджмента

0
215
views

Перевод второй части статьи «Navigating Software Engineering Career Paths».

Карьерный путь разработчика: менеджмент

В первой части статьи мы разобрали, как может выглядеть карьерный рост разработчика в ИТ-компании. Автор сделал особый акцент на том, что менеджмент это особый путь, а не просто следующая карьерная ступень. Многие программисты предпочитают не сходить с «технического» пути, оставаясь, например, на позициях разработчиков-сеньоров. Это совершенно нормально. Таким образом человек может продолжать писать код.

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

Менеджер по разработке ПО

Это самый нижний уровень менеджмента. Часто именно на этой точке вы решаете, идти ли дальше в менеджмент или оставаться разработчиком. Если кто-то хочет узнать больше об этом этапе, рекомендую почитать статью «Engineering Management: The Pendulum or the Ladder».

Характеристика

  • Обычно 8 и больше лет опыта.
  • Обычно отвечает за команду, где может быть до 15-20 инженеров.
  • Устанавливает четкие ожидания от членов команды. Запрашивает, обрабатывает и обеспечивает обратную связь.
  • Фокусируется на создании взаимоотношений, как внутри команды, так и между командами.
  • Наставляет членов своей команды, чтобы помочь им непрерывно совершенствоваться и отлично работать.
  • Работает с членами команды над разрешением споров внутри команды.
  • Выявляет нежелательное поведение у членов команды и работает с ними над его устранением.
  • Общается с руководством по вопросам графиков, объема работ и технических сложностей.
  • Часто играет ведущую роль в найме новых членов команды или сотрудничает по этому вопросу с HR (менеджерами по найму).
  • Представляет свои отчеты в ходе обсуждений производительности и зарплат.
  • Работает с менеджерами продуктов и технической командой для определения объема работ и сроков выполнения задач.
  • Обычно не пишет код, но периодически может участвовать в исправлении багов, «чтобы не терять хватку», но не в сложных ситуациях и не в условиях приближающегося дедлайна.
  • Расписание по большей части находится в режиме «менеджер»: в нем доминируют собрания и личные встречи. В расписании менеджера редко бывают большие непрерывные куски времени.

Вопросы, которые можно задать себе на этом уровне

  • В вашей команде именно вы определяете приоритеты и высказываете, чего ждете от членов команды?
  • Есть ли у вас понимание, чего именно хочет достичь в своей карьере каждый член команды?
  • Именно вы следите за ходом выполнения работ и докладываете руководству, когда происходят какие-то изменения?
  • Вы помогаете членам вашей команды в достижении их целей, связанных с учебой, карьерой и зарплатой?
  • Вы стараетесь выявлять и решать проблемы в коллективе до того, как они выйдут из-под контроля?

На чем стоит сфокусироваться

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

Ресурсы

Директор по разработке ПО

Путь в менеджменте

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

Характеристика

  • Обычно 12 и больше лет опыта работы в ИТ-сфере, причем 4+ лет — в менеджменте.
  • Обычно отвечает за несколько команд или за одну команду, но, например, в новой дочерней компании.
  • Работает с техлидами и менеджерами над разработкой и внедрением технических дорожных карт и «видений».
  • Отвечает за выявление и «взращивание» лидеров в своих подотчетных командах на всех уровнях (в частности, речь идет о менеджерах и разработчиках-сеньорах).
  • Обеспечивает высокую техническую оснащенность организации.
  • Часто участвует в вопросах найма персонала и планировании бюджета в рамках своих команд.
  • Работает над структурой команд и межкомандным взаимодействием для обеспечения наибольшей выгоды для бизнеса.
  • Занимается расстановкой приоритетов и для своих команд.
  • В случае необходимости занимается вопросами поставок и внешними связями своей организации.
  • Помогает решать возникающие проблемы между командами и разрешать технические споры.
  • Обычно не пишет код.
  • По сути, все его расписание будет в режиме «менеджер». В графике будут преобладать общие собрания и личные встречи. Большие непрерывные блоки времени — редкость.
  • Достаточно подкован технически, чтобы правильно задавать инженерам вопросы, касающиеся бизнеса и продукта. Тем самым вносит свой вклад в техническую архитектуру.

Вопросы, которые можно задать себе на этом уровне

  • Продолжаете ли вы постоянно работать над тем, чтобы делегировать все больше задач вашей команде, и над развитием навыков членов команды, чтобы они могли справляться с этими задачами?
  • Учатся ли ваши команды независимой работе?
  • Умеете ли вы устанавливать реалистичные ожидания относительно работы менеджеров и позитивно реагировать на их запросы?
  • Отслеживаете ли вы такие «сигналы» здоровья команды, как частота релизов и частота неприятных происшествий, а также сопутствующие им вещи?

Вице-президент по разработке ПО

Управленческая должность связана со стратегическим планированием

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

Характеристика

  • Обычно 15 и больше лет опыта.
  • Фокусируется на налаживании рабочих процессов в компании.
  • Часто отвечает за определение технических приоритетов для всей компании.
  • Работает с техническим директором, продуктовыми руководителями и другими лицами над преобразованием стратегического видения в технологическую дорожную карту.
  • Учит новых директоров и и старших менеджеров по разработке ПО.
  • Планирует общую численность персонала для всей организации и работает с директорами над распределением сотрудников по командам.

Главный технический директор

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

Характеристика

  • Обычно фокусируется на технической стратегии всей компании.
  • Редко руководит рядовыми сотрудниками напрямую. Больше работает с вице-президентом по разработке и другими руководителями в плоскости управления всей организацией.
  • Отвечает за выработку «видения» компании по части технологий.
  • Определяет, как технологии могут помочь росту бизнеса, и использует эти возможности.
  • Заботится о том, чтобы внедряемая архитектура позволяла использовать возможности для роста бизнеса, которые могут появиться в будущем.

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here