К основному содержимому
#Management

Как формировать структуру команд под запросы бизнеса - часть 1

#Management #Leadership #Processes #ProjectManagement #Project #Software #SoftwareDevelopment

Последние 7 лет я работаю в Тинькофф и за это время видел и отвечал за большое количество изменений: организационных, продуктовых и инженерных. Про многие из них я уже рассказывал в выступлениях и статьях, но там был обычно фокус на конкретном изменении. А в этом посте я бы хотел поговорить про принципы дизайна команд и управленческой структуры, без которых мне было бы гораздо сложнее понимать а что надо менять и почему именно так. Для этого надо вспомнить про несколько базовых вещей

  • Подход working backwards или backcasting - о том, что начинать лучше с конца, представляя цель изменений и финальный результат.
  • Закон Конвея - утверждение Мелвина Конвея про то, что организации проектируют системы, которые копируют структуру коммуникаций в этой организации
  • Обратный маневр Конвея - подход, который рекомендует эволюционировать структуру команд и организационную структуру так, чтобы продвигать желаемую архитектуру в организации.
  • Топология команд (Team topology)- плодотворный подход с набором паттернов для структурирования типов команд и их взаимодействий, который вводит 4 вида команд: stream-aligned, platform, enabling, complicated subsystem и три вида взаимодействий: collaboration, facilitating, x-as-a-service.
  • Управление измнениями (Change management) - набор подходов для того, чтобы осуществлять изменения на всех уровнях: индивидуальном, командном и организационном. Теперь, когда я упомянул про сами концепции, то можно описать мой подход к формированию структуры управления.

Алгоритм приблизительно такой

  1. Определить какая сейчас долговременная цель у той части компании, за которую вы отвечаете
  2. Оценить какая архитектура систем подходит наилучшим образом под эту цель
  3. Применить обратный маневр Конвея, чтобы понять какая структура команд будет поддерживать желаемую архитектуру
  4. Использовать паттерны из team topologies, чтобы спроектировать структуру команд и виды их взаимодействия
  5. Использовать менеджмент изменений, чтобы все спланировать и осуществить (про организационный и командный уровень мы поговорили выше, а индивидуальный здесь обсуждать не будем)

В следующей части я расскажу про применение этого алгоритма в 4 сценариях: **- Проект (запуск новой инициативы)

  • Развитие продукта (просто продуктовая разработка)
  • Масштабирование разработки вверх (scaling up)
  • Масштабирование разработки вниз (scaling down)** Все этапы я в свое время проходил на практике и про многие даже рассказывал:)

P.S. Накидаю источников для изучения

  • Про backcasting мы обсуждали в серии Code of Architecture про Technology Strategy Patterns
  • Про working backwards написана целая книга
  • Про закон Конвея можно почитать в wikipedia
  • Обратный маневр Конвея в 2014 году попал в техрадар от ThoughtWorks
  • Про team topologies можно почитать мои краткие саммари: Teams as means of Delivery, Team Topologies that work for flow, Evolving team interactions for innovation and rapid delivery
  • Про управление изменениями классно написано в книге "Наш айсберг тает", про которую я уже писал

#Management #Leadership #Processes #ProjectManagement #Project #Software #SoftwareDevelopment