Все кейсы
Профессиональный кейсЗавершено

ДИТ Москвы

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

За 6+ лет: от создания внутренней функции качества для mos.ru с нуля до технического управления портфелем городских цифровых продуктов.

Карьерная траектория

Рост зоны ответственности

  1. Создание функции качества

    Внутреннее тестирование mos.ru формируется практически с нуля, до этого экспертиза в основном находилась у подрядчика.

  2. Масштабирование команд, автоматизации и поставки

    Несколько команд, 100+ специалистов в функциональном контуре, автоматизация, нагрузка и промышленная поставка.

  3. Руководитель технических проектов

    Ответственность расширяется на разработку, подрядчиков, поставку, документацию и приёмку цифровых продуктов.

Эта схема объясняет весь кейс за несколько секунд: от создания функции качества до технического управления портфелем городских продуктов.

Масштаб

Масштаб ответственности

  • 6+ лет

    в ДИТ Москвы

    Сентябрь 2016 — январь 2023.

  • 100+

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

    Нагрузочное тестирование работает как отдельный сервис и в эти 100+ не входит.

  • 12

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

    Команды тестирования, автоматизации и релиз-инженеры.

  • 100+

    городских веб-проектов и спецпроектов

    Прошли через контур качества и промышленного запуска за 4+ года.

  • 50+

    специалистов прошли интервью и отбор с моим участием

    Найм и отбор за время работы функции.

  • 8

    сотрудников выросли до руководящих ролей

    Люди, которые внутри функции доросли до управленческих позиций.

Этап 1

Создание инженерной функции качества для mos.ru

В 2016 году основная экспертиза тестирования mos.ru находилась на стороне подрядчика. Внутри ДИТ мы начали формировать собственную функцию качества практически с нуля: команды, процессы, автоматизацию, управление релизами и инженерные практики промышленного запуска.

Контекст

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

Управленческая задача

На первом этапе требовалось построить функцию качества, способную выдерживать промышленную поставку mos.ru. На втором связать развитие портфеля продуктов, подрядчиков, поставку, документацию и приёмку в одном управленческом цикле.

  1. Команды

    • до 5 команд тестирования, автоматизации и релиз-инженеров
    • 12 сотрудников во внутренней команде в прямом подчинении
    • 100+ специалистов ручного и автоматизированного тестирования в функциональном контуре
    • 7 лидов ручного тестирования и 2 лида автоматизации
  2. Люди и развитие

    • Индивидуальные планы развития и регулярные one-to-one
    • Матрица компетенций и обучение
    • 50+ специалистов прошли интервью и отбор
    • 8 сотрудников выросли до руководящих ролей
  3. Инженерная база

    • Ручное тестирование и автоматизация
    • Нагрузочное тестирование как отдельный сервис
    • Mobile и API
    • Контроль готовности релиза
  4. Поставка

    • Релиз-инженеры в прямом подчинении
    • Выкладка и production-проверки
    • Релизная документация
    • Контроль готовности перед промышленным запуском

Контроль готовности

Контроль готовности к промышленному запуску

Релиз не получал готовность к промышленному запуску, пока оставались критичные или серьёзные дефекты, влияющие на работоспособность продукта.

Поставка mos.ru

Частота поставки mos.ru

1 релиз в неделюв среднем около 2 релизов в день

Перестройка release flow, автоматизации и развитие внутренней экспертизы поставки позволили команде поддерживать частые промышленные выпуски при управляемом качестве.

  • Государственные сервисы mos.ru
  • «Вывоз ненужных вещей»
  • Реновация
  • «Мой район»
  • День города
  • Ярмарки
  • Мосбилет

Качество, автоматизация и мониторинг

Инженерная автоматизация качества

  1. 01

    PROD-дефекты

    −40%

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

    • Сравнение существующего уровня дефектов с результатом после перестройки процессов
    • Без приписывания эффекта одному конкретному изменению
  2. 02

    Автоматизация с нуля

    Python · Selenium · Jenkins · Allure

    Автоматизацию строили с нуля по направлениям web UI, API, mobile, smoke, regression, CI, параллельные запуски и мониторинг пользовательских сценариев.

    • Покрытие UI, API и mobile-сценариев
    • Smoke, regression и параллельные запуски в CI
    • Мониторинг пользовательских сценариев как отдельное направление
  3. 03

    Мониторинг пользовательских сценариев

    30% → 90%

    Автоматизированные проверки критичных пользовательских сценариев и контроль доступности сервисов. Основной цикл запускался примерно раз в минуту; при ошибке выполнялась повторная проверка примерно каждые 15 секунд.

    • Команда получала сигнал о пользовательской проблеме в первые минуты
    • Можно было начать разбор до массового появления обращений
    • В отдельных случаях пользовательские проверки сигнализировали о проблеме раньше инфраструктурного мониторинга
  4. 04

    Нагрузочное тестирование

    до 400 тыс. пользователей/час

    Нагрузочное тестирование работало как отдельный сервис: внутреннее ядро из двух инженеров и дополнительная экспертиза подрядчика при необходимости. Проверяли mos.ru, API, новые сервисы и крупные спецпроекты. Для проекта Реновации моделировали пиковую нагрузку порядка 400 тыс. пользователей в час на основе статистики посещаемости.

    • Это моделируемая пиковая нагрузка в сценариях проекта Реновации, а не производительность платформы
    • Стек: JMeter · Yandex.Tank
    • Внутреннее ядро направления + ресурс подрядчика при необходимости
  5. 05

    Мобильное приложение «Моя Москва»

    Appium · Android · iOS

    Приложение «Моя Москва» создавалось и вводилось в эксплуатацию в период моей работы. В моей зоне ответственности была организация качества: выделенный QA lead, ручное и автоматизированное тестирование, Android/iOS и готовность релизов.

    • Выделенный QA lead на проекте
    • Автоматизация на Appium
    • Платформы Android и iOS

