Яких питань про 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.
Як проходять питання за сценаріями?
На співбесідах для старших позицій визначення замінюють ситуаціями. Типовий приклад: платформному інженеру на співбесіді на інфраструктурну посаду у фінтех-компанії кажуть, що хтось вручну змінив групу безпеки в хмарній консолі, наступний план показує неочікувану різницю, а команда непокоїться щодо застосування змін. Сильна відповідь називає цю ситуацію дрейфом, пояснює, що plan уже виявив його завдяки оновленню реального стану, визначає, чи слід зберегти або скасувати ручну зміну, а потім або оновлює конфігурацію відповідно до реальності, або запускає apply для відновлення задекларованого стану. Інтерв’юер оцінює рішення, а не команду.
Інші повторювані сценарії: збій apply посеред виконання та вигляд стану після цього; ресурси, створені до появи Terraform, і використання terraform import для передавання їх під його керування; команда з кількох інженерів і структура репозиторіїв, бекендів та CI, за якої плани запускаються для запитів на злиття, а apply виконується один раз; секрети у змінних і належне джерело цих секретів; оновлення провайдера, що змінює поведінку ресурсів. У кожному випадку назвіть обмеження, виберіть механізм і поясніть його ціну.
На ці питання легше добре відповідати, якщо ви вже проговорювали відповіді вголос. Режим пробної співбесіди пропонує сценарні питання з додатковими уточненнями, а інші добірки за посадами та інструментами зібрано в розділі питань для співбесід за посадою і темою.
Чи допоможе AI-асистент на співбесіді з Terraform?
Під час розмовних етапів — так, але варто чітко зазначити обмеження. Нативний застосунок SubcueAI для комп’ютерів із macOS і Windows захоплює системний звук і звук мікрофона та показує короткі підказки в локальному накладеному вікні. Тож коли інтерв’юер питає, від чого захищає блокування стану, механізм буде перед очима, поки ви його пояснюєте. Бічна панель розширення для браузера робить те саме для дзвінків у вкладці Chrome або Edge, захоплюючи лише звук вкладки із зустріччю. Жоден бот не приєднується до дзвінка, і нічого не вбудовується в сторінку зустрічі; порядок налаштування наведено на сторінці посібника.
Де він не допоможе: контрольоване оцінювання, запис екрана, корпоративний ноутбук або практичне завдання, під час якого ви пишете HCL під наглядом. Aaron Cao, засновник SubcueAI, описує мету продукту як підказку для пригадування вже відомого, а не його заміну, тому асистент спирається на ваше резюме й ваші власні формулювання. Чесні межі описано в добірці про виявлення.