Terraform Associate

Somewhere during my move into platform engineering, I realized I was already covering most of what the Terraform Associate exam expects. So I took it. Not for the badge, but to confirm I actually understood the fundamentals instead of just getting by.


Why bother

The exam gave me structure. Instead of learning Terraform only when I was stuck, the objectives forced me to go through things properly: the workflow, HCL, state management, modules, and the parts that teams usually mess up in production.


What it covers

The objectives map pretty well to real day-to-day work:

  • IaC basics: declarative config, idempotency, drift, reproducibility.
  • The core loop: init, plan, apply, destroy, and what actually happens behind each command.
  • HCL: variables, outputs, locals, data sources, expressions.
  • State: local vs remote, locking, backends. This is where most real-world pain comes from.
  • Modules: when to use them, when to write your own, what good inputs/outputs look like.
  • Terraform Cloud: even if you don't use it, it's a useful mental model for how Terraform fits into team workflows.

If I had to pick one area worth extra attention: state. Get that wrong and everything else falls apart.


Study approach

Nothing fancy. I used the official objectives as a checklist and backed everything with hands-on practice. Terraform clicks when you've run enough plan/apply cycles to feel the workflow, including the annoying parts: replacements, imports, drift, and "why is this resource changing?"

Practice exams helped spot gaps. There's a difference between recognizing a concept and explaining it under time pressure.


Not the hardest cert, but a solid one if you treat it as a learning framework instead of a memorization exercise.