1 of 132

Секреты внутренних платформ или как начать инженерную трансформацию

Карапет Манасян

PLATEN

manasean

2 of 132

Карапет Манасян

  • Лидер платформы разработки в MOEX Group
  • Ускоряю и трансформирую разработку
  • Автор фреймворка Platen — www.platen.dev
  • Спикер IT-конференций, лектор
  • Создаю внутренние и внешние IT-сообщества
  • Вечный студент: HSE IT, RANEPA IBS MBA

2

platen.dev

3 of 132

3

Почему разработка медленная?

platen.dev

4 of 132

Чем заняты мои разработчики?

4

Почему разработка медленная?

platen.dev

5 of 132

Чем заняты мои разработчики?

5

Почему разработка медленная?

Как спланировать работу инженерных команд?

Почему разработчик не может делать все сам?

platen.dev

6 of 132

Чем заняты мои разработчики?

6

Почему разработка медленная?

Как спланировать работу инженерных команд?

Почему разработчик не может делать все сам?

А что если инфраструктуру превратить в продукт?

Сколько стоит создание платформ?

Какую ценность даст платформа?

platen.dev

7 of 132

Чем заняты мои разработчики?

7

Почему разработка медленная?

Как спланировать работу инженерных команд?

А что если инфраструктуру превратить в продукт?

Сколько стоит создание платформ?

Почему разработчик не может делать все сам?

Как выбрать кайфовые метрики?

Какую ценность даст платформа?

platen.dev

8 of 132

8

Platen — это фреймворк по созданию и развитию платформ, а также трансформации и улучшения текущих инженерных процессов компании.

platen.dev

9 of 132

9

Platen — это фреймворк по созданию и развитию платформ, а также трансформации и улучшения текущих инженерных процессов компании.

4

раздела: введение, артефакты, оценка

и стратегирование, реализация

platen.dev

10 of 132

10

Platen — это фреймворк по созданию и развитию платформ, а также трансформации и улучшения текущих инженерных процессов компании.

4

раздела: введение, артефакты, оценка

и стратегирование, реализация

24

артефакта — это составляющие части модели Platen Strategy Model (PSM)

platen.dev

11 of 132

11

Platen — это фреймворк по созданию и развитию платформ, а также трансформации и улучшения текущих инженерных процессов компании.

4

раздела: введение, артефакты, оценка

и стратегирование, реализация

24

артефакта — это составляющие части модели Platen Strategy Model (PSM)

30

метрик, которые помогут найти проблемы и зоны роста

platen.dev

12 of 132

Термины

12

platen.dev

13 of 132

Термины

13

Потокоцентричная команда – привлекает аудиторию, которая согласится купить предлагаемое решение ее проблемы.

platen.dev

14 of 132

Термины

14

Потокоцентричная команда – привлекает аудиторию, которая согласится купить предлагаемое решение ее проблемы.

Платформенная команда, ориентированная на цели потоков (oriented on flows goals)

Платформенная команда, ориентированная на себя (self-oriented)

platen.dev

15 of 132

Термины

Поток – последовательность шагов от идеи до выхода на рынок и сопровождения клиентов.

15

Потокоцентричная команда – привлекает аудиторию, которая согласится купить предлагаемое решение ее проблемы.

Платформенная команда, ориентированная на цели потоков (oriented on flows goals)

Платформенная команда, ориентированная на себя (self-oriented)

platen.dev

16 of 132

Термины

Поток – последовательность шагов от идеи до выхода на рынок и сопровождения клиентов.

16

Сервис – одна команда предоставляет другой команде конечные услуги (API, портал, библиотека ресурсов и тд.)

Потокоцентричная команда – привлекает аудиторию, которая согласится купить предлагаемое решение ее проблемы.

Платформенная команда, ориентированная на цели потоков (oriented on flows goals)

Платформенная команда, ориентированная на себя (self-oriented)

platen.dev

17 of 132

17

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

platen.dev

18 of 132

18

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

platen.dev

19 of 132

19

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

Команда архитектуры

Команда тестирования

Команда аналитиков

