on scaling teams

42
Как мы организуем работу нескольких команд над одним проектом Alex Chistyakov, CTO @ ClearTech

Upload: alex-chistyakov

Post on 22-Jan-2018

90 views

Category:

Technology


3 download

TRANSCRIPT

Как мы организуем работу нескольких команд над

одним проектом

Alex Chistyakov, CTO @ ClearTech

Угадайте, чем мы занимаемся?

2

Угадайте, чем мы занимаемся?- Разработка

- Управление разработкой

3

3 teams 1 project- Backend разработчики

- Frontend разработчики

- Operations team на стороне заказчика

4

Почему так вышло?- Этой традиции почти 10 лет

5

Почему так вышло?- Этой традиции почти 10 лет

- Кроме идиотских причин и последствий есть и польза

6

Польза- Управлять двумя разработчиками легче, чем пятью

7

Польза- Управлять двумя разработчиками легче, чем пятью

- Ими вообще не надо управлять

8

Польза- Управлять двумя разработчиками легче, чем пятью

- Ими вообще не надо управлять

- Автоматизация интерфейсов между командами

9

Слава роботам!- JIRA (для работы необходим кожаный мешок)

10

Слава роботам!- JIRA (для работы необходим кожаный мешок)

- Gitlab у нас

11

Слава роботам!- JIRA (для работы необходим кожаный мешок)

- Gitlab у нас

- Gitlab у заказчика

12

Слава роботам!- JIRA (для работы необходим кожаный мешок)

- Gitlab у нас

- Gitlab у заказчика

- CI (про это позже, самый клевый робот)

13

Взаимодействие с ops team- Вся инфраструктура - это код

14

Взаимодействие с ops team- Вся инфраструктура - это код

- Если у вас не так же - с вами что-то не так

15

Взаимодействие с ops team- Вся инфраструктура - это код

- Если у вас не так же - с вами что-то не так

- Если у вас не Ansible - с вами тоже что-то не так

16

А поэтому- Весь Jenkins тоже заскриптован

- Его конфигурация описана в репозитории

- Jenkins jobs описаны в репозитории

- Используются pipeline и Jenkinsfiles

17

Слава роботам!- Синхронизация репозиториев у нас и у заказчика - это

Jenkins job

18

Слава роботам!- Синхронизация репозиториев у нас и у заказчика - это

Jenkins job

- У нас были проблемы с синхронизацией стендов из-за

недостаточной автоматизации

19

Убить всех человеков!- Синхронизация двух JIRA - это вдумчивый процесс,

которым постоянно занимается PM

20

Убить всех человеков!- Синхронизация двух JIRA - это вдумчивый процесс,

которым постоянно занимается PM

- У нас не бывает никаких daily standup meetings, раз в

две недели ездим в офис заказчика

21

Убить всех человеков!- Синхронизация двух JIRA - это вдумчивый процесс,

которым постоянно занимается PM

- У нас не бывает никаких daily standup meetings, раз в

две недели ездим в офис заказчика

- Общие созвоны - зло

22

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

23

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

- Декомпозирует задачи и переносит их в нашу JIRA

24

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

- Декомпозирует задачи и переносит их в нашу JIRA

- Раскидывает задачи на команды

25

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

- Декомпозирует задачи и переносит их в нашу JIRA

- Раскидывает задачи на команды

- Формирует задачи в JIRA заказчика для ops team

26

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

- Декомпозирует задачи и переносит их в нашу JIRA

- Раскидывает задачи на команды

- Формирует задачи в JIRA заказчика для ops team

- Все бегают и пишут код

27

Как устроен процесс?- PM читает и понимает текущие версии бизнес-задач

- Декомпозирует задачи и переносит их в нашу JIRA

- Раскидывает задачи на команды

- Формирует задачи в JIRA заказчика для ops team

- Все бегают и пишут код

- Робот собирает билды и ставит версии на стенды

28

В чем наша фишка?- Мы не можем взять людей в штат

29

В чем наша фишка?- Мы не можем взять людей в штат

- Вы не можете взять людей в штат

30

В чем наша фишка?- Мы не можем взять людей в штат

- Вы не можете взять людей в штат

- Мы не берем людей в штат

31

В чем наша фишка?- Мы не можем взять людей в штат

- Вы не можете взять людей в штат

- Мы не берем людей в штат

- Найм только по рекомендации

32

В чем наша фишка?- Мы не можем взять людей в штат

- Вы не можете взять людей в штат

- Мы не берем людей в штат

- Найм только по рекомендации

- Fail fast!

33

Коммуникации- Фронтенд - бэкенд: swagger (слава роботам!)

34

Коммуникации- Фронтенд - бэкенд: swagger (слава роботам!)

- Ops team: репозиторий, skype и очные митинги

35

Коммуникации- Фронтенд - бэкенд: swagger (слава роботам!)

- Ops team: репозиторий, skype и очные митинги

- Все вместе: JIRA, Confluence, чат в skype

36

Ошибки молодости- Технический долг (неизбежность?)

37

Ошибки молодости- Технический долг (неизбежность?)

- Попытки перестановки задач на другого исполнителя

заканчиваются провалом - Брукс был прав во всем!

38

Результаты- 8-10 месячный проект за примерно 5 месяцев

39

Результаты- 8-10 месячный проект за примерно 5 месяцев

- Мы действуем систематически и не успокоимся

никогда

40

Ваши вопросы?

-

-

- [email protected]

- Skype, Telegram:

@demeliorator

- У меня есть канал в

Telegram:

- @lhommequipleure

- http://cleartech.io41

У меня есть ответы!

Спасибо!

42