Middle+/Senior в Центре Робототехники: инфраструктура для робототехнических систем, CI/CD, Kubernetes, мониторинг и отказоустойчивость
Фишка: Вакансия в Центре Робототехники — инфраструктура для уникальных систем (манипуляторы, мобильные роботы, роботы-собаки). Ожидают понимание специфики embedded/robotics-окружения: CI для прошивок и ПО, стенды тестирования, мониторинг edge-устройств и промышленных интеграций.
| Этап | Длительность | Что проверяют |
|---|---|---|
| HR-скрининг | 30–45 мин | Мотивация, опыт, соответствие вакансии, зарплатные ожидания, готовность к офису (м. Автозаводская) |
| Техническое интервью | 60–90 мин | Linux, Docker/K8s, CI/CD, IaC, сети, мониторинг; разбор реальных кейсов из опыта и troubleshooting |
| Системный дизайн / архитектура | 60 мин | Проектирование production-инфраструктуры, HA, масштабирование, DR — особенно для senior |
| Встреча с командой / руководителем | 30–60 мин | Культурный fit, работа с командами разработки робототехники, soft skills, вопросы кандидата |
Обязательный минимум
Плюсом будет
Что такое DevOps
Культура + практики: автоматизация, CI/CD, коллаборация dev/ops, быстрые и надёжные релизы. Не должность, а подход.
Расскажи о себе
2–3 мин: роль → ключевые проекты (инфра, CI/CD, инциденты) → почему Сбер/робототехника. Без хронологии всего резюме.
Расскажи о своём опыте
Структура: масштаб систем → ваш вклад → технологии → измеримый результат (uptime, время деплоя, сокращение инцидентов).
Почему решил стать DevOps-инженером
Связь разработки и эксплуатации, автоматизация рутины, влияние на надёжность продукта.
Как оцениваешь свой грейд
Честно: Middle+ = самостоятельная работа с K8s/IaC/CI/CD; Senior = архитектурные решения, менторство, on-call, DR.
Фишка: В Сбере часто спрашивают «Расскажи о себе» (54% по базе) — подготовьте короткий питч под инфраструктурную роль.
Совет: Связывайте ответы с обязанностями вакансии: мониторинг, отказоустойчивость, S3/БД, GitLab/Nexus.
Что такое Load Average в Linux
Средняя длина очереди процессов (running + waiting) за 1/5/15 мин. LA > числа CPU — перегрузка или I/O wait.
Что такое inode
Метаданные файла (права, размер, указатели на блоки). Лимит inode может исчерпаться при маленьких файлах.
В чём разница между потоком и процессом
Процесс — отдельное адресное пространство; потоки — общая память внутри процесса. fork()/clone() для создания.
Что такое виртуальная память и зачем она нужна
Абстракция: каждый процесс видит своё адресное пространство. MMU + page tables, swap при нехватке RAM.
Когда используют SWAP в Linux
Расширение RAM на диске. Минус — latency. На prod-серверах часто отключают или минимизируют.
Что такое hardlink в Linux
Дополнительное имя для того же inode. Не работает для директорий и между ФС.
Как найти информацию о процессе в Linux
ps, top/htop, /proc/<pid>/, lsof, strace, pmap.
Какие системные вызовы Linux используются для создания процесса
fork() → копия; exec() → замена образа; wait() → ожидание завершения.
Твои действия, если приложение потребляет слишком много ОЗУ
top/ps → OOM killer? → heap dump → limits (cgroups/K8s) → утечка в коде → масштабирование.
Как обезопасить ОС Linux
Минимальные права, SSH-ключи, firewall (iptables/nftables), SELinux/AppArmor, обновления, audit, fail2ban.
Как изолировать процессы друг от друга на одной машине
Namespaces, cgroups, контейнеры (Docker), VM. Сетевые namespace для изоляции трафика.
В чём может быть причина не создания log-файлов, если на диске есть место
Исчерпаны inode, quota, права на директорию, read-only FS, SELinux context, ulimit nofile.
Ловушка: Load Average ≠ CPU usage. Высокий LA при низком CPU часто означает I/O bottleneck.
Совет: Готовьте 1–2 реальных кейса troubleshooting: высокий LA, OOM, диск заполнен.
Расскажи про свой опыт работы с Docker
Образы, multi-stage builds, registry, compose для локалки, оптимизация слоёв, security scanning.
В чём разница между контейнеризацией и виртуализацией
VM — полная ОС + hypervisor; контейнер — общее ядро, изоляция через namespaces/cgroups. Контейнер легче и быстрее.
В чём разница между CMD и ENTRYPOINT в Docker
ENTRYPOINT — фиксированная точка входа; CMD — аргументы по умолчанию. ENTRYPOINT + CMD = exec + args.
В чём разница между COPY и ADD в Docker
COPY — простое копирование. ADD — ещё URL и auto-extract tar. Best practice: предпочитать COPY.
Что такое слои в Docker
Каждая инструкция Dockerfile = слой (overlay2). Кэширование ускоряет сборку. Общие слои экономят место.
Что такое OverlayFS в Docker
Union FS: lower (read-only слои образа) + upper (writable) + merged view. Copy-on-write.
Ловушка: CMD переопределяется аргументами docker run; ENTRYPOINT — нет (без --entrypoint).
Что такое Kubernetes
Оркестратор контейнеров: scheduling, scaling, self-healing, service discovery, declarative config.
Какие знаешь основные сущности в Kubernetes
Pod, Deployment, Service, Ingress, ConfigMap, Secret, Namespace, StatefulSet, DaemonSet, PV/PVC.
Из чего состоит Kubernetes
Control plane: API server, etcd, scheduler, controller manager. Worker: kubelet, kube-proxy, container runtime.
Что такое etcd в Kubernetes
Distributed KV-store — единственный source of truth для состояния кластера. Backup etcd = backup кластера.
Что произойдёт, если будет превышение по CPU в Kubernetes
При requests — гарантированная доля; при limits — throttling (CFS quota). Превышение limits → CPU throttle, не kill.
Есть ли опыт работы с Helm
Package manager для K8s: charts, values.yaml, templating, helm upgrade --install, rollback.
Фишка: Для робототехники: подумайте о деплое на edge-ноды, DaemonSet для агентов, resource limits для embedded-сервисов.
Что такое GitFlow
Ветки: main (prod), develop, feature/*, release/*, hotfix/*. Подходит для релизных циклов; в CI/CD часто trunk-based.
Работал ли с Git
Branching, merge/rebase, MR/PR, hooks, protected branches, semantic versioning тегов.
Как собирается Java-проект в пайплайне
Maven/Gradle → compile → test → package (jar/war) → publish в Nexus → deploy. Кэш зависимостей, multi-module.
Был ли опыт написания Bash-скриптов в Jenkins
Pipeline as code (Jenkinsfile), stages, credentials, parallel stages. В Сбере чаще GitLab CI.
Используете ли Maven или Gradle
Maven — XML, convention over config. Gradle — Groovy/Kotlin DSL, гибче. Оба: dependency management, lifecycle.
Фишка: Вакансия явно требует GitLab и Nexus — готовьте примеры пайплайна: build → test → push image → deploy.
Совет: Расскажите про секреты в CI: vault, masked variables, разделение dev/prod credentials.
Есть ли опыт работы с Terraform
Providers, state (remote backend), plan/apply, modules, workspaces, drift detection.
В чём разница между Roles и Playbooks в Ansible
Playbook — сценарий (hosts + tasks). Role — переиспользуемый модуль (tasks, handlers, templates, vars).
Что такое Ansible Role
Структура: tasks/, handlers/, templates/, files/, vars/, defaults/. Включается через roles: в playbook.
Что нужно Ansible для работы
Inventory (hosts), SSH-доступ, Python на target, playbook/role. Ad-hoc: ansible -m ping.
Что такое идемпотентность
Повторное применение даёт тот же результат. Ключевое свойство Ansible/Terraform и CI/CD.
Совет: Terraform — provision (создание ресурсов), Ansible — configuration (настройка). Часто используют вместе.
Что такое сетевая модель OSI
7 уровней: Physical, Data Link, Network (IP), Transport (TCP/UDP), Session, Presentation, Application (HTTP).
Что за протокол ICMP, какого уровня
Internet Control Message Protocol, L3 (Network). ping, traceroute, unreachable, TTL exceeded.
Что такое HTTP-запрос
Метод (GET/POST/...), URL, headers, body. Ответ: status code, headers, body. Stateless.
В чём отличие маршрутизации от коммутации и на каких устройствах они происходят
Маршрутизация (L3) — router, таблицы маршрутов. Коммутация (L2) — switch, MAC-таблицы.
Какой опыт работы с сетевыми протоколами и стеком
TCP 3-way handshake, DNS resolution, TLS, NAT, firewall rules, troubleshooting с tcpdump/ss.
Как проверить доступность порта на удалённом сервере
nc -zv host port, telnet, nmap, curl для HTTP, ss -tlnp локально.
Как ограничить доступ по IP
iptables/nftables, security groups в облаке, nginx allow/deny, K8s NetworkPolicy.
Как ограничить взаимодействие между сервисами через firewall и SELinux
Firewall: zone-based rules, только нужные порты. SELinux: policies, booleans, custom modules, audit2allow.
Какой опыт с tcpdump
Захват пакетов: tcpdump -i eth0 host X port Y. Фильтры BPF. Анализ в Wireshark.
Ловушка: DNS-проблема может выглядеть как недоступность сервиса — всегда проверяйте резолвинг.
Какие системы мониторинга вы использовали и их плюсы и минусы
Prometheus+Grafana (pull, PromQL), Zabbix (agent-based), ELK (логи). Плюсы/минусы: масштаб, алерты, стоимость.
Какие у тебя есть вопросы
Про on-call, стек мониторинга, размер команды, зрелость CI/CD, roadmap робототехники.
Фишка: Вакансия: «выявление узких мест» и «обеспечение отказоустойчивости» — готовьте кейсы с метриками (latency, error rate, saturation).
Совет: Золотые сигналы SRE: latency, traffic, errors, saturation. SLI/SLO/SLA — базовая терминология.
Расскажи про опыт работы с PostgreSQL
Администрирование: backup/restore (pg_dump, WAL), репликация, connection pooling (PgBouncer), мониторинг, миграции.
Фишка: Вакансия включает администрирование S3 и БД — расскажите про lifecycle policies, versioning, backup стратегии.
Какие знаешь языки программирования
Python/Golang — основные для вакансии. Примеры: скрипты автоматизации, операторы K8s, утилиты для CI.
Какой опыт работы с Python
Скрипты, библиотеки (boto3, kubernetes client, requests), тесты, linting, packaging.
Изучал ли какие-нибудь языки программирования
Покажите глубину в Python/Go + знакомство с Bash для пайплайнов.
Совет: Для робототехники полезно упомянуть опыт с cross-compilation, артефактами embedded-сборок в CI.
Проектирование production-инфраструктуры (аналог Dropbox)
Компания разрабатывает файловый сервис из 10 микросервисов (Dockerfile в каждом), docker-compose для локалки (PostgreSQL, S3-compatible storage, message queue). Требования: SLA 99.99%, high/peak load tolerance, low latency (multi-region), security, cost optimization, DR при отказе DC/региона. Спроектируйте: 1) Production-инфраструктуру, 2) Staging (экономичный, близкий к prod), 3) Подход к управлению инфраструктурой (IaC), 4) Observability, 5) Оптимизация производительности и latency для файлов.
Production: K8s (multi-AZ), managed PostgreSQL (primary+replica, cross-region read replicas), S3 с replication, CDN для файлов, message broker cluster (Kafka/RabbitMQ), API Gateway + Ingress, autoscaling (HPA/VPA), multi-region active-active или active-passive с DNS failover. Staging: один кластер, меньше реплик, shared DB (не HA), mock external services, ephemeral environments per MR. IaC: Terraform для облака, Ansible/Helm для конфигурации, GitOps (ArgoCD). Observability: Prometheus+Grafana, centralized logging (ELK/Loki), distributed tracing (Jaeger), SLO dashboards, alerting on error budget. Performance: multipart upload, edge caching, connection pooling, async processing через queue, load testing (k6/Locust), right-sizing по метрикам.
Сложность: O(1) для дизайн-задачи — оценивается полнота и trade-offs
Каркас ответа
3 дня
7 дней
14 дней
| Блок | Готов, если... |
|---|---|
| Linux | можешь объяснить LA, inode, диагностировать high memory и отсутствие log-файлов |
| Docker/K8s | можешь объяснить CMD vs ENTRYPOINT, сущности K8s, что происходит при CPU limits |
| CI/CD | можешь описать пайплайн GitLab → Nexus → deploy и сборку Java-проекта |
| IaC | можешь объяснить Terraform state, Ansible roles и идемпотентность |
| Сети | можешь объяснить OSI, маршрутизацию vs коммутацию, диагностику портов |
| System Design | можешь за 30 мин спроектировать HA-инфраструктуру с observability и DR |
| Behavioral | есть 3 кейса по STAR: инцидент, автоматизация, работа с командой |
В день собеседования