А как у вас с DevOps-зрелостью?
Или «Почему ваш пайплайн больше похож на хромого единорога»
DevOps — это не точка назначения, а путь к более частым и надежным релизам. В лучших проектах DevOps превращается в настоящий «спорткар»: процессы полностью автоматизированы, CI/CD настраивается так, чтобы каждое изменение автоматически собиралось и развертывалось, а мониторинг отлавливает проблемы еще до того, как о них узнают пользователи. Релизы в таких командах, как правило, проходят «как по маслу», а технический долг благодаря автотестам стремительно съедается.
Но… Бывает и обратная ситуация (чаще всего). Такие проекты «пышут» проблемами. Они как телега с квадратными колёсами – релизы с полуживыми скриптами, мониторинг по логам, а автотесты проходят чисто вручную Васьком по пятницам. Знакомо?)
И самое печальное — чаще всего команда даже не понимает, насколько такой расклад дел плох. Потому что «оно же вроде работает»?
И чтобы лишить вас одной большой проблемы, я решил накатать небольшой тест, который поможет оценить автоматизированность проекта и необходимость в Devops-специалисте. Без долгих размусоливаний, погнали!
Мини-тест на DevOps-зрелость: оцените ваш проект за 1 минуту
Система оценки от 0 до 3. Где 0 – нет такого критерия, 1 — частично, 3 - максимально представлено.
CI/CD:
«Запушил в git — всё само задеплоилось» (3 балла)
«Запушил, потом руками запускаем скрипты, молимся» (1 балл)
«А что такое CI/CD?» (0 баллов, и да, я плачу…)
Мониторинг:
«Проблемы видны раньше пользователей» (3 балла)
«Узнаём о проблемах, когда всё уже упало» (1 балл)
«Мониторинг? Это когда менеджер пишет, что что-то тормозит?» (0 баллов)
Автотесты:
«У нас их столько, что можно спать спокойно» (3 балла)
«Пару есть, но мы им не доверяем» (1 балл)
«Авто… что?» (0 баллов)
Релизы:
«Кнопка «Выпустить» и 5 минут ожидания» (3 балла)
«Ночь, кофе, молитва и откаты» (1 балл)
«Не релизимся — просто выкатываем фичи прямо в прод» (0 баллов)
Техдолг:
«Есть, но он под контролем» (2 балла)
«Есть эпик Когда-нибудь починим» (1 балл)
«Техдолга нет, у нас всё идеально!» (0 баллов, и я вам не верю)
Надежность:
«Есть DR, RTO/PRO, SLA» (3 балла)
«Где-то есть джоба, с названием "backup"» (1 балл)
«Работает и хорошо» (0 баллов, и я вам не верю)
Расшифровка результатов
Баллы |
Уровень зрелости |
Следующий шаг |
0–5 |
Аларм, пора делать что-то с автоматизацией. |
Автоматизируйте основу: CI, мониторинг, тесты |
6–10 |
Частичная автоматизация – пора углубляться. |
Расширьте автотесты и метрики |
11–15 |
Автоматизация на хорошем уровне, но это не повод останавливаться. |
Оптимизируйте пайплайн и процессы |
16–17 |
Лучшие из лучших – держите планку! |
Продолжайте эволюцию: GitOps, наблюдаемость |
Что делать, если ваш DevOps хромает?
Не игнорируйте проблему. Если релизы приносят боль, значит, пора пересматривать процессы. Накопление технического долга — тихая бомба, которая в любой момент может замедлить команду и снизить надежность системы.
Автоматизируйте самое важное. Нет автотестов — начните с 1–2 критичных (unit/UI/etc). Нет мониторинга — настройте простейший стек (например, Grafana+Prometheus). Ручные деплои — заведите хотя бы базовый CI (GitLab CI, GitHub Actions или аналог).
Добавьте метрики и прозрачность. Если вы не видите, где «тормозит» система, вы словно летите вслепую. Сбор метрик (логов, показателей производительности и т.д.) и наглядные дашборды помогут быстрее реагировать на сбои.
Не бойтесь менять процессы. DevOps — это непрерывный путь улучшения, а не разовая акция. Двигайтесь постепенно: одна фича CI, один тест или мониторинг за раз, и вы точно увидите прогресс.
Подарок для самых стойких
Для самых стойких, кто дочитал до конца, — бонус! Документ, который поможет оценить проект, ждёт вас в моём камерном канале: https://t.me/secrets_of_devops.
А ниже спойлер про оценку:
Под катом расширенная часть про CI/CD
ЧАСТЬ 1. ПРО CI
### Девопс — это про процессы. Давайте заценим, как у вас с CI-сборкой!
Привет, мой пытливый друг! ? Ты ведь тоже уверен, что девопс — это не про «нажми кнопку — получи результат», а про выстроенные процессы? Отлично! Тогда давай проверим, как у тебя (или твоей команды) обстоят дела с CI-сборкой.
Вот опросник-чеклист — бери, проходи и смотри, где у тебя дыры, а где — полный порядок!
---
### 1. Управление версиями (или "Где мой код, Карл?")
? Весь исходный код в гите?
- 0 — Что такое Git?
- 1 — Есть, но кое-что лежит в архиве на флешке у дяди Васи
- 2 — Почти всё в репе, но есть "секретные" папки
- 3 — Всё чисто, даже README.md не стыдно показать
? Модели данных / схемы БД / миграции в гите?
- 0 — База? Это где админ ручками SQL пишет?
- 1 — Что-то есть, но половина — в голове у того самого дяди Васи
- 2 — Всё закоммичено, но без Liquibase/Flyway
- 3 — Миграции как код, откаты прописаны, Liquibase рулит
? Конфиги (или "Где пароли, Лебовски?")
- 0 — Конфиги? Это те, что в /tmp/config.json?
- 1 — Лежат в репе, но мы стесняемся
- 2 — Все секреты в Vault / Git-crypt / Kubernetes Secrets
- 3 — Чувствительные данные — под замком, а переменные (тип loglevel) — настройка без боли
---
### 2. Управление зависимостями (или "А чё это у нас билд сломался?")
? Внешние библиотеки / пакеты
- 0 — Качаем с random-repo.ru, авось прокатит
- 1 — Есть requirements.txt, но он не обновлялся с 2019-го
- 2 — Используем Nexus / Artifactory, но без WAF
- 3 — Есть прокси-репозиторий, сканирование уязвимостей, белый список зависимостей
? Хранение артефактов
- 0 — Артефакты? Это те, что в /build у каждого разработчика?
- 1 — Кидаем в S3 / FTP, но без системы
- 2 — Есть Nexus / Artifactory, но политики хранения — это про что?
- 3 — Артефакты версионируются, есть TTL, доступы по ролям
---
### 3. Тесты (или "А оно вообще работает?")
? Покрытие кода автотестами
- 0 — Тесты? Это когда мануально тыкаем в прод?
- 1 — Есть пара unit-тестов "для галочки"
- 2 — Покрыто >50%, но продакшн всё равно страдает
- 3 — >70% coverage + тест-ферма / полная копия прода
? Merge Request (или "Кто последний — тот и чинит")
- 0 — Мержим в мастер без вопросов, как настоящие камикадзе
- 1 — Ревью есть, но тестов нет (надеемся на удачу)
- 2 — ИИ-ревью (тип gimini) или quality gate (Sonarqobe) , но люди всё равно пропускают
- 3 — Человек + ИИ + автотесты = мерж только после полного дзена
---
### Что дальше?
Посчитай баллы и смотри:
- 0–5 — Ох, ребят, у вас не CI/CD, а "надежда и молитва" ?
- 6–12 — Есть прогресс, но процессы хромают ?
- 13–18 — Вы на правильном пути, можно ещё полировать ✨
- 19–21 — Да вы гуру DevOps-культуры! ?