Каких вопросов по Terraform ожидать на собеседовании?
Автор: Aaron Cao · Обновлено

Ожидайте вопросы четырёх групп: основной рабочий процесс (init, plan, apply, destroy), состояние (удалённые бэкенды, блокировки, конфиденциальные значения), структура кода (модули, переменные, рабочие пространства, провайдеры) и сценарии — например, дрейф, сбой apply на полпути или импорт ресурсов, созданных вручную. Интервьюеры оценивают обоснование каждого решения.
Какие основы Terraform проверяют в первую очередь?
Большинство собеседований по Terraform начинается с рабочего процесса и быстро переходит к тому, что происходит внутри. Будьте готовы без подсказок описать весь жизненный цикл: terraform init загружает провайдеры и настраивает бэкенд; terraform plan сравнивает желаемую конфигурацию с файлом состояния и реальными ресурсами, а затем выводит действия, которые будут выполнены; terraform apply выполняет этот план; terraform destroy удаляет всё, чем управляет конфигурация. Первый дополнительный вопрос почти всегда касается того, почему plan и apply разделены, и ответ заключается в проверке и безопасности: план можно изучить, утвердить и сохранить до внесения любых изменений.
- Провайдеры. Плагины, взаимодействующие с API, например AWS, Azure, Google Cloud или Kubernetes. Дополнительный вопрос: зачем фиксировать версии провайдеров?
- Ресурсы и источники данных. Ресурсы — это объекты, которые Terraform создаёт и которыми управляет; источники данных считывают существующие объекты, которыми он не управляет.
- Переменные, локальные и выходные значения. Входные, вычисляемые и экспортируемые значения. Дополнительный вопрос: как не допустить появления секрета в выводе плана?
- Граф зависимостей. Terraform определяет порядок операций по ссылкам между ресурсами;
depends_onприменяется для зависимостей, которые граф не может обнаружить.
Объясняйте, что каждая команда читает и записывает. Кандидаты, которые говорят, что plan ничего не изменяет, а apply изменяет и инфраструктуру, и состояние, уже показывают понимание модели.
К каким вопросам о состоянии и модулях готовиться?
Вы знаете, что состояние важно, и подозреваете, что интервьюер постарается определить границы вашего понимания. Это справедливо, поэтому в этом разделе разобраны вопросы, которые доходят до этих границ, и элементы полного ответа.
- Где хранится состояние и почему не локально? Удалённый бэкенд, например бакет объектного хранилища, Terraform Cloud или база данных, предоставляет единый источник истины. Следующий вопрос — о блокировке: одновременный запуск apply двумя людьми повреждает состояние, поэтому поддерживающие блокировки бэкенды отклоняют второй запуск.
- Что находится в файле состояния? Атрибуты ресурсов, включая значения, которые могут считаться конфиденциальными. Укажите, что состояние следует рассматривать как секретные данные, шифровать при хранении и защищать контролем доступа.
- Модули. Модуль — это многократно используемый набор ресурсов с собственными входными и выходными значениями. Интервьюеры спрашивают, как версионировать модули, как избежать модуля, пытающегося делать всё, и как корневой модуль объединяет дочерние.
- Рабочие пространства и отдельные конфигурации. Рабочие пространства позволяют одной конфигурации использовать несколько файлов состояния. Ошибочно считать их полноценным способом разделения сред; для производственной среды обычно нужны отдельные конфигурация, бэкенд и учётные данные, а не простое переключение рабочего пространства.
- Рефакторинг без удаления. После переименования ресурса Terraform попытается удалить и создать его заново. Нужно знать о блоках
movedи командеterraform state mv, а также понимать назначение каждого варианта.
Полезное правило для каждого ответа: назовите сбой, который предотвращает эта практика. Блокировка предотвращает повреждение при одновременных изменениях; удалённое состояние предотвращает расхождение данных на ноутбуках; фиксированные версии предотвращают неожиданное обновление во время обычного apply.
Как проходят вопросы по сценариям?
На собеседованиях для старших специалистов определения заменяют практическими ситуациями. Типичный пример: инженеру платформы, претендующему на инфраструктурную должность в финтех-компании, сообщают, что кто-то вручную изменил группу безопасности в облачной консоли, следующий план показывает неожиданные различия, и команда опасается запускать apply. Сильный ответ называет эту ситуацию дрейфом, объясняет, что plan уже обнаружил его при обновлении данных о реальном состоянии, определяет, следует ли сохранить или отменить ручное изменение, а затем либо приводит конфигурацию в соответствие с реальностью, либо запускает apply для восстановления объявленного состояния. Интервьюер оценивает решение, а не знание команды.
Другие распространённые сценарии: сбой apply на полпути и состояние после него; ресурсы, созданные до внедрения Terraform, и их перевод под управление с помощью terraform import; команда из нескольких инженеров и организация репозиториев, бэкендов и CI, при которой планы запускаются для запросов на слияние, а apply выполняется однократно; секреты в переменных и более подходящие источники для них; обновление провайдера, изменяющее поведение ресурсов. В каждом случае назовите ограничение, выберите механизм и укажите его цену.
На такие вопросы проще хорошо отвечать, если вы заранее проговорили ответы вслух. Режим пробного собеседования задаёт вопросы по сценариям и дополнительные вопросы, а другие подборки по должностям и инструментам собраны в разделе вопросов для собеседований по должностям и темам.
Может ли ИИ-помощник помочь на собеседовании по Terraform?
Да, в разговорной части, но с ограничениями, о которых стоит сказать прямо. Нативное настольное приложение SubcueAI для macOS и Windows записывает системный звук и ваш микрофон и показывает краткие подсказки в локальном оверлее. Поэтому, когда интервьюер спрашивает, от чего защищает блокировка состояния, нужный механизм будет перед глазами, пока вы его объясняете. Боковая панель расширения для браузера делает то же самое во время звонков во вкладках Chrome или Edge, записывая звук только со вкладки встречи. К звонку не подключается бот, и на страницу встречи ничего не внедряется; порядок настройки приведён на странице руководства.
Когда это не поможет: контролируемое тестирование, запись экрана, корпоративный ноутбук или практическое задание, при котором вы пишете HCL под наблюдением. Aaron Cao, основатель SubcueAI, описывает цель продукта как подсказку для припоминания уже известных вам вещей, а не их замену, поэтому помощник опирается на ваше резюме и привычные вам формулировки. Чёткие границы описаны в разделе об обнаруживаемости.
Частые вопросы
Чем terraform plan отличается от terraform apply?
Почему важно удалённое состояние с блокировкой?
Подходят ли рабочие пространства Terraform для разделения сред?
Как устранять дрейф в Terraform?
Может ли SubcueAI помочь во время контролируемого тестирования по Terraform?
Похожие вопросы
- Каких вопросов о Databricks ожидать на собеседовании?
- Каких вопросов по .NET ждать на собеседовании?
- Каких вопросов ожидать на собеседовании инженера по качеству?
- Каких вопросов ожидать на квант-интервью?
- Каких вопросов по Snowflake ожидать на собеседовании?
- Каких вопросов ожидать на собеседовании учителя?