Продолжаем тему Engineering Manager и сегодня немного больше о позиции менеджера в структуре организации, его задачах и плюсах с минусами этой позиции.
Место в организации
Давайте начнем с того, где находится Engineering Manager в среднестатистической компании. Обычно эта позиция находиться между Tech Lead и Senior Engineering Manager, условно:
Junior ➜ Middle ➜ Senior ➜ Tech Lead ➜ Engineering Manager ➜ Senior Engineering Manager.
Это происходит, если Tech Lead прекрасно справляется со своими обязанностями и релизит фичи вовремя, укладывается в сроки и качество кода не страдает на протяжении определенного промежутка времени (допустим год и больше).
Для того, чтобы точнее представлять, чем обычно занимается Tech Lead и чем обычно занимается Engineering Manager, можно глянуть на диаграмму ниже.

Основная разница в том, что Tech Lead, в отличии от Engineering Manager не занимается (в большинстве случаев) управлением и развитием людей, так же, как и управлением проекта.
Идея роли Engineering Manager заключается в том, чтобы сосредоточится на управлении проектом и людьми, налаживанием коммуникации с другими командами, приоритезации задач и планирование работы команды на короткий (до месяца) и средний (до года) срок с учетом бизнесс-метрик команды.
Также, после роли Tech Lead ты уже начинаешь понимать, что такое планирование обьема работы за всю команду на текущий спринт, распределении задач и начинаешь немного больше вникать в бизнесс-метрики.
Задачи
Если более детально расписать обьем задач менеджера, то получится следующее:
-
Регулярные 1:1 с подчиненными
-
Разработка планов развития подчиненных
-
Выбор методологии разработки (Scrum / Scrumban / Kanban / etc.)
-
Приоритезация задач
-
Понимание места команды в общей структуре организации и то, за какие бизнесс-метрики отвечает команда
-
Планирование нагрузки на каждого подчиненного вместе с Tech Lead
-
Планирование задач на квартал вместе с Product Manager
-
Коммуникация со смежными командами
-
Ответственность за результат и документацию команды
-
Найм дополнительных людей в команду
Получается весьма неплохо, так, что у неподготовленного человека может и кукуха двинуть с непривычки, но к этому можно подготовиться (например почитав список литературы) или походив тенью за своим текущим менеджером.
И вот ты сидишь и думаешь: «Ну и на… зачем оно мне надо?»
Плюсы
-
Зарплата
-
Понятно, что раз позиция повыше, то и зарплата побольше. Средняя разница между тех лидом составляет около 20%.
-
-
Опыт управления людьми
-
Это первая позиция, где у тебя в прямом подчинении находяться люди.
А там, где управление людьми, там уже рост ограничен лишь CTO или VP.
Знаю, что есть разные конфигурации, особенно в маленьких компаниях, где есть только Tech Lead и над ним сразу или CTO или Head of Engineering. Не забываем и о том, что ты реально начинаешь влиять на карьеры других людей.
-
-
Опыт планирования и приоретизации
-
Понятно, что ты занимаешься, до определённой степени, приоритезацией и планированием на уровне себя любимого все время, а на уровне лида, отвечаешь за техническую составляюшую релиза команды.
-
На уровне менеджера тебе нужно сначала договорится со всеми командами от которых зависит твоя команда о том, что должно быть сделано, определить зоны ответственности, настроить коммуникацию и продумать систему обновления по изменениям (что особенно важно в больших компаниях, потому что все что больше изменения перевода занимает недели и месяцы)
-
После этого нужно просмотреть все запросы из разных команд и по степени срочности (от «надо было вчера», до «если через год будет — отлично») расставить приоритеты
-
Когда приоритеты расставлены, договориться с продукт менеджером о деталях с точки зрения продукта и бизнесса и технических деталяз с тех лидом и менеджерами зависящих команд
-
-
Найм людей
-
Ты решаешь сколько и каких людей тебе в команду нужно нанимать, сам руководишь полным процессом отбора кандидатов и можешь решать какую зарплату платить новому члену комаеды (обычно в определённых рамках, но всё же)
-
Минусы
-
Управление людьми
-
От тебя постоянно чего-то хотят. Просто привыкни к этому состоянию. В первое время это особенно истощает с непривычки, но время и опыт помогают. Добавить сюда ещё все проблемы на текущем рынке найма и непомерные запросы по зп, а также миграцию кадров, выйдет тот ещё гемор.
-
-
Приоретизация и планирование
-
На первых парах это требует достаточно много внимания, поскольку ты в начале, до конца не понимаешь насколько заранее ты должен подготовить задачи для команды, договориться о технических задачах, подготовить отчеты по загрузки команды, какое кол-во фич нужно будет зарелизить зп квартал, т.д.
-
-
Бюджет
-
С этого момента ты также отвечаешь за расходы своей команды на CI / CD / DB / кластеры, на которых крутяться твой бекенд и клиенты
-
-
Коммуникация с зависящими / зависимыми командами
-
Люди бывает разные. Как и команды. У кого-то документация кривая или ее нет, кто-то уже озлоблен и запарен и игнорирует встречи, кому-то просто пофиг и добиться от него информации нереально.
-
-
Ответственность за команду
-
Да, теперь ты несешь всю ответственность за команду, что может лечь тяжёлым грузом на твои плечи. Можно сказать и про то, что тебе решать кадровые проблемы, если член команды уйдёт, и отвечать за просранные сроки, но тут кроется ещё одна проблема о которой мало вспоминают — тобой будут закрывать все недостающие позиции (не везде, не все и не всегда, но достаточно часто).
-
Нет мобильного разработчика, хотя ты никогда не писал под мобилы — ты первый кандидат. Нет продуктового менеджера — повыполняй-ка его обязанности, пока не найдем нового. Нет Agile Coach — теперь ты за него!
-
Я попытался кратко, но чётко обьяснить разницу между позициями лида и менеджера, и коротко пояснить про все задачи, плюсы и минусы.
Монстры менеджмента приветствуются в комментариях, буду рад добавить к посту недостающих деталей!
P.S. Переработанный пост в благодарность за критику прошлого поста от @b00b1ik
ссылка на оригинал статьи https://habr.com/ru/post/649829/
Добавить комментарий