Роли в разработке IT-продукта: аккаунт, проджект-менеджер, тимлид
Эффективность команды во многом зависит от того, как выстроен процесс коммуникации и как распределены вопросы, за которые отвечает каждый участник проекта. Расскажем на нашем опыте о том, как можно разграничить роли, как в этом помогает матрица ответственности и какую пользу от этого получают заказчики.
Разберемся с терминологией
Говоря об управлении разработкой, выделяют несколько ключевых участников. В случае, когда IT-компания создает продукты на заказ, на всех проектах обязательно есть роль аккаунт-менеджера для коммуникаций с заказчиком. В зависимости от сложности разработки могут подключиться проджект-менеджер и тимлид. Рассмотрим, чем отличаются их задачи и на каких проектах они необходимы.
-
Аккаунт-менеджер (англ. account manager) выступает гарантом соблюдения обязательств перед клиентом, развивает с ним партнерские отношения, курирует команды проектов, решает любые нестандартные задачи и спорные вопросы.
-
Проджект-менеджер (англ. project manager) помогает в непосредственной реализации технических задач: общение с командой разработчиков, бюджет, содержание и сбор требований по проекту, постановка целей, распределение задач и контроль за соблюдением сроков.
-
Тимлид (англ. Team lead) необходим на масштабных проектах повышенной сложности (например, при разработке банковских продуктов). Он является руководителем группы разработчиков и отвечает за техническое управление.
Как правило, состав участников команды определяется в зависимости от масштаба проекта. Однако, в любом случае необходимо четкое распределение ролей, чтобы обеспечить своевременное выполнение всех этапов работ.
Менеджеры на проекте
При формировании команды важно сразу определить, кто из участников за какие функции отвечает. Например, у нас для этого разработана документация – в частности, матрица RACI для распределения зон ответственности. Эта инструкция помогает закрепить обязанности за каждым участником проекта и избежать спорных ситуаций. Такой документ бывает необходим на старте и в процессе работы. Матрица зон ответственности также выступает в качестве индикатора и помогает выяснить, есть ли в команде все необходимые специалисты.
Рассмотрим подробнее, каким образом могут быть распределены обязанности между аккаунт-менеджером, руководителем проекта и тимлидом.
Аккаунт-менеджер – «правая рука» клиента на проекте
Аккаунт занимается стратегическим планированием и управлением, находится в постоянном контакте с клиентом. Он отвечает за развитие долгосрочных партнерских отношений и за соблюдение обязательств, заявленных сторонами. В его задачи входит формирование плана работ, анализ результатов сотрудничества, разрешение спорных ситуаций с клиентом, выявление и анализ рисков.
Аккаунт сопровождает заказчика на всех этапах реализации проекта, в том числе проводит стартовый митинг, занимается налаживанием и поддержанием коммуникаций команды с представителями заказчика. Также он предоставляет обратную связь клиенту по текущим итерациям, фичам, этапам.
Аккаунт курирует решение любых возникающих вопросов, в том числе организационных, проектных, технических, юридических, финансовых, при необходимости привлекает экспертов. Также в его задачи входит управление документоооборотом. Он отслеживает процессы создания ПО и при необходимости помогает скорректировать работу на проекте таким образом, чтобы она отвечала бизнес-целям.
Проджект-менеджер или руководитель проекта
Проджект-менеджер контролирует все этапы реализации задач. Для того чтобы общаться с клиентом по техническим и сугубо проектным вопросам, он глубоко погружается в проект и вникает во все нюансы ТЗ.
В числе его задач:
-
Согласование с заказчиком плана работ, а также сроков.
-
Формирование, организация и контроль работы команды.
-
Распределение зон ответственности среди ключевых участников.
-
Контроль соблюдения требований к разрабатываемому ПО, выполнения ограничений по сроку и бюджету.
-
В случае изменений задач или любых отклонений от плана – анализ и корректирующие меры, согласованные с заказчиком, а также сбор и контроль метрик.
Таким образом, проджект-менеджер отвечает за конкретизирование пожеланий клиента (сроки, приоритеты), уточняет бизнес-требования, координирует и контролирует работу команды, занимается разрешением спорных ситуаций в организационном и техническом планах.
Руководитель группы разработчиков или тимлид
Тимлид подключается в первую очередь к масштабным проектам, где требуется техническое управление. В числе его задач:
Формирование сплоченной команды, ее микроклимата и корпоративной культуры.
Определение стратегии разработки: формирование кодстайла, достижение запланированной производительности, обеспечение требований безопасности, выбор правильного архитектурного решения.
Распределение задач между членами команды, контроль их выполнения, соблюдение сроков и других требований, проведение кодревью.
Наряду с этим, тимлид выстраивает коммуникации внутри команды, а также с другими специалистами, например, с аналитиками, QA, дизайнерами. Он отвечает за то, чтобы простые вопросы или те, которые уже возникали ранее (организационного, технического плана), решались без привлечения заказчика. Как правило, тимлид – как со стороны заказчика, так и со стороны аутсорсера – необходим на всех крупных проектах.
Пример первый
Какие есть риски, когда роли на проекте смешиваются – показывает следующий пример. Представим, что штатной IT-команде нужно провести регрессионное тестирование в короткий срок. Для того чтобы успеть выполнить задачу, важно правильно определить объем работы. Сроки реализации могут затянуться, если владелец продукта хочет на всякий случай протестировать все целиком, проджект – фичи вместе с затронутой ими функциональностью, а тимлид – только новые фичи. Если порядок принятия технических решений не определен заранее, то выполнение задачи усложняется, появляются риски, что проект не уложится в сроки или бюджет.
Пример второй
Рассмотрим, как можно разделить обязанности по управлению, на примере отдельно взятого проекта. Так, один из наших заказчиков обратился к нам, чтобы в максимально короткие сроки разработать онлайн-сервис для денежных переводов (MVP). К реализации срочной задачи подключилась команда, в состав которой вошли и аккаунт-менеджер, и проджект-менеджер, и тимлид. Их роли распределились следующим образом:
-
Аккаунт-менеджер погрузился в бизнес-задачи заказчика и помог определить цели проекта и сроки его реализации.
-
Проджект-менеджер вместе с заказчиком составил список наиболее необходимых функций для первой версии IT-продукта и пул приоритетных задач, а также оперативно выстроил процессы на проекте.
-
Тимлид, в свою очередь, предложил оптимальный технический стек, настроил процесс разработки и провел кодревью.
Благодаря слаженной работе команды, мы создали MVP-версию страницы для денежных переводов в указанный срок. В результате сервис работает, а мы продолжаем развивать его и добавлять новые функции.
Выводы
Организация процессов управления разработкой ПО в значительной мере влияет на качество продукта. У каждой компании есть свои методологии, которые помогают выбрать, какие специалисты нужны на конкретном проекте. В статье мы привели примеры того, какие задачи решают аккаунт, проджект-менеджер и тимлид. Кроме того, безусловно, для успешной разработки важна квалификация каждого участника команды.