// interview
Вопросы на собеседовании по DevOps
96 вопросов, которые реально задают джунам, мидлам и сеньорам, — по 8 темам, с эталонными ответами и разборами. Выбери тему или роль, прогоняй вопросы, отвечай сам — ИИ-арбитр оценит ответ под твой уровень.
Темы: выбери, что гоняют на твоём собесе
CI/CD
Надёжные pipeline, воспроизводимые сборки, безопасные релизы и управляемый откат.
Контейнеры
Образы, runtime-изоляция, ресурсы, хранение и безопасная сборка контейнеров.
Infrastructure as Code
Terraform state, планы изменений, модули, drift и безопасное применение инфраструктурного кода.
Kubernetes
Workloads, сеть, конфигурация, безопасность и диагностика Kubernetes в реальной эксплуатации.
Linux и shell
Процессы, systemd, права, ресурсы и командная диагностика Linux без опасной магии.
Сети и протоколы
DNS, TCP, TLS, HTTP и сетевой путь запроса — от симптома до проверенной причины.
Наблюдаемость и диагностика
Метрики, логи и трассировки: как замечать пользовательские проблемы, ставить SLO и быстро находить причину сбоя.
Надёжность и безопасность эксплуатации
Инциденты, восстановление, защита доступа и цепочки поставки — как сохранять сервис и данные при сбоях и атаках.
Как это выглядит: подборка под роль
В приложении подборка собирается под твой собес — пресетом, темой или свободным описанием, которое ИИ сматчит с банком. Вот срез пресетов:
Linux, сеть, контейнеры и базовый CI/CD — практический минимум для первой DevOps-позиции.
- junior После перезагрузки хоста сервис не поднялся, а
systemctlпоказываетfailed. Как будешь разбираться до первогоrestart?как ответить Сначала сохраняю исходное состояние: смотрю статус юнита, код и причину завершения, журнал текущей загрузки и фактическую конфигурацию. Затем проверяю пользователя, пути, права, переменные окружения и зависимости, которые упоминает ошибка. Перезапуск без диагностики может стереть важный симптом и запустить новый цикл падений.
- junior Пользователь может прочитать файл по открытому дескриптору, но не может пройти к нему по путиОткрыть подборку в приложении
/srv/app/config.yml. Как читаютсяrwxу файла и каталога и что ты проверишь? - junior Приложение пишетОткрыть подборку в приложении
Could not resolve host, но коллега уверяет, что DNS-запись есть. Как пройдёшь путь резолвинга и локализуешь сбой? - junior Нужно передавать логи или метрики по сети. Как объяснишь выбор между TCP и UDP без лозунга «TCP надёжный, UDP быстрый»?Открыть подборку в приложении
- junior Чем образ отличается от контейнера и куда попадают файлы, которые процесс создаёт после запуска?Открыть подборку в приложении
- junior ПочемуОткрыть подборку в приложении
COPY . .перед установкой зависимостей делает сборку медленной и как порядок инструкций влияет на build cache?
Оркестрация, инфраструктура как код, эксплуатация и надёжность распределённых систем — собес на самостоятельную инженерную роль.
- middle Новый Deployment не завершает rollout. В каком порядке ты будешь искать причину и когда решишь откатываться?
как ответить Сначала смотрю состояние Deployment и его новый ReplicaSet, затем конкретные Pod: scheduling, pull образа, состояние контейнеров, probes, события и текущие либо предыдущие логи. Так отделяю ошибку манифеста от нехватки ресурсов и падения приложения. Откат оправдан, если новая ревизия ухудшает сервис и предыдущая совместима с уже выполненными изменениями, но сам
progressDeadlineSecondsавтоматический rollback не запускает. - middle Нужно запускать очистку один раз после релиза и отчёт каждый час. Когда возьмёшь Job, когда CronJob и почему обе задачи должны быть идемпотентными?Открыть подборку в приложении
- middle Два инженера одновременно запускаютОткрыть подборку в приложении
terraform apply. Как remote backend и state locking защищают команду, а от чего они не защищают? - middle Кто-то вручную изменил firewall в облачной консоли, и следующий plan хочет вернуть старое значение. Как безопасно разобрать drift и выбрать источник нужного поведения?Открыть подборку в приложении
- middle Почему shell-formОткрыть подборку в приложении
ENTRYPOINTможет ломать graceful shutdown контейнера и какие обязанности появляются у процесса с PID 1? - middle Контейнер ограничили по CPU и памяти. Что произойдёт при превышении каждого ресурса и как отличить CPU throttling от cgroup OOM?Открыть подборку в приложении
Внутренняя платформа для команд разработки: Kubernetes, IaC, безопасная доставка, наблюдаемость и контейнерный рантайм.
- junior В проде нужен веб-сервис из трёх одинаковых реплик. Почему не стоит создавать три Pod вручную и что в этой задаче даёт Deployment?
как ответить Pod — отдельный экземпляр приложения, а не контроллер желаемого состояния. Deployment через ReplicaSet поддерживает нужное число взаимозаменяемых Pod, создаёт замену при их потере и управляет постепенным обновлением шаблона. Поэтому в проде обычно описывают Deployment, а не набор Pod вручную.
- junior Pod запущен, но Service не отправляет на него трафик. Что не так в манифестах и как ты проверишь гипотезу?Открыть подборку в приложении
- junior Чем декларативная инфраструктура в Terraform отличается от shell-скрипта, который по очереди создаёт те же ресурсы?Открыть подборку в приложении
- junior Что делаютОткрыть подборку в приложении
terraform init,planиapply? Почему в автоматизации лучше применять сохранённый plan, а не снова запускать обычныйapplyпосле review? - junior Из каких jobs и зависимостей ты соберёшь базовый CI/CD pipeline для сервиса и почему не стоит превращать его в одну длинную команду?Открыть подборку в приложении
- junior Чем artifact отличается от cache в CI? Что здесь должно пережить cache miss, а что обязано передаваться как результат сборки?Открыть подборку в приложении
Надёжность сервиса целиком: SLO, инциденты, сеть, Kubernetes и диагностика Linux под реальной нагрузкой.
- junior Тебя разбудил алерт: у API резко выросли ошибки. Что делаешь в первые минуты дежурства и чего точно не стоит делать?
как ответить Подтверждаю получение, проверяю реальное влияние и масштаб, назначаю тяжесть инцидента и открываю общий канал с журналом действий. Иду по runbook, проверяю недавние изменения и сначала выбираю обратимое смягчение — rollback, отключение флага или ограничение трафика. Не делаю неподтверждённые массовые перезапуски и не расследую в одиночку серьёзный сбой без эскалации.
- junior Объясни разницу между RTO и RPO. Как эти цели влияют на архитектуру и план восстановления?Открыть подборку в приложении
- junior Чем метрики, логи и трейсы дополняют друг друга? С какого сигнала начнёшь, если пользователи жалуются на медленный API?Открыть подборку в приложении
- junior Какие типы метрик Prometheus выберешь для общего числа запросов, текущей длины очереди и времени ответа? Почему нельзя строить график нагрузки прямо по значению счётчика?Открыть подборку в приложении
- junior Приложение пишетОткрыть подборку в приложении
Could not resolve host, но коллега уверяет, что DNS-запись есть. Как пройдёшь путь резолвинга и локализуешь сбой? - junior Нужно передавать логи или метрики по сети. Как объяснишь выбор между TCP и UDP без лозунга «TCP надёжный, UDP быстрый»?Открыть подборку в приложении
Собесы по другим направлениям
- Вопросы на собеседовании по Python — 221 вопросов, от основ языка и ООП до асинхронности, бэкенда и данных