Tooling и Delivery
Для чего модуль
Собрать процесс поставки от коммита до production так, чтобы релизы были частыми, предсказуемыми и безопасными.
Результат после прохождения
- Вы проектируете CI/CD pipeline под контекст команды и продукта.
- Вы вводите quality gates, которые реально уменьшают риск дефектов.
- Вы умеете планировать rollout/rollback без импровизации.
- Вы строите post-release наблюдаемость и цикл непрерывного улучшени я.
Термины и аббревиатуры
| Термин | Коротко |
|---|---|
CI/CD | Непрерывная интеграция и доставка |
Canary | Постепенный релиз |
Rollback | Откат на стабильную версию |
Lead time | Время до продакшена |
CFR | Доля неуспешных релизов |
Фокус по грейдам
Junior: понимать базовые механики и объяснять их простыми примерами.Middle: применять тему в продуктовых сценариях с учетом рисков и ограничений.Senior: управлять архитектурными trade-offs, метриками и эволюцией решения.
Как работать с модулем
- На каждом уроке выберите один этап delivery pipeline и формализуйте его.
- Любой новый gate сопровождайте обоснованием стоимости/пользы.
- После урока обновляйте release runbook и ownership.
Программа модуля
Урок 1. CI pipeline
Цель: обеспечить быстрый и надежный сигнал качества на каждом изменении.
Структура CI
- Fast checks (lint, typecheck, unit).
- Integration/smoke checks.
- Build artifact и проверка воспроизводимости.
Принципы эффективного CI
- Быстрый feedback (до 10-15 минут для критичных проверок).
- Параллелизация и кэширование.
- Детеминированная среда запуска.
Где ломается в проде
- CI слишком медленный, разработчики обходят проверки.
- Нестабильные тесты дают шумный сигнал.
- Нет разделения обязательных и опциональных шагов.
Мини-задача (обязательная)
Нарисуйте текущий CI pipeline и выделите 3 узких места. Для каждого предложите улучшение с оценкой эффекта.
Что спросит интервьюер: как сделать CI быстрее, не жертвуя качеством.
Критерий готовности по уроку: вы можете объяснить CI как систем у сигналов качества, а не как «набор job'ов».
Урок 2. CD и релизная стратегия
Цель: доставлять изменения в production управляемо и с контролем риска.
Релизные паттерны
- Feature flags.
- Canary / phased rollout.
- Blue-green (где применимо).
Release readiness
- Чеклист готовности релиза.
- Явные блокеры и ответственность за принятие решения.
- Коммуникация и окно релиза.
Где ломается в проде
- Релизы «большими пачками» раз в долгое время.
- Нет плана отката до начала релиза.
- Flag-логика накапливается и становится новым источником риска.
Мини-задача (обязательная)
Подготовьте rollout strategy для одной рискованной фичи: этапы, метрики мониторинга, trigger для rollback.
Что спросит интервьюер: как вы снижаете риск релиза без потери скорости поставки.
Критерий готовности по уроку: вы можете провести релиз по процессу, который выдерживает ошибки и частичные отказы.
Урок 3. Observability и эксплуатация
Цель: видеть состояние системы после релиза и быстро локализовать проблемы.