Команда сопровождения (ops)

platen.dev

20 of 132

20

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

Команда архитектуры

Команда тестирования

Команда аналитиков

Команда сопровождения (ops)

Команда

DevOps

platen.dev

21 of 132

21

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

Команда архитектуры

Команда тестирования

Команда аналитиков

Команда сопровождения (ops)

Команда

DevOps

value stream

конвейер производства

platen.dev

22 of 132

22

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

Команда архитектуры

Команда тестирования

Команда аналитиков

Команда сопровождения (ops)

Команда

DevOps

value stream

конвейер производства

platen.dev

23 of 132

23

platen.dev

Потокоцентричные команды

Разработка (dev)

Портфель продуктов в единой линейке

дано

scrum-команды из 7 человек

сильно связанная архитектура

цели

низкий TTM

высокая скорость проверки гипотез

бесшовные релизы

Команда архитектуры

Команда тестирования

Команда аналитиков

Команда сопровождения (ops)

Команда

DevOps

value stream

конвейер производства

проблемы

медленный TTM

инженерный ландшафт как серая зона

platen.dev

24 of 132

24

platen.dev

platen.dev

25 of 132

Еще 2 типа команд в одной компании.

25

platen.dev

platen.dev

26 of 132

Еще 2 типа команд в одной компании.

26

platen.dev

platen.dev

27 of 132

Что имеем?

27

platen.dev

медленный и нестабильный CI/CD

сложный и гетерогенный инженерный ландшафт

у разработки много нецелевых задач

отсутствует формат планирования и оценки инженерных команд

bus factor и блокировки конвейеров

отсутствие ответственности у потокоцентричных команд

platen.dev

28 of 132

Platform engineering

28

Развитие платформ

→процесс

platen.dev

29 of 132

Platform engineering

29

Развитие платформ

→процесс

удобные и простые инструменты

самообслуживание

снижение объема нецелевых задач

качество, надежность и безопасность

platen.dev

30 of 132

Отличия подходов

30

devops engineering

антиклассика

platen.dev

platen.dev

31 of 132

Отличия подходов

31

devops engineering

антиклассика

platen.dev

является частью потока

ci/cd

кубера

инциденты

логирование

инфраструктура

сервера

скрипты

мониторинг

базы

облака

инструменты

доступы

platen.dev

32 of 132

Отличия подходов

32

devops engineering

антиклассика

platen.dev

является частью потока

ci/cd

кубера

инциденты

логирование

инфраструктура

сервера

скрипты

мониторинг

базы

облака

инструменты

доступы

platen.dev

33 of 132

Отличия подходов

33

devops engineering

антиклассика

platen.dev

оказание сервиса

platform engineering

а что если…

платформа как продукт (набор продуктов)

является частью потока

ci/cd

кубера

инциденты

логирование

инфраструктура

сервера

скрипты

мониторинг

базы

облака

инструменты

доступы

platen.dev

34 of 132

Отличия подходов

34

devops engineering

антиклассика

platen.dev

оказание сервиса

platform engineering

а что если…

платформа как продукт (набор продуктов)

является частью потока

ci/cd

кубера

инциденты

логирование

инфраструктура

сервера

скрипты

мониторинг

базы

облака

инструменты

доступы

platen.dev

35 of 132

Отличия подходов

35

devops engineering

антиклассика

platen.dev

platform engineering

а что если…

оказание сервиса

платформа как продукт (набор продуктов)

является частью потока

ci/cd

кубера

инциденты

логирование

инфраструктура

сервера

скрипты

мониторинг

базы

облака

инструменты

доступы

platen.dev

36 of 132

Отличия подходов

devops engineering

антиклассика

platen.dev

“в”

конвейере

Как поддерживать конвейер доставки и инфраструктуру продукта?

platen.dev

37 of 132

Отличия подходов

devops engineering

антиклассика

platen.dev

platform engineering

а что если…

“в”

“под”

конвейере

конвейером

Как создавать удобные сервисы и инструменты для команд и разработчиков?

Как поддерживать конвейер доставки и инфраструктуру продукта?

