Вопросы на собеседовании девопса
Господа, какие вопросы можно ожидать на позицию Devops-инженера? Как проходит стандартный день на работе? В чем заключается ежедневная рутина, если все автоматизированно и работает как часы.
Решил круто изменить свою деятельность, имея небольшой бэкграунд в виде умения пользоваться линуксом на уровне админа и пайтона. Посмотрел видео уроки и немного разобрался с Jenkins, Ansible, Git, PostgreSQL, Prometheus и Докером, k8s ещё не усвоил (он кажется чем-то крайне сложным).
Проблема в том, что настоящий скилл приходит только после решения реальных задач, но где их взять, если ты ещё не устроился? Панически боюсь быть уволенный за проф. непрегодность.
Нашёл на просторах интернета неплохую подборку вопросов, буду рад если дополните:
Что такое Load Average, SWAP, inode?
— Опишите модель OSI и все ее уровни?
— Чем отличается TCP от UDP, как устанавливается соединение TCP?
— Когда нужно использовать SWAP, а когда нет?
— Чем отличается git pull от git fetch?
— Чем отличается транзакция от запроса, в контексте БД?
— Как починить chmod -x /bin/chmod?
— Что такое DevOps, Agile?
— С какими методологиями разработки ПО работал? Что знаешь о Scrum, Kanban и т.д?
— Чем виртуалки отличаются от контейнеров?
— Клиенты жалуются на то, что веб-сервис стал медленно работать, как бы ты последовательно докапывался до проблемы? Как обнаружить bottleneck?
— Чем отличаются реляционные БД от нереляционных и key-value? С какими из них работал, как бы ты организовывал разгрузку баз, репликации, миграции, бекапы?
— Что такое балансировщик? Какие типы балансировки при деплое знаешь? Что такое blue-green deployment, канареечные релизы?
— Как бы ты организовал поднятие инфраструктуры в облаке, в случае если отвалилась целая зона или регион?
— Как налету мигрировать работающую базу из одного региона в другую?
— Как бы ты строил ту или иную архитектуру проекта?
— Работал ли с облаками, AWS, GCP, Azure, OpenStack?
— Что представляет собой докер-контейнер? Из каких двух базовых вещей состоят контейнеры (имеется ввиду namespaces и cgroups)?
— Какие инструменты оркестрации контейнеров использовал? Для чего нужен Kubernetes, Nomad, Swarm, Compose?
— Есть ли опыт работы со стеком ELK, со стеком ПО от Hashicorp (Vault, Consul, Nomad, Terraform и т.д)?
— С какими системами мониторинга работал? Есть опыт работы с Prometheus?
— С какими CI-системами работал? В чем отличия Jenkins от TeamCity и других аналогичных систем?
— Что такое Continuous Integration/Delivery/Deployment и чем они друг от друга отличаются?
— Есть ли опыт внедрения CI/CD в инфраструктуру java-приложений (ant/maven/gradle)?
— С какими системами управления конфигурациями работал (Ansible/Puppet/Chef и т.д)? Почему именно с ними, в чем между ними разница?
— Как в access-логе Nginx посмотреть самые активные IP-адреса за последние сутки с помощью BASH?
— Как отсортировать массив в Python? Написать код в реальном времени.
Понимаю, что в каждой компании могут использоваться свои инструменты и технологии, все не выучишь. Решил выбрать наиболее популярные.