$ /courses/terraform/interview
Не Top-30 со списком ответов. Каждый вопрос - карточка: что хотят услышать, типичные подводные камни, follow-up и ссылки в базу знаний для глубины. Сейчас 47 вопросов в 8 кластерах.
Каждый кластер - независимая тема. Открывай тот, что слабее всего, или иди по порядку.
/core-hcl
6 вопросовHCL-семантика и типы: type-coercion, splat, dynamic-блок, conditional, for, references и резолвер графа. Что значит «known after apply» и почему оно бесит. Базовые вопросы junior'а и пара ловушек для middle'а.
/state
7 вопросовСамая частая тема на Terraform-собесе. State - то, чем Terraform отличается от kubectl apply. Что в нём лежит, зачем lock, как ловить drift, когда допустима state surgery. Вопросы из реальных DevOps-собесов: AWS-команды, банки, средние российские инфра-команды.
/modules
6 вопросовГраница ответственности модуля, источники (local, registry, git, s3), pinning версий и semver, composition vs flat root, типовые антипаттерны. Что хочет услышать lead - где провести границу и зачем.
/workflow-cicd
6 вопросовЧто происходит между plan и apply. Зачем fmt и validate в pipeline. Как ходить в AWS из GitHub Actions без долгоживущих ключей. Drift detection, require-approval, разделение state по env. Вопросы DevOps/SRE-ролей.
/providers-resources
6 вопросовProvider-блок, alias, multi-region. Resource lifecycle (create_before_destroy, prevent_destroy, ignore_changes), count vs for_each, data vs resource, depends_on - когда честно нужен. Грамматика повседневной работы с Terraform.
/testing-policy
5 вопросовЧто тестировать в Terraform и чем. Встроенный `terraform test`, terratest, tflint, checkov, trivy, OPA/conftest, terraform-compliance. Пирамида тестов для IaC. Где какой инструмент уместен, а где избыточен.
/refactoring-large
5 вопросовЧто делать когда монолитный root вырос до 3000 ресурсов и plan занимает семь минут. moved/removed-блоки, разбиение state на workspace'ы и отдельные root'ы, zero-downtime миграция. Senior-вопросы из реальных миграций в банках и крупных продуктовых командах.
/troubleshooting-debug
6 вопросовЧто делать когда `plan` падает с невнятной ошибкой. Чтение TF_LOG, распространённые ошибки (cycle, inconsistent dependency lock, provider auth). terraform console для отладки выражений, чтение plan diff, terraform graph - когда он реально нужен.