platen.dev

38 of 132

Отлично, platform engineering – это то, что нам нужно, но…

38

platen.dev

platen.dev

39 of 132

…может, купить платформу?

39

Уникальность требований к платформе

Сложность инженерного ландшафта

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

40 of 132

…может, купить платформу?

40

Уникальность требований к платформе

Сложность инженерного ландшафта

Соответствие требованиям >40-50%*

+

Однородный** ландшафт

=

Cloud / готовые платформы

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

41 of 132

…может, купить платформу?

41

Уникальность требований к платформе

Сложность инженерного ландшафта

Соответствие требованиям >40-50%*

+

Однородный** ландшафт

=

Cloud / готовые платформы

Соответствие требованиям >40-50%*

+

Гетерогенный*** ландшафт

=

Модификация open source

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

42 of 132

…может, купить платформу?

42

Уникальность требований к платформе

Сложность инженерного ландшафта

Соответствие требованиям <40-50%*

+

Однородный** ландшафт

=

Своя платформа с

элементами open source

Соответствие требованиям >40-50%*

+

Однородный** ландшафт

=

Cloud / готовые платформы

Соответствие требованиям >40-50%*

+

Гетерогенный*** ландшафт

=

Модификация open source

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

43 of 132

…может, купить платформу?

43

Уникальность требований к платформе

Сложность инженерного ландшафта

Соответствие требованиям <40-50%*

+

Однородный** ландшафт

=

Своя платформа с

элементами open source

Соответствие требованиям <40-50%*

+

Гетерогенный*** ландшафт

=

Своя платформа

Соответствие требованиям >40-50%*

+

Однородный** ландшафт

=

Cloud / готовые платформы

Соответствие требованиям >40-50%*

+

Гетерогенный*** ландшафт

=

Модификация open source

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

44 of 132

наш вариант!

44

Уникальность требований к платформе

Сложность инженерного ландшафта

Соответствие требованиям <40-50%*

+

Однородный** ландшафт

=

Своя платформа с

элементами open source

Соответствие требованиям <40-50%*

+

Гетерогенный*** ландшафт

=

Своя платформа

Соответствие требованиям >40-50%*

+

Однородный** ландшафт

=

Cloud / готовые платформы

Соответствие требованиям >40-50%*

+

Гетерогенный*** ландшафт

=

Модификация open source

* на базе нашего опыта и исследований

** нативные инструменты и простые процессы

*** много разных инструментов и интеграций

platen.dev

45 of 132

СЕКРЕТ /1

Идею платформизации должны в первую очередь “купить” и поддержать ИТ-лидеры

45

platen.dev

46 of 132

46

platen.dev

Объединить все DevOps-команды!

platen.dev

47 of 132

Объединить все DevOps-команды!

47

platen.dev

Команда инженерной платформы

platen.dev

48 of 132

Объединить все DevOps-команды!

48

platen.dev

Команда инженерной платформы

platen.dev

49 of 132

Почему это плохая идея?

49

вы получите однородную команду

они не договорятся

высок риск потери экспертизы

platen.dev

50 of 132

Формирование платформенной команды

50

1

2

Создать минимально достаточную команду

Найти лидера с продуктовым мышлением, но с хорошими инженерными навыками

3

Собрать экспертов с высоким авторитетом в компании и хорошо понимающих ее бизнес

platen.dev

51 of 132

СЕКРЕТ /2

Развитие платформ (platform engineering) = непрерывная проверка множества гипотез.

51

platen.dev

52 of 132

Миссия платформенной команды

52

  • Предоставление внутренней платформы, состоящей из инструментов и инфраструктуры, позволяющих командам создавать, тестировать, развертывать и развивать свои продукты, соответствуя принципам безопасности, качества, надежности и масштабируемости установленных в компании.
  • Обеспечение автономности команд, где они могут полностью владеть всеми услугами и продуктами без каких-либо дополнительных расходов. Полный переход к модели самообслуживания.

platen.dev

53 of 132

Миссия платформенной команды

