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

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

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

Процесс

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

Список ролей в компании

Красными кружочками обозначены роли, не относящиеся к текущим сотрудникам

красными кружочками обозначены роли, не относящиеся к текущим сотрудникам

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

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

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

Мы все вместе выписывали пункты из списков ребят на доску, группируя в два новых: менеджер проектов и программист. Почему так? Потому что по факту именно такие две гипер-роли присутствуют у нас сейчас в компании помимо управляющего.

Задачи менеджеров и разработчиков

Слева – задачи менеджеров, справа – разработчиков, зеленым – дополнение второй команды к списку первой

Мои же ожидания изначально были подготовлены как два списка. Они и легли в основу итогового результата. Как раз в этот период мне попалась на глаза статья Role Expectations Cheat Sheet, описывающая ожидания от программистов в компании King. Мне понравилась структура, а подход согласуется с моим видением вопроса.

Результат

В результате в нашей The Book of Knowledge появился новый раздел Ожидания от сотрудников (Role expectations), в котором на данный момент есть две статьи: для программистов и для менеджеров.

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

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

Ниже приведены оба списка.

Ожидания от программистов

Основное

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

Работа в команде

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

Работа в компании

  • Без труда взаимодействует с командами других проектов и/или другими сотрудниками в целом
  • Способствует обмену знаний между коллегами особенно, работающими на разных проектах
  • Участвует в формировании процессов работы компании
  • Участвует в процессе поиска новых сотрудников

Личное развитие

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

Инновации

  • Анализирует и предлагает способы улучшить текущие процессы в работе компании/команды
  • Изучает новые инструменты/практики/технологии и экспериментирует с их использованием в рамках работы компании

Ожидания от менеджеров проектов

Основное

  • Стыкует ожидания клиентов с результатами работы команды
  • Прорабатывает с заказчиком нюансы проекта
  • Помогает заказчику найти решение для его бизнес-задачи
  • Планирует работу по проекту и распределяет нагрузку на команду/компанию
  • Умеет формулировать задачи программистам по SMART
  • Совместно с командой приоритезирует задачи в соответствии с бизнес-потребностями заказчика
  • Контролирует выполнение работ по проектам в срок и с надлежащим качеством
  • Контролирует рентабельность проектов для компании и принимает меры в случае проблем с ней
  • Помогает разработчикам с пониманием бизнес-требований
  • Имеет уверенное представление о технологиях, используемых командой
  • Ориентируется в сложности реализации функционала проектов
  • Организует работу команды в соответствии с выбранной методологией
  • Планирует и структурирует встречи, показы, созвоны, демонстрации
  • Отвечает за организацию сдачи-приёмки работ заказчику
  • Самостоятельно и оперативно принимает решения относительно хода проекта и взаимодействия команды и заказчика

Работа в команде

  • Выстраивает взаимодействие команды проекта с заказчиком
  • Заботится об эффективной и комфортной работе команды/компании
  • Заботится о качестве коммуникации в команде
  • Умеет давать качественную обратную связь и адекватно воспринимать её от других
  • Помогает поддерживать выполнение договорённостей внутри компании и команды относительно процессов
  • Проактивно участвует в командных обсуждениях (например, проектов или процессов), а также во встречах с клиентами
  • Умеет высказать и обосновать свою точку зрения
  • Умеет правильно писать и придерживается договоренностей команды, относительно письменных коммуникаций

Работа в компании

  • Без труда взаимодействует с командами других проектов и/или другими сотрудниками в целом
  • Способствует обмену знаний между коллегами особенно, работающими на разных проектах
  • Участвует в формировании процессов работы компании
  • Участвует в процессе поиска новых сотрудников

Личное развитие

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

Инновации

  • Анализирует и предлагает способы улучшить текущие процессы в работе компании/команды
  • Изучает новые инструменты/практики/технологии и экспериментирует с их использованием в рамках работы компании