Результаты этапа качества

Что дала перестройка функции качества

  • 1/нед → около 2/день

    Частота поставки mos.ru

  • −40%

    PROD-дефекты

  • 30% → 90%

    Покрытие мониторингом

  • 8

    сотрудников выросли до руководящих ролей

Карьерный переход

От качества к техническому управлению

После нескольких лет руководства функцией качества я перешёл к техническому управлению цифровыми продуктами. Зона ответственности расширилась с QA, автоматизации и релизов до разработки, подрядчиков, технической документации, ПСИ и приёмки.

Параллельно проходил MBA-программу «ИТ-директор» в НИУ ВШЭ, что совпало с расширением моего управленческого фокуса.

Было

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

Стало

продукт · разработка · подрядчики · поставка · документация · контракты · приёмка

Этап 2

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

Ответственность со стороны заказчика за развитие, поставку и приёмку портфеля цифровых сервисов.

Портфель

Портфель городских цифровых продуктов

  • Портал «Наш город»

    Техническое управление поставкой и качеством, взаимодействие с подрядчиком и стабилизация запуска новой версии.

  • «Активный гражданин»

    Техническое сопровождение и согласование документации в зрелой продуктовой команде.

  • «Город идей»

    Планы технического развития, согласование решений, документация, ПСИ и приёмка.

  • Платформа «Электронный дом»

    Техническое развитие, согласование решений, взаимодействие с подрядчиками, ПСИ и приёмка.

  • Центр автоматизированной фиксации административных правонарушений (ЦАФАП)

    Техническое сопровождение, согласование решений и документации, ПСИ и приёмка.

Мини-кейс

«Наш город»: стабилизация проблемного проекта

Исходная ситуация

До передачи проекта в мою зону ответственности новая версия «Нашего города» более года не могла выйти в промышленную эксплуатацию.

Что изменили

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

Результат

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

Поставщики и приёмка

Управление подрядчиками и технической поставкой

  1. Подрядчики и поставка

    Ситуация
    Одновременно велись несколько подрядных потоков с разными командами, зонами ответственности и обязательствами по поставке.
    Изменение
    Технические синки, постановка задач, контроль сроков и реализации, демо, проверка результата, анализ оценок, аудит, техническая документация и привлечение внутренних архитекторов и экспертов.
    Эффект
    Поставка подрядчиков связывалась с готовностью результата и условиями приёмки.
  2. Контроль качества поставки

    Ситуация
    Ответственность не заканчивалась постановкой задачи подрядчику. Результат проходил техническую проверку, ПСИ, документирование и формальную приёмку.
    Изменение
    Анализ оценок, аудит, согласование технической документации и решений с внутренними архитекторами и экспертами, ПСИ и приёмка по согласованному набору документов и актов.
    Эффект
    Контроль технической поставки и приёмки портфеля городских сервисов выстроен системно.

Второй этап

Масштаб технического управления

  • 5

    цифровых продуктов в портфеле

    «Наш город», «Активный гражданин», «Город идей», «Электронный дом» и ЦАФАП.

  • до 5

    подрядчиков одновременно

    Команды подрядчиков суммарно около 150 специалистов.

  • около 150

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

    Без прямого подчинения. Управление через технические синки, задачи и приёмку.

  • Новая версия

    «Наш город» запущен после стабилизации проекта

    Длительно проблемный продукт взят под контроль и доведён до промышленного запуска.

Технологии

Технический контекст

  • Python
  • Selenium
  • Jenkins
  • Allure
  • Appium
  • JMeter
  • Yandex.Tank
  • API
  • CI/CD
  • Управление релизами
  • ПСИ
  • Roadmap
Следующий кейсEnterprise-трансформация и импортозамещение платформ тестирования