53

  • Предоставление внутренней платформы, состоящей из инструментов и инфраструктуры, позволяющих командам создавать, тестировать, развертывать и развивать свои продукты, соответствуя принципам безопасности, качества, надежности и масштабируемости установленных в компании.
  • Обеспечение автономности команд, где они могут полностью владеть всеми услугами и продуктами без каких-либо дополнительных расходов. Полный переход к модели самообслуживания.

централизация

стандартизация

унификация

platen.dev

54 of 132

Роли в платформенной команде

54

platen.dev

55 of 132

Роли в платформенной команде

55

Владелец платформы

  • стратегия развития
  • роадмап
  • развитие команды
  • стримы платформы
  • стратсессии
  • запуск модифицирующих команд

platen.dev

56 of 132

Роли в платформенной команде

56

Владелец платформы

  • стратегия развития
  • роадмап
  • развитие команды
  • стримы платформы
  • стратсессии
  • запуск модифицирующих команд

Архитектор платформы

  • архитектура платформы
  • взаимодействия и интеграции с другими командами

platen.dev

57 of 132

Роли в платформенной команде

57

Платформенный инженер

�инструменты и сервисы для потокоцентричных команд

Владелец платформы

  • стратегия развития
  • роадмап
  • развитие команды
  • стримы платформы
  • стратсессии
  • запуск модифицирующих команд

Архитектор платформы

  • архитектура платформы
  • взаимодействия и интеграции с другими командами

platen.dev

58 of 132

Компетенции инженера

58

Владелец платформы

Архитектор платформы

Платформенный инженер

platen.dev

59 of 132

Компетенции инженера

59

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

platen.dev

60 of 132

Компетенции инженера

60

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

platen.dev

61 of 132

Компетенции инженера

61

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

platen.dev

62 of 132

Компетенции инженера

62

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

Прототипирование

platen.dev

63 of 132

Компетенции инженера

63

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

Прототипирование

Проектирование продуктов

platen.dev

64 of 132

Компетенции инженера

64

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

Прототипирование

Проектирование продуктов

Продажи и маркетинг

platen.dev

65 of 132

Компетенции инженера

65

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

Прототипирование

Проектирование продуктов

Продажи и маркетинг

Обработка обратной связи

platen.dev

66 of 132

Компетенции инженера

66

Владелец платформы

Архитектор платформы

Платформенный инженер

Одержимость клиентами

Проведение аудита

Анализ DevEx

Прототипирование

Проектирование продуктов

Продажи и маркетинг

Обработка обратной связи

Автоматизация

Инфраструктура

Разработка

platen.dev

67 of 132

Модель предоставления платформенных сервисов

67

Ориентация

art21

1

2

Ориентированный на себя

Self-oriented

Ориентированный на цели потоков

Oriented on flows goals

platen.dev

68 of 132

Модель предоставления платформенных сервисов

68

1

2

Ориентированный на себя

Self-oriented

Ориентированный на цели потоков

Oriented on flows goals

Ориентация

Формат оказания сервиса

По запросу

By request

Самообслуживание

Self-service

Полная автоматизация

Full auto

a

b

c

art21

platen.dev

69 of 132

69

Ориентированный на себя

Self-oriented

Ориентированный �на цели потоков

Oriented on flows goals

IV

V

VI

Ориентация

I

II

III

1

2

art21

platen.dev

70 of 132

70

По запросу

By request

Самообслуживание

Self-service

Полная автоматизация

Full auto

IV

V

VI

Формат оказания сервиса

I

II

III

1

2

a

b

c

art21

Ориентированный на себя

Self-oriented

Ориентация

Ориентированный �на цели потоков

Oriented on flows goals

platen.dev

71 of 132

71

IV

V

VI

Формат оказания сервиса

I

II

III

1

2

art21

По запросу

By request

Самообслуживание

Self-service

Полная автоматизация

Full auto

a

b

c

Ориентированный на себя

Self-oriented

Ориентация

Ориентированный �на цели потоков

Oriented on flows goals

platen.dev

72 of 132

72

IV

V

VI

Формат оказания сервиса

I

II

III

1

2

art21

По запросу

By request

