DevOps-вакансии часто написаны как вакансия всей platform-команды сразу: Linux, облако, Kubernetes, Terraform, CI, наблюдаемость, безопасность, «желательно разработка». Junior это читать как личный план нельзя. Иначе год уйдёт на вишлист, а в прод вы так и не поставите чужой сервис.

Ниже — карта навыков без культа кластера: поставка, Linux, наблюдение, облако по факту, что junior ещё не обязан тащить как platform lead, два примера зоны ответственности. Резюме роли — в резюме DevOps-инженера. Вход — в как стать DevOps. Соседний SRE — в как стать SRE.

Коротко:

  • Ядро: довести изменение до среды и понять, что сломалось, по логам и метрикам.
  • Linux, Git, CI, сети на уровне «сервис не отвечает — куда смотреть» важнее десятого облачного бейджа.
  • Junior не обязан проектировать мультикластер. Middle держит контур поставки. Senior — границы платформы и инциденты класса системы.
  • Облако пишите сервисами, которыми пользовались, не логотипом вендора.
  • Сверяйте must с вакансиями DevOps и CV — в разборе резюме.

Как читать вишлист

Разложите объявление: поставка (CI/CD), рантайм (ВМ / k8s / serverless), наблюдение, IaC, безопасность гигиена, дежурства. Отметьте, что must для этой команды, что копипаст. Десять инструментов в одном junior-оффере — сигнал смотреть задачи, не skills.

Разработка «как плюс»: читать Dockerfile и простой сервис полезно. Требование «Senior Java + DevOps» — две роли. Не дописывайте язык в основное, если вы им не дебажите бизнес-логику. Карта backend — в навыках backend.

Вторая ловушка вишлиста — «DevOps / SRE / Platform / Cloud» в одном заголовке кандидата. Выберите, на какие объявления идёте на ближайшие две недели. Platform lead с SLO и своим кластером — не вход. Вход чаще: пайплайн, среды, деплой, базовые алерты. Если цель — облачный инженер, смотрите задачи про сети и IAM, не только про Jenkins. Путь — в как стать cloud engineer, но не тащите его титул раньше контура.

Третья ловушка: сертификация как замена инцидента. Бейдж полезен, когда вакансии круга его фильтруют и вы готовы говорить по сервисам. Без выкладки и отката он на скрининге живёт минут пять. Сначала контур, потом бейдж — не наоборот, если вы ещё junior.

Ориентир рынка — фильтры каталога, не слухи про медианы. Про цифры на экране — ожидания по зарплате.

Ядро поставки

Git: ветки, откат, почему пайплайн красный. CI: собрать, прогнать тесты, выложить артефакт, секреты не в логе. Артефакт и среда: что такое «эта версия на стейдже». Идемпотентность выкладки: повтор не делает хуже.

Linux: процессы, диски, права, systemd или аналог, ssh без страха. Сеть: DNS, порты, прокси, TLS глазами «сертификат кончился». Контейнер: образ, слои, зачем non-root, как посмотреть логи контейнера. Не обязательно свой кластер в первый год.

Проверка Linux без театра: умеете найти, какой процесс держит порт, куда пишет лог, хватает ли места, не кончился ли inode, жив ли DNS до соседа. Это спрашивают на junior чаще, чем Helm values. Если ответы «зайду в панель облака и потыкаю» — панель не заменит эти пять действий. Закройте их на своей ВМ или в compose за выходные, затем возвращайтесь к манифестам.

Наблюдение: метрика «сервис жив», лог ошибки, алерт, который не орёт всегда. Инцидент: симптом → гипотеза → откат или фикс → запись. Без этого Terraform в CV — декорация. Вопросы интервью — в вопросах на собеседовании DevOps.

Алерты без усталости — часть ядра. Если падает всё подряд, дежурство бесполезно. Junior может добавить health и диск. Middle настраивает порог и не будит команду ложным. Senior смотрит, какой сигнал вообще должен существовать. В резюме это выглядит как «убрали ночные ложные по диску после смены порога», не как «Prometheus, Grafana, Alertmanager, Loki, Tempo» списком.

Junior: достаточно

Довести сервис по готовому пайплайну, починить красный job, объяснить Dockerfile своего контура, поднять стенд в compose, написать алерт на «не стучится health». Понимать, кому эскалировать сеть и IAM, если это не ваша зона.

Не обязан: писать операторы k8s, проектировать mesh, быть владельцем биллинга облака, закрывать security-аудит один. Если вакансия это must — это middle+/platform, не вход. Путь из поддержки — в из поддержки в DevOps. Доказательство без стажа — проект с пайплайном и README, резюме без опыта. Не покупайте сразу три облачных курса: один контур выкладки сильнее трёх бейджей без отката.

Middle

Свой контур: пайплайн нескольких сервисов, среды, секреты, деградация выкладки, дежурство по поставке и базовым алертам. IaC на том, чем реально пользуетесь: Terraform/Ansible/аналог — с state и ревью, не «туториал на VPC».

Kubernetes как пользователь и админ namespace/деплоев — если это рантайм команды. Если рантайм ВМ — не стыдно, пишите ВМ. Облако: конкретные сервисы (бакеты, управляемые БД, очередь, балансир), квоты и стоимость на своём уровне, не «архитектор landing zone».

Ревью чужих манифестов и джобов: секреты, ресурсы, health. Онбординг разработчика: «как выкатить». Инциденты без театра: постмортем в зоне поставки. Секрет в логе, пойманный на ревью, — нормальная сильная пуля.

Senior / platform

Границы платформы: что self-service, что нет, золотые пути, стоимость ошибок. Инциденты класса «почему кластер так устроен». Люди и договор с разработкой. Инструмент снова следствие.

