Распределение задач в команде
↑ 9.1 Team Lead и soft skills · ← Предыдущая · → Следующая
Зачем это на собесе
Показывает умение балансировать эффективность, рост людей и риски.
Критерии распределения
| Фактор | Вопрос |
|---|---|
| Компетенции | у кого лучше получится быстро |
| Рост | кому задача даст полезный вызов |
| Риск | что если человек уйдёт (bus factor) |
| Нагрузка | не перегружены ли |
| Контекст | кто знает модуль |
| Интерес | чем человек хочет заниматься |
Подходы
- баланс «быстро и надёжно» (эксперт) и «развитие» (растущие): каждому спринту 1–2 задачи «на вырост» с поддержкой;
- парное программирование и ревью для передачи знаний;
- ротация по модулям, чтобы не было незаменимых;
- владельцы областей (code owners) + резервный владелец;
- WIP-лимиты: не начинать всё сразу, заканчивать начатое;
- распределение по срезам фичи, а не по слоям (несколько людей не блокируют друг друга).
Формулировка задачи
Контекст (зачем), критерии готовности, ограничения, ссылки на дизайн и API, кто консультирует, срок и приоритет. Хорошая задача понятна без устных пояснений.
Уровни делегирования
- Сделай так, как я скажу.
- Исследуй и предложи, решу я.
- Реши и сообщи мне.
- Реши сам, информировать необязательно.
Уровень зависит от опыта человека и цены ошибки.
Признаки проблем
- один человек на всех критических задачах;
- задачи «ждут» конкретного человека;
- часть команды без сложных задач и без роста;
- переработки у одних при простое других.
Вопросы с ответами
Как распределить критическую задачу между сильным и слабым разработчиком?
Поручить ведущему и подключить менее опытного к частям с поддержкой (пара), чтобы разделить риск и передать знания.
Что такое bus factor и как его повышать?
Число людей, потеря которых остановит проект. Повышают ревью, парная работа, документация, ротация модулей.