Самообслуживание

Self-service

Полная автоматизация

Full auto

a

b

c

Ориентированный на себя

Self-oriented

Ориентация

Ориентированный �на цели потоков

Oriented on flows goals

platen.dev

73 of 132

73

IV

V

VI

Формат оказания сервиса

I

II

III

2

art21

По запросу

By request

Самообслуживание

Self-service

Полная автоматизация

Full auto

a

b

c

Ориентированный на себя

Self-oriented

Ориентация

1

Ориентированный �на цели потоков

Oriented on flows goals

platen.dev

74 of 132

форма сервиса

    • описания, how-to и инструкции в wiki;
    • описание сервиса в виде скриптов, автоматизированных процессов и шаблонов;
    • сервис находится в едином портале самообслуживания, имеет API и/или CLI.

74

art21

platen.dev

75 of 132

форма сервиса

    • описания, how-to и инструкции в wiki;
    • описание сервиса в виде скриптов, автоматизированных процессов и шаблонов;
    • сервис находится в едином портале самообслуживания, имеет API и/или CLI.

75

Сервис в целевом состоянии

Сервис в процессе изменения

Сервис требует изменений

Сервис отсутствует

текущее состояние

art21

platen.dev

76 of 132

форма сервиса

    • описания, how-to и инструкции в wiki;
    • описание сервиса в виде скриптов, автоматизированных процессов и шаблонов;
    • сервис находится в едином портале самообслуживания, имеет API и/или CLI.

76

Сервис в целевом состоянии

Сервис в процессе изменения

Сервис требует изменений

Сервис отсутствует

текущее состояние

art21

platen.dev

77 of 132

    • k8s как сервис
    • db как сервис
    • vm как сервис
    • микросервис по кнопке
    • окружение по кнопке
    • метрики как сервис
    • ci/cd как сервис

77

By request

Self-service

Self-oriented

Oriented on flows goals

Full auto

1

2

6

3

5

7

4

art21

Сервис в целевом состоянии

Сервис в процессе изменения

Сервис требует изменений

Сервис отсутствует

platen.dev

78 of 132

СЕКРЕТ /3

Self-service документация или how-to тоже являются платформой

78

platen.dev

79 of 132

Форматы работы платформы

79

Change

Run

Scrum-команда

Спринт: 2 недели

Ревью к концу спринта

Оценка в SP

Запас на сопровождение

platen.dev

80 of 132

Кто ставит задачи и как?

80

задача владельца – контроль за исполнением миссии и целей

потокоцентричные команды, как клиенты платформы

Начало спринта платформы

в

  • встречи с командами, синхронизация
  • внутренняя оценка (PBR)
  • обратная связь командам

Конец спринта платформы

  • ревью спринта с командами
  • ретроспектива

Pre-demo, мини-синк

  • демо прототипов

platen.dev

81 of 132

Формируется минимальная инженерная команда!

81

platen.dev

Команда инженерной платформы

platen.dev

82 of 132

Формируется минимальная инженерная команда!

82

platen.dev

Команда инженерной платформы

platen.dev

83 of 132

СЕКРЕТ /4

Нужно объединять команды вокруг идеи слияния и гармонизации инженерного ландшафта, а не лозунга “мы выкинем все и построим прекрасный мир”.

83

platen.dev

84 of 132

84

platen.dev

С кого начать?

platen.dev

85 of 132

85

platen.dev

С кого начать?

есть проактивные ребята

готовы к изменениям и хотят трансформировать процессы

platen.dev

86 of 132

86

platen.dev

С кого начать?

есть проактивные ребята

готовы к изменениям и хотят трансформировать процессы

начнем именно с них

platen.dev

87 of 132

СЕКРЕТ /5

Начните не со всех сразу, а с самых лояльных и проактивных, готовых к изменениям. На них легче показать success story и завоевать доверие у других команд.

87

platen.dev

88 of 132

Формируем модифицирующую команду

Эта команда помогает потокоцентричным командам в трансформирации своих процессов и подходов. Ориентирована на преодоление барьеров в потоке, связанных со скоростью, качеством, безопасностью, доступностью и/или удобством для пользователей.

