Как мы команду делили
Наверняка вы слышали про предельный размер команды: 2-pizza team, 7±2, 6±3 и экспоненциально растущее количество связей между людьми при росте команды.
Последние 5 лет я работал в предельно больших командах и мне очень хотелось разделиться. В Авито мне повезло получить этот опыт, при чем дважды. Прошлым летом я делил команду сам, а этим летом помогал избежать моих ошибок тимлиду одной из команд.
Предыстория такая:
В марте 2022 я пришел тимлидить команду из 5 инженеров и у нас был активный найм и рост. К июню нас стало 10 и на подходе были еще +2. Стало очевидно сложно работать в рамках одной команды. Слишком много встреч, слишком много направлений работы, которые не может вместить в себя каждый участник команды.
А впереди еще был найм 6 инженеров. Очевидно, пришло время делиться.
В следующих постах я расскажу о том, как делил команду впервые в жизни. И на какие грабли наступил тоже обязательно расскажу 🙂
Посты разделил по этапам:
1️⃣ Подготовка. Принцип разделения и выбор состава команд
На самом деле на этом этапе происходит 80% работы.
О чем стоит позаботиться заранее:
— Проработать потребность и принцип разделения
— Подготовить разработчиков к будущему разделению
— Определить предварительные составы команд
— Позаботиться о процессах в будущих командах
2️⃣ Kick-off — «оставшиеся» 20% работы.
Это встреча — отсечка запуска новых команд. Здесь каждый участник соглашается с составом команд и процессами. Здесь ребята вырабатывают первые командные договоренности. На картинке — один фрейм с доски этой встречи, где есть последний шанс поменять состав.
Мы делились целый день, и это было выматывающе. За то сразу договорись о процессах, DoD и DoR. В следующий раз kick-off разбили на несколько этапов по 1,5 часа. Было сильно легче.
3️⃣ Первые спринты после запуска.
А вот тут кроются еще 80% работы 🤪
Она заключается в помощи командам и работе над ошибками. Здесь вылезет всё, о чем не подумали на этапе 1.
Например, банальное — На планировании надо куда-то накидывать задачи и стартовать спринт, но нет отдельных досок в джире, только общая, доставшаяся «в наследство». Но это мелочь, джира позволяет вести несколько параллельных спринтов на одной доске и не видеть задачи друг друга. Хуже было то, что мы не сразу завели отдельные чаты по командам, и писали о задачах вперемешку в общий чат. Из-за этого первое время ребятам было сложно «отпустить» задачи другой команды.
Если вы уже проходили этот путь — поделитесь в комментах своим опытом. Интересен будет как взгляд изнутри, со стороны разработчика, так и со стороны тимлида / скрам-мастера. На что стоит обратить внимание? Какие ошибки совершили, как их можно было бы избежать?
Наверняка вы слышали про предельный размер команды: 2-pizza team, 7±2, 6±3 и экспоненциально растущее количество связей между людьми при росте команды.
Последние 5 лет я работал в предельно больших командах и мне очень хотелось разделиться. В Авито мне повезло получить этот опыт, при чем дважды. Прошлым летом я делил команду сам, а этим летом помогал избежать моих ошибок тимлиду одной из команд.
Предыстория такая:
В марте 2022 я пришел тимлидить команду из 5 инженеров и у нас был активный найм и рост. К июню нас стало 10 и на подходе были еще +2. Стало очевидно сложно работать в рамках одной команды. Слишком много встреч, слишком много направлений работы, которые не может вместить в себя каждый участник команды.
А впереди еще был найм 6 инженеров. Очевидно, пришло время делиться.
В следующих постах я расскажу о том, как делил команду впервые в жизни. И на какие грабли наступил тоже обязательно расскажу 🙂
Посты разделил по этапам:
1️⃣ Подготовка. Принцип разделения и выбор состава команд
На самом деле на этом этапе происходит 80% работы.
О чем стоит позаботиться заранее:
— Проработать потребность и принцип разделения
— Подготовить разработчиков к будущему разделению
— Определить предварительные составы команд
— Позаботиться о процессах в будущих командах
2️⃣ Kick-off — «оставшиеся» 20% работы.
Это встреча — отсечка запуска новых команд. Здесь каждый участник соглашается с составом команд и процессами. Здесь ребята вырабатывают первые командные договоренности. На картинке — один фрейм с доски этой встречи, где есть последний шанс поменять состав.
Мы делились целый день, и это было выматывающе. За то сразу договорись о процессах, DoD и DoR. В следующий раз kick-off разбили на несколько этапов по 1,5 часа. Было сильно легче.
3️⃣ Первые спринты после запуска.
А вот тут кроются еще 80% работы 🤪
Она заключается в помощи командам и работе над ошибками. Здесь вылезет всё, о чем не подумали на этапе 1.
Например, банальное — На планировании надо куда-то накидывать задачи и стартовать спринт, но нет отдельных досок в джире, только общая, доставшаяся «в наследство». Но это мелочь, джира позволяет вести несколько параллельных спринтов на одной доске и не видеть задачи друг друга. Хуже было то, что мы не сразу завели отдельные чаты по командам, и писали о задачах вперемешку в общий чат. Из-за этого первое время ребятам было сложно «отпустить» задачи другой команды.
Если вы уже проходили этот путь — поделитесь в комментах своим опытом. Интересен будет как взгляд изнутри, со стороны разработчика, так и со стороны тимлида / скрам-мастера. На что стоит обратить внимание? Какие ошибки совершили, как их можно было бы избежать?