# Дизайн команды
# Описание
Эта область ответственности актуальна в разных случаях – и для единой команды, работающей над одним бэклогом, и для команд, в которых разработчики участвуют одновременно в нескольких проектах. Задачей тимлида является учесть все ограничения и сформировать одну или несколько команд таким образом, чтобы работа шла без каких-либо проблем. Что нужно учесть:
- Требования проектов – количество людей, их уровень, навыки.
- Совместимость людей – насколько конкретные сотрудники могут ужиться друг с другом и продуктивно работать.
- Желания людей – над каким проектом кому интересно работать, задачи какого рода вдохновляют.
- Планы роста людей – работа над какими задачами поможет развитию требуемых навыков.
В случае работы над несколькими проектами у тимлида зачастую есть возможность на своё усмотрение перебрасывать людей. В случае единой команды такой переход обычно значит и перевод к другому руководителю.
# Почему ветка важна?
Для менеджера:
- Замена людей – быстрый способ решения любых проблем с результатами, перфомансом или навыками команды. Но это не даётся бесплатно – любая перемена состава может сильно повлиять на состояние команды, поэтому любые изменения важно тщательно продумывать.
- Перекидывание людей между проектами и задачами позволяет точечно прокачивать требуемые компетенции и влиять на мотивацию.
Для сотрудника:
- Разнообразие рабочих задач и проектов – это отличный способ попробовать что-то новое и вырасти как профессионал.
Для компании:
- Переход в другую команду может быть альтернативой увольнению для сотрудника. Даже если одна команда потеряет ценного специалиста, в масштабах компании эта потеря будет не так значима.
# Что будет, если её не делать?
- Слишком частые и бессистемные перестановки не позволят команде глубоко узнать продукт и сработаться – уровень производительности будет стабильно низким.
- Если не держать под контролем требования по людям разных проектов, то где-то ресурсов будет не хватать, а где-то их будет избыток. В обоих случаях страдает и бизнес, и сотрудники.
# На кого может быть делегирована?
Обычно не делегируется.
# Примеры хорошего поведения
- Провести дизайн команды, опираясь на бэклог, над которым команда будет работать
- Учесть динамику личных отношений внутри коллектива
- Учесть личные интересы и планы развития потенциальных членов команды
# Примеры плохого поведения
- Нанять "среднюю по рынку" команду: аналитик, дизайнер, разработчик, тестер
- Использовать такие правила, как "1 разработчик - 2 тестера"
# Способы прокачки
# Практика
# Подход к дизайну команд, который используется в Large Scale Scrum (LeSS)
Ниже описанный подход призван лишь показать, как "качественно" оценить состав команды. Полученные данные нужно правильно интерпретировать.
# 1. Составление одного бэклога для проекта(ов)/продукта(ов), для которого необходима команда
В данном контексте бэклог - это список всей известной работы на текущий момент в рамках заданного направления
Пример развития онлайн-магазина:
№ | Элемент бэклога |
---|---|
1 | Лендинг-страница |
2 | Вывод в топ поисковиков |
3 | Форма обратной связи |
4 | Интеграция с ПО управления складом |
5 | Форма онлайн-оплаты |
Размер элементов и их порядок не имеют принципиального значения.
# 2. Составление HitMap (матрица компетенций и элементов бэклога)
Дополните бэклог вторым измерением в виде компетенций, которые необходимы для выполнения данных элементов. На пересечении элементов и компетенций поставьте
- "0" - для реализации данного элемента данная компетенция не нужна
- "1" - для реализации данного элемента данная компетенция требуется
№ | Элемент бэклога/Компетенции | PHP | JS | SEO | Маркетинг | Бух. учёт | Админ. Linux |
---|---|---|---|---|---|---|---|
1 | Лендинг-страница | 1 | 1 | 0 | 0 | 0 | 1 |
2 | Вывод в топ поисковиков | 0 | 1 | 1 | 1 | 0 | 0 |
3 | Форма обратной связи | 1 | 1 | 0 | 0 | 0 | 0 |
4 | Интеграция с ПО управления складом | 1 | 0 | 0 | 1 | 1 | 1 |
5 | Форма онлайн-оплаты | 1 | 1 | 1 | 1 | 1 | 1 |
Можно не ограничиваться бинарной оценкой, экспериментировать с весами и коэффициентами. Если посчитать сумму по столбцам и нормировать их по общей сумме, то получим %-распределение компетенций, которыми должна обладать новая команда.
№ | Элемент бэклога/Компетенции | PHP | JS | SEO | Маркетинг | Бух. учёт | Админ. Linux |
---|---|---|---|---|---|---|---|
1 | Лендинг-страница | 1 | 1 | 0 | 0 | 0 | 1 |
2 | Вывод в топ поисковиков | 0 | 1 | 1 | 1 | 0 | 0 |
3 | Форма обратной связи | 1 | 1 | 0 | 0 | 0 | 0 |
4 | Интеграция с ПО управления складом | 1 | 0 | 0 | 1 | 1 | 1 |
5 | Форма онлайн-оплаты | 1 | 1 | 1 | 1 | 1 | 1 |
Сумма | 4 | 4 | 2 | 3 | 2 | 3 | |
% распределения | 22% | 22% | 11% | 17% | 11% | 17% |
Т.е в нашем примере если мы бы хотели набрать команду из 10 человек, то состав примерно был бы следующим:
- 2 x PHP-разработчика
- 2 x JS-разработчика
- 1 x SEO-специалист
- 2 x eMarketing-специалист
- 1 x Специалист по бух.учёту
- 2 x Администратора Linux
Если учесть, что реальные люди владеют несколькими компетенциями, общая численность команды может быть снижена за счёт совместного перекрытия навыков.
# 3. Составление "Звёздной карты"
Если мы формируем команду в т.ч. из сотрудников компании, а не полностью набираем с рынка, то можем оценить, как они смогут потенциально перекрыть необходимые компетенции. Для этого возьмём список компетенций из п.2, но элементы бэклога заменим нашими сотрудниками. На пересечении в такой матрице нужно отметить уровень знаний сотрудника в данном направлении:
- "⭐" - хорошо знаю, могу подсказать
- "👓" - хочу изучить
- " " - не интересно
№ | Сотрудник/Компетенции | PHP | JS | SEO | Маркетинг | Бух. учёт | Админ. Linux |
---|---|---|---|---|---|---|---|
1 | Петя | ⭐ | ⭐ | 👓 | 👓 | ||
2 | Вася | 👓 | ⭐ | ⭐ | |||
3 | Коля | 👓 | ⭐ | ⭐ | |||
4 | Маша | ⭐ | 👓 | 👓 |
Как и с прошлым упражнением, можно придумать любую градацию кроме предложенной. Сотрудникам она поможет найти экспертов в необходимой области, а тимлид "оцифрует её", чтобы провести анализ. Это можно сделать поменяв пиктограммы на числа и сразу применив нормирование как в п.2:
- "⭐" - 2
- "👓" - 1
- " " - 0
№ | Сотрудник/Компетенции | PHP | JS | SEO | Маркетинг | Бух. учёт | Админ. Linux |
---|---|---|---|---|---|---|---|
1 | Петя | 2 | 0 | 2 | 0 | 1 | 1 |
2 | Вася | 1 | 0 | 2 | 0 | 0 | 2 |
3 | Коля | 1 | 0 | 2 | 2 | 0 | 0 |
4 | Маша | 0 | 2 | 0 | 0 | 1 | 1 |
Сумма | 4 | 2 | 6 | 2 | 2 | 4 | |
% распределения | 20% | 10% | 30% | 10% | 10% | 20% |
# 4. Анализ распределений
Если наложить распределения из п.2 и п.3
Сотрудник/Компетенции | PHP | JS | SEO | Маркетинг | Бух. учёт | Админ. Linux |
---|---|---|---|---|---|---|
Бэклог требует из п.2 | 22% | 22% | 11% | 17% | 11% | 17% |
Люди умеют из п.3 | 20% | 10% | 30% | 10% | 10% | 20% |
Как видно из сравнения в примере, что компетенции "Маркетинг" и "Бух. учёт" не могут быть закрыты полностью текущей командой, т.е. это возможные направления в усилении команды за счёт найма или обучения.
# 5. Воркшоп по объединению в команду
Как только вся потенциальная команда собрана, можно дать людям рассказать о себе, просто пообщаться или совместно выполнить какое-либо задание. Далее путём закрытого голосования определить готовность всех участников стартовать в таком составе.