88

поток

платформенная команда

platen.dev

89 of 132

Формируем модифицирующую команду

Эта команда помогает потокоцентричным командам в трансформирации своих процессов и подходов. Ориентирована на преодоление барьеров в потоке, связанных со скоростью, качеством, безопасностью, доступностью и/или удобством для пользователей.

89

поток

частичное

слияние

платформенная команда

platen.dev

90 of 132

СЕКРЕТ /6

Частичное слияние платформенных и модифицирующих команд дает максимальный эффект при трансформациях

90

platen.dev

91 of 132

Формат работы МК

91

Change

Run

Scrum-команда

Спринт: 2 недели

Ревью к концу спринта

Запас на сопровождение

близка по модели к платформе

временная

состоит из самых активных и заинтересованных

имеет миссию и цели (на базе миссии платформенной команды)

platen.dev

92 of 132

СЕКРЕТ /7

Решайте конкретные “боли” команд, а не внедряйте какую-то практику, потому что это “стильно, модно, молодёжно”.

92

platen.dev

93 of 132

Что болит? = предпосылки

93

медленный TTM

инженерный ландшафт как серая зона

высока связанность продуктов

у команд нет ответственности за конечный продукт

страдает качество поставок и релизов

ci/cd = blackbox

platen.dev

94 of 132

Первый спринт МК

94

1. Провести аудит процессов производства и инженерной культуры

2. Начать решать боли команд

platen.dev

95 of 132

СЕКРЕТ /8

Не начинайте инженерную трансформация без определения метрик.

95

platen.dev

96 of 132

Радар метрик в Platen

96

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

art17

platen.dev

97 of 132

Радар метрик в Platen

97

Бизнес-квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

art17

platen.dev

98 of 132

Радар метрик в Platen

98

Бизнес-квадрант

Клиентский

квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

art17

platen.dev

99 of 132

Радар метрик в Platen

99

Бизнес-квадрант

Клиентский

квадрант

Организационно-культурный

квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

art17

platen.dev

100 of 132

Радар метрик в Platen

100

Бизнес-квадрант

Технологический квадрант

Клиентский

квадрант

Организационно-культурный

квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

art17

platen.dev

101 of 132

Радар метрик в Platen

101

Бизнес-квадрант

Технологический квадрант

Клиентский

квадрант

Организационно-культурный

квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

детализация

метрики

art17

platen.dev

102 of 132

Радар метрик в Platen

102

Бизнес-квадрант

Технологический квадрант

Клиентский

квадрант

Организационно-культурный

квадрант

Цели потока

Д1

М1

Д2

М6

Д12

Д13

М2

М3

Д3

Д4

Д5

Д6

Д7

М4

М5

Д8

Д9

Д10

Д11

детализация

метрики

art17

кейсы на www.platen.dev

platen.dev

103 of 132

СЕКРЕТ /9

Метрики должны быть выбраны исходя из целей бизнеса, а не “стандартов индустрии”.

103

platen.dev

104 of 132

Нужно создать такой конвейер, в котором не только каждый продукт доставляется независимо, но и каждый микросервис тоже

104

platen.dev

platen.dev

105 of 132

Архитектура конвейера

105

art14

platen.dev

106 of 132

Архитектура конвейера

106

Поток создания ценности (VSM)

art14

platen.dev

107 of 132

Архитектура конвейера

107

Поток создания ценности (VSM)

Конвейер производства (CI/CD)

art14

platen.dev

108 of 132

Архитектура конвейера

108

Поток создания ценности (VSM)

Окружения (Envs)

Конвейер производства (CI/CD)

art14

platen.dev

109 of 132

Архитектура конвейера

109

Поток создания ценности (VSM)

Окружения (Envs)

Конвейер производства (CI/CD)

Quality Gates (QGs)

Security Gates (SGs)

art14

platen.dev

110 of 132

Архитектура конвейера

110

Поток создания ценности (VSM)

Окружения (Envs)

Конвейер производства (CI/CD)

