Talanto
For recruiters
PlansCV Review
Login

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Как отвечать на вопрос о зарплатных ожиданиях

    57d ago

  • Тестовое задание при найме: как оценить объём, выполнить и представить результат

    57d ago

  • Как ответить на вопрос «Почему вы хотите работать у нас?»

    57d ago

  • Как рассказать о сильных сторонах на собеседовании

    57d ago

  • Как говорить о слабых сторонах на собеседовании

    57d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
  1. Articles
  2. Interviews

Что спрашивают на собеседовании DevOps

Linux, сети, CI, контейнеры, инцидент. Как готовить истории, а не только команды.

9 min readApril 18, 202687 views

On this page
  1. Как читать вакансию: не готовить не тот контур
  2. Linux и сети: сценарий, не man page
  3. CI/CD: поставка, не зелёная галочка
  4. Контейнеры и оркестрация по факту резюме
  5. Инцидент: главная история экрана
  6. Онкол, границы, «единственный человек»
  7. Наблюдение и «откуда вы узнали, что упало»
  8. Две недели подготовки
  9. Частые вопросы
  10. Что сделать сейчас

Собеседование DevOps в 2026-м редко проваливается из-за «не назвал все 40 инструментов из вакансии». Чаще ломается другое: человек помнит команды kubectl, но не может рассказать инцидент: что упало, как поняли, что сделали, что изменили в пайплайне после. Нанимающий покупает вероятность, что вы не сделаете из релиза лотерею и не будете героем в одиночку в три часа ночи.

Ниже — блоки экрана, полные ответы про Linux, CI, контейнеры и инцидент, и как готовить истории, а не только шпаргалку команд. Общий каркас — вопросы на собеседовании. Карта без культа бейджей — в что должен знать DevOps. Слоты: вакансии DevOps.

Коротко:

  • Linux, сети и «почему сервис не слушает порт» важнее десятого пункта в списке Helm-чартов.
  • CI спрашивают как поставку: что ломает пайплайн, кто откатывает, где секреты.
  • Контейнеры — образ, слои, почему «works on my machine» умер, не «docker run как магия».
  • Инцидент готовьте как STAR: сигнал, гипотеза, действие, постмортем без яда.
  • Junior не обязан быть platform lead. Честная граница сильнее выдуманного Kubernetes-космоса.

Как читать вакансию: не готовить не тот контур

Выпишите: облако или свои серверы, CI-система, Kubernetes да/нет, онкол, размер команды. Если в тексте Docker Compose и Jenkins на паре сервисов — не учите неделю операторы Kubernetes «на всякий случай». Если слот platform/SRE — будут SLO и инциденты, это уже соседняя роль. Сверьтесь с резюме DevOps: что написали в стеке, то и будут копать.

Junior: один пайплайн, один сервис в контейнере, базовый Linux, простой инцидент «диск забился / сертификат истёк». Middle: несколько сервисов, откат, секреты, наблюдение. Senior: границы ответственности, стоимость простоя, как не стать единственным человеком на контур.

Не готовьте Terraform-модуль на всю компанию, если в вакансии «допилить Jenkins и Docker». Не готовьте только bash, если в тексте Kubernetes и онкол. Вторая ошибка — список из 40 логотипов в CV: вас попросят любой, и пустой ответ по Helm после «эксперт Kubernetes» закрывает экран. Лучше три инструмента с историей, чем музей бейджей. Облако: один контур, который поднимали руками — сеть, ВМ или managed k8s, секрет, бэкап мысли на уровне «как восстановим» — сильнее курса с слайдами.

Linux и сети: сценарий, не man page

Типовой вопрос: «сервис не открывается снаружи, на машине вроде запущен. Куда смотрите?»

Сначала: слушает ли процесс порт, тот ли порт, localhost или 0.0.0.0. ss или netstat, потом локальный curl на порт. Если локально живо, а снаружи нет — файрвол, security group, неправильный upstream в балансировщике, DNS на старый IP. Смотрю логи юнита: упал сразу после старта из-за нехватки файла конфигурации — это не «сеть сломалась».

Диск и inode: сервис пишет логи в /var и диск 100% — процесс жив, писать некуда, внешне «тупит». Память: OOM, рестарт в цикле. Не начинаю с tcpdump, пока не закрыл слушает / не слушает. tcpdump — когда уже ясно, что пакет доходит или не доходит.

Граница: тонкости conntrack в NAT могу нарисовать на пальцах, но на этом слоте сначала порт, юнит, диск, группа безопасности. Не обещаю «сейчас найду в ядре», если не смотрел.

Follow-up: DNS TTL, TLS-сертификат, time skew для Kerberos/JWT — держите по одной фразе, если это в вакансии.

CI/CD: поставка, не зелёная галочка

Спросят: что у вас в пайплайне, кто жмёт prod, как откатываете, где секреты.

Типичный контур, который я закрывал: линт и тесты на PR, сборка образа по git sha, деплой на стейдж автоматически, на прод — руками или по тегу с approval. Секреты не в репозитории: в хранилище CI или в менеджере секретов, в лог не печатаем. Артефакт неизменяемый: тот же digest, который прошёл стейдж, уезжает на прод, не «ещё раз соберём на проде, вдруг повезёт».

