В первой части публичного собеседования Андрей отвечает на теоретические вопросы по DevOps и SRE. Он описывает DevOps как подход к ускорению и повышению качества доставки изменений через согласование работы команд, затем разбирает CI/CD, Infrastructure as Code, контроль версий, Terraform и инструменты конфигурационного управления. В конце обсуждаются назначение SRE, доступность сервиса, SLI/SLO/SLA и error budget.
DevOps в ответе кандидата представлен как работа со всей цепочкой поставки продукта: поиск узких мест и устранение проблем на стыках между разработкой, эксплуатацией и другими командами.
CI-пайплайн описан так: изменение попадает в систему контроля версий, проходит проверки и тесты, собирается в артефакт и помещается в хранилище; Continuous Deployment означает автоматический выход артефакта в production.
Конфигурации, исходный код и инфраструктурные изменения следует хранить в текстовом виде под контролем версий, чтобы изменения были воспроизводимы и не зависели от конкретного сотрудника.
Terraform назван инструментом описания и создания инфраструктуры, в том числе виртуальных машин, сетей и ресурсов у разных облачных провайдеров; для настройки ОС и сервисов упомянуты Ansible, Chef, Puppet и SaltStack.
Для удалённых и нестабильно связанных площадок кандидат считает уместной pull-модель обновлений, а для обычных случаев — push-модель с немедленным применением изменений и отчётом.
По объяснению собеседников, SRE фокусируется прежде всего на предотвращении инцидентов, а после инцидента — на выводах и профилактике; error budget, рассчитанный относительно SLO, может ограничивать релизы после исчерпания допустимой недоступности.