Quality Gates (QGs)

Security Gates (SGs)

Радар распределения метрик (PMR)

art14

platen.dev

111 of 132

111

platen.dev

112 of 132

112

platen.dev

113 of 132

нужно менять архитектуру так, чтобы продукты были независимыми

113

platen.dev

114 of 132

нужно менять архитектуру так, чтобы продукты были независимыми

114

platen.dev

115 of 132

Решение: создать стандарт ”идеального микросервиса”

115

Почитай историю инженерной трансформации на t.me/platendev/84

platen.dev

116 of 132

Решение: создать стандарт ”идеального микросервиса”

116

Почитай историю инженерной трансформации на t.me/platendev/84

Обкатываем независимую доставку на 1 микросервисе, и далее масштабируем.

platen.dev

117 of 132

От распределенного к независимым конвейерам

117

platen.dev

118 of 132

От распределенного к независимым конвейерам

118

Важно: нужно учесть, что в моменте необходимо поддерживать 2 конвейера: старый и новый.

platen.dev

119 of 132

От распределенного к независимым конвейерам

119

platen.dev

120 of 132

Этапы перехода на независимые поставки

120

1

2

Каждый продукт доставляется независимо

Каждый микросервис доставляется независмо

platen.dev

121 of 132

ПОТОКОЦЕНТРИЧНАЯ КОМАНДА ДОЛЖНА САМА ДОСТАВЛЯТЬ ОБНОВЛЕНИЯ В ПРОД

или разработчик сам деплоит в прод...

121

platen.dev

122 of 132

Идем дальше

122

Повторяем успешный успех :)

  • Решаем стоящие перед командами проблемы и оказываем централизованный платформенный сервис
  • Готовим почву для улучшений и модификаций

platen.dev

123 of 132

Идеальная топология!

123

platen.dev

Команда инженерной платформы

platen.dev

124 of 132

В результате

124

1

2

Деплой каждый день и по запросу

Оптимизация ресурсов devops в >3 раза

3

Разработчик занимается целевыми задачами

4

За конвейер доставки отвечает потокоцентричная команда

5

Исключение bus factor за счет унификации и стандартов

platen.dev

125 of 132

Платформа создает инструменты повышающие видимость окружений продукта

125

platen.dev

126 of 132

СЕКРЕТ /10

Развитие платформенной модели требует инвестиций, а положительный эффект будет не сразу.

126

platen.dev

127 of 132

Todo list /1

127

To do

In progress

Done

3. Определить предпосылки для изменений

6. Выбрать миссию и стримы развития инженерного ландшафта

8. Создать стратегию инженерной трансформации на базе Platen и презентовать командам

9. Защитить стратегию перед лидерами компании

2. Послушать доклад Манасяна

1. Поехать на AgileDays23

4. Создать минимальную платформенную команду

5. Оценить текущее состояние команд

7. Составить модель предоставления платформенных

сервисов и создать стандарты

platen.dev

128 of 132

Todo list /2

128

To do

In progress

Done

2. Послушать доклад Манасяна

1. Поехать на AgileDays23

10. Выбрать самую лояльную команду для трансформации

13. Создать стандарт идеального сервиса/микросервиса

15. Получить success story и показывать остальным командам ☺

16. Масштабировать практики

11. Запустить модифицирующую команду

12. Адаптировать архитектуру конвейера

14. Изменить процессы развертывания и доставки на базе архитектуры конвейера

platen.dev

129 of 132

Дорожная карта Platen для платформизации любой сложности

129

скачать фреймворк на www.platen.dev

platen.dev

130 of 132

130

devops

platform engineering

!=

platform engineering

=

product engineering

+

”devops engineering”

platen.dev

131 of 132

131

Мой доклад поможет работать в кайф, потому что инженерные процессы станут в разы быстрее, качественнее и прозрачнее.

platen.dev

132 of 132

132

Карапет Манасян

tg: manassian manassiandev@gmail.com

подпишитесь на первое �русскоязычное сообщество про �platform engineering �� t.me/platendev

полная версия презентации появится на канале через 30 минут

platen.dev