Откат: предыдущий известный digest, не «починим вперёд на горячую», если нет миграции, которую нельзя откатить. Если миграция вперёд-only — это отдельно в README и в критерии релиза, не сюрприз в три часа. Флаки: карантин теста с тикетом, не mute навсегда без хозяина.

Что ломает пайплайн чаще, чем Kubernetes: протухший токен в registry, зависимость от «latest», ручной шаг, который один человек помнит. Это я и чинил: убрали latest, повесили digest, добавили проверку, что образ существует, до деплоя.

Не рисуйте идеальный GitOps, если у вас был Jenkins с двумя джобами. Честный маленький контур сильнее чужой схемы из блога.

Спросят про IaC. Если Terraform/Ansible в резюме — один модуль: что создаёт, как не храните стейт в git, как накатываете на стейдж. Если нет — «конфиг в репозитории манифестов, руками не правим прод». Не стыдно. Стыдно «я кликаю в консоли и как-то живём» без плана, как это менять. Баш на экране: прочитайте чужой скрипт, найдите set -e, незакавыченный путь, curl без -f. Это ближе к работе, чем написать fizzbuzz.

Контейнеры и оркестрация по факту резюме

Docker: зачем multi-stage, почему не root в проде, что даёт HEALTHCHECK, чем COPY . опасен без dockerignore. Compose — зависимость, сеть, volume для разработки, не «прод на одной ВМ навсегда». Kubernetes — только если он в вакансии: под, проба, лимиты, зачем не latest, чем rolling отличается от recreate на одном реплике.

Образ собираю от не-root, зависимости отдельно от кода, чтобы слой кэша жил. В прод не тащу компилятор и .git. Тег — git sha. Если в Kubernetes: requests/limits по памяти, иначе соседи съедят ноду; liveness не должен бить тяжёлый запрос к базе каждую секунду — это уже самоDDoS. Рестарт из-за пробы, которая ходит в зависимость, которая ещё поднимается — классика, initialDelay или раздельные readiness/liveness.

Чего не делаю на junior-слоте: не проектирую service mesh «потому что модно». Если в вакансии два сервиса и Compose — так и готовлю.

CV review

How does your resume look to a recruiter?

Upload a PDF or DOCX. In 1–2 minutes you get a score across 7 sections and fixes in order of impact.

AKAnna KovalevaFrontend · Middle
46

The best result is buried at the end

Worked on developing new features and fixing bugs. Took part in moving the cart to Next.js, after which conversion grew from 2.1% to 2.8%.

Rewrite

Moved the cart to Next.js with the team, lifting conversion from 2.1% to 2.8%.

Review my resumePDF or DOCX · 1–2 minutes

Инцидент: главная история экрана

Без истории вы останетесь человеком, который «знал команды». Готовьте одну, лучше с постмортемом.

Ситуация: после деплоя API отдавал 502, а пайплайн был зелёный. Сигнал: алерт по 5xx и сообщение поддержки, что кабинет не логинится. Гипотеза 1: новый образ. Гипотеза 2: миграция. Гипотеза 3: конфиг, секреты не подхватились. Действие: откатили на предыдущий digest — 502 ушёл. Потом смотрели: в новом образе поменяли имя переменной DATABASE_URL, в манифесте осталось старое, контейнер стартовал, к базе не коннектился, проба была только на процесс, не на зависимость.

Постмортем: readiness на реальный /health, который чекает БД; пайплайн сравнивает обязательные env с манифестом; деплой не считается успешным без среза 5xx. Я писал черновик постмортема без фамилий в разделе «виноват». Онкол в ту ночь был мой, эскалацию к разработке сделал через 15 минут, не геройствовал час в одиночку.

Ограничение честно: трафик был скромный, не «миллион RPS». Зато цепочка сигнал → откат → причина → защита от повтора закрыта. На следующем слоте готов разобрать логи и манифест, не только рассказ.

Цифры скромные нормальны. Враньё про масштаб всплывает на «как шардировали алертинг».

Онкол, границы, «единственный человек»

Спросят. Отвечайте как на HR, только с деталью: ротация, рунбук, кто второй. Если вы единственный на контур — это объём, его надо назвать в вилке и в решении принимать оффер. Не геройствуйте на интервью «я всегда на связи». Это сигнал выгорания и риск для них же.

Наблюдение и «откуда вы узнали, что упало»

Спросят не «какие есть в мире Prometheus-экспортеры», а откуда сигнал. Метрика 5xx, лог ошибки коннекта к БД, жалоба поддержки, диск. Алерт не должен требовать человека, который «просто знал, что так бывает». Рунбук: первая гипотеза, откат или нет, кого звать. Если алертов не было и вы узнали от клиента — это тоже ответ, плюс что бы повесили после.

