Terraform: Infrastructure as Code
Declarative infrastructure from init to production -- state management, variables and modules, multi-environment workspaces, and the pitfalls that show up once a team depends on it.
Practice interview questions on this topic →Terraform Fundamentals
beginnerWhat Infrastructure as Code actually solves compared to manually clicking through a cloud console, how providers and resources fit together, and the init/plan/apply/destroy workflow you'll run constantly.
Terraform State Management
intermediateProWhy Terraform needs a state file at all, the classic S3-plus-DynamoDB remote backend pattern, the danger of manual drift, and how state locking prevents two people from corrupting the same infrastructure at once.
Terraform Variables and Outputs
intermediateProInput variables with validation, outputs for exposing values, locals for keeping configuration DRY, and a worked example parameterizing a reusable piece of infrastructure.
Terraform Modules
intermediateProPackaging resources into a reusable module, composing modules together, choosing between the public registry and writing your own, and a worked example building a simple VPC module.
Terraform Workspaces and Environments
intermediateProThree different strategies for managing dev/staging/prod with Terraform — workspaces, separate state files, and separate directories — and the real tradeoffs between them.
Terraform in Production
advancedProReviewing plans as a PR check in CI/CD, detecting drift proactively, the most common production pitfalls, and where Terraform's job ends and a configuration-management tool like Ansible picks up.