Не путайте с SRE: если вакансия про SLO и error budget как главную ось — это соседняя карта. Можно вырасти туда, не обязательно. Облачный фокус отдельно: как стать cloud engineer, практика сервисов — в AWS roadmap и Docker roadmap по факту стека, не все сразу.

Если в резюме одновременно SRE, DevOps и Cloud Architect — выберите объявления двух недель. Иначе скрининг будет случайным: вас разберут то по SLO, то по Terraform state, то по VPC, и нигде не хватит глубины. Узкий честный контур поставки проходит чаще широкого титула.

Пример: зона, не список

Ещё junior. Собрал CI: линт, тесты, сборка образа, деплой на стейдж по тегу. Compose для локальной БД. Алерт «health 3 минуты down» в чат. Кластер не администрировал: манифесты правил по образцу. AWS — бакет артефактов, не IAM-организация. Готов разобрать красный pipeline на созвоне.

Уже middle. Несколько сервисов, две среды, откат тегом, секреты в хранилище, не в репе. Дежурство: ночной алерт диска, расширили volume, добавили порог. Terraform: модуль стейджа, state в команде, разрушение руками не делаю. K8s: деплои, HPA по факту метрики, не свой оператор. Разработке дал шаблон пайплайна, чтобы не копипастили yaml с ошибкой порта.

Разница в ответственности и инциденте, не в слове Kubernetes. Так пишите опыт: как описать опыт. Стек по местам файла: как указать стек.

Безопасность и «ещё Terraform»

Гигиена: секреты, минимальные права на своём контуре, не открытый Docker socket, обновления базовых образов. Это junior-must. Пентесты и SecOps-платформа — другая вакансия, см. как стать security engineer, если туда цель.

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

90 дней, если входите

Один сервис: репозиторий, CI, образ, стейдж, лог, алерт, README «как выкатить и как откатить». Затем секреты и одна инфраструктурная сущность IaC. Не параллельно EKS+GKE+ Nomad.

Сверяйте must с каталогом DevOps. Удалёнка: письменный статус инцидента обязателен, см. резюме для удалённой работы.

Скрининг: схема выкладки важнее логотипа облака

Вас почти наверняка попросят: как выкатываете, как откатываете, что смотрите, когда 500 после релиза. Нарисуйте это заранее теми словами, что в резюме. Если в CV Kubernetes, а на схеме один docker compose на стейдж — сразу скажите границу. Расхождение ломает сильнее узкого, но честного контура.

Перед/после пули:

Было: «Администрирование Kubernetes, Terraform, AWS, CI/CD, мониторинг, Linux, Docker, Helm, Prometheus, Grafana».

Стало: «Пайплайн трёх сервисов: линт, образ, деплой на стейдж и прод по тегу, откат предыдущим тегом. Ночной алерт диска — расширили volume, подняли порог. Terraform модуля стейджа, state общий. k8s: деплои и HPA, не свой оператор».

Вторая пуля даёт грейд. Первая даёт вишлист. На middle вас ещё спросят про секрет в логе и про «кто может нажать деплой». Если ответы пустые — это зона учёбы, не строка Senior в шапке.

Самопроверка: поднимите с нуля за выходные выкладку одного сервиса до публичного стейджа (хоть простого) и сломайте её нарочно: неверный тег, кончившееся место, протухший секрет. Запишите, как поняли причину. Это сильнее лекции про service mesh.

Дежурства: опишите модель. «Только пайплайн, рабочие часы» и «on-call платформы 24/7» — разные жизни. В CIS-удалёнке уточните пояс и эскалацию. Не обещайте круглосуточный on-call, если не тянете: это всплывёт на первой неделе и сожжёт испытательный.

Заголовок = зона, не набор вендоров. Summary: контур поставки + один инцидент + формат. См. как написать summary. Стек группами — как указать стек. Затем разбор резюме.

Частые вопросы

Нужно ли быть сначала разработчиком?

Помогает, не обязательно. Нужно читать код пайплайна и сервиса настолько, чтобы чинить выкладку. Чистый «только клики в консоли» на junior уже слабо.

Kubernetes обязателен?

На части рынка да, на части нет. Смотрите рантайм вакансий. ВМ и compose — нормальный вход, если честно подписаны.

Какой язык скриптов?

Bash до уровня, где вы не боитесь пайплайна, плюс Python или Go — как в команде. Не три языка «Hello World».

Чем DevOps отличается от сисадмина?

Поставка продукта и договор с разработкой, не только «серверы живут». Граница размыта — читайте задачи, не бренд роли.

Стоит ли дежурить на junior?

Лёгкое дежурство по своему пайплайну — плюс. Круглосуточный on-call всей платформы без наставника — риск выгорания и чужой грейд. Смотрите описание смен.

Как не соврать в skills?

Корзины: основное / пользователь / нет. Кластер «в команде был» — не ваш навык админа. Разбор файла: разбор резюме, общие правила — навыки в IT-резюме.

Что сделать сейчас

Выпишите must из пяти DevOps-вакансий одной линии рантайма (k8s или ВМ). Отметьте зону: готов чинить / видел / нет. Закройте одну дыру на своём пайплайне за две недели.

Перепишите пули опыта языком поставки и инцидента, уберите логотипы без факта. Сверьте с вакансиями DevOps и прогоните CV через разбор резюме. Если заголовок Senior Platform, а вы не можете откатить тег — сначала грейд, потом Terraform. На ближайшие две недели: один сервис, красный pipeline, который вы умеете чинить, один алерт без ложных ночных срабатываний. Это вход. Мультикластер подождёт, пока этот контур объясняется на бумаге за три минуты.