На том 502 мы узнали сразу: алерт по доле 5xx за минуту и падение логинов. Если бы алерта не было, первым пришла бы поддержка — это хуже на 20 минут. После инцидента добавили readiness на /health с проверкой БД и алерт на рестарты пода. Логи: correlation id с запроса, не простыня без запроса. Не обещаю полный tracing «как в большой корпорации»: на нашем объёме хватило id и метрики. Дашборд без порога — картинка, не сигнал.

Секреты и доступ: как выдаёте новому человеку, как отзываете ушедшему, почему ключ не в общем чате. Даже на junior это один абзац зрелости. Не рассказывайте, как обходить чужую сеть. Расскажите, как не залить .env в git — и что делали, если уже залили: ротация, а не «ну репозиторий приватный».

Две недели подготовки

  1. Дни 1–4. Linux: порт, юнит, диск, логи. На своей ВМ сломайте и почините.
  2. Дни 5–8. Пайплайн своего проекта: тесты, образ, деплой на стейдж. README: как откатить.
  3. Дни 9–11. Инцидент на бумаге, затем вслух 3 минуты. Диктофон.
  4. Дни 12–14. Mock: самопрезентация, инцидент, вилка, вопрос про онкол. Подготовка к интервью.

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

01Нужны ли сертификаты AWS?

Не вместо контура. Если в вакансии облако — один сервис, который вы поднимали руками, сильнее бейджа без истории. Гонка сертификатов сама по себе слот не закрывает.

02Спросят ли алгоритмы?

Редко на классическом DevOps. Иногда bash/python на коленке: распарсить лог, не написать дерево. Смотрите объявление.

03Что, если не было прод-инцидента?

Учебный: уронили диск, сломали env, восстановили. Честно пометьте, что не прод. Ход мысли всё равно видно.

04Как говорить, если автотестов в пайплайне почти нет?

«Сейчас только сборка и деплой, тесты — дыра, вот как бы вставил smoke на /health». Не притворяйтесь Google SRE.

05Большое тестовое «поднимите нам кластер за выходные»?

Это объём работы. Лимит часов и отказ — в отказе от тестового.

06Нужно ли письмо?

Короткое: пайплайн, инцидент, ссылка. Сопроводительное, короткая версия — здесь.

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

Напишите один инцидент на полстраницы по схеме выше. На своей машине проверьте: процесс, порт, юнит. Соберите в резюме один пайплайн, не список из 40 логотипов. Затем смотрите DevOps-вакансии и готовьте экран под их контур, не под чужой чеклист из чата.

Если слот уже завтра: нарисуйте свой пайплайн на одном листе — PR, тесты, образ, стейдж, прод, откат. Скажите это вслух за две минуты. Второй лист — инцидент: сигнал, гипотеза, действие, что изменили. Без этих двух листов команды kubectl на экране не спасут. С ними можно не знать третий чарт из вакансии и всё равно выглядеть человеком, которому можно отдать ночь. После экрана запишите, где плавали: порт, секреты, откат — и закройте одну дыру до следующего слота, не все сразу.

Next step

Try this article's advice on your own resume

The review highlights the lines where recruiters lose interest and suggests what to write instead.

  • A score out of 100 across 7 sections
  • Ready-made rewrites for weak lines
  • How well you fit a specific vacancy
Review my resumePDF or DOCX · 1–2 minutes
Sample reviewFrontend · Middle
46

Was 46
Now 87 / 100

  • Summary3 → 9
  • Experience4 → 9
  • Skills5 → 9

On this page

  1. Как читать вакансию: не готовить не тот контур
  2. Linux и сети: сценарий, не man page
  3. CI/CD: поставка, не зелёная галочка
  4. Контейнеры и оркестрация по факту резюме
  5. Инцидент: главная история экрана
  6. Онкол, границы, «единственный человек»
  7. Наблюдение и «откуда вы узнали, что упало»
  8. Две недели подготовки
  9. Частые вопросы
  10. Что сделать сейчас

Categories

  • All articles
  • Job Search
  • Resume & CV
  • Cover Letters & Applications
  • Interviews
  • Salary & Offers
  • Job Reviews & Roundups
  • Remote Work
  • Career
  • Career Growth
  • Market Trends
  • Onboarding
  • Tips

Related articles

  • Как отвечать на вопрос о зарплатных ожиданиях

    57d ago

  • Тестовое задание при найме: как оценить объём, выполнить и представить результат

    57d ago

  • Как ответить на вопрос «Почему вы хотите работать у нас?»

    57d ago

  • Как рассказать о сильных сторонах на собеседовании

    57d ago

  • Как говорить о слабых сторонах на собеседовании

    57d ago

Looking for a job?

IT roles with remote and relocation options.

Browse jobs
AboutPublic OfferTerms of ServicePrivacy PolicySupport
AboutPublic OfferTerms of ServicePrivacy PolicySupport

By Region

  • Jobs in Europe
  • Jobs in USA
  • Jobs in Canada
  • Jobs in Russia

By Format

  • Remote Jobs
  • Relocation to USA
  • Hybrid Jobs
  • Office Jobs

By Experience Level

  • Junior Jobs
  • Middle Jobs
  • Senior Jobs