You have decided to learn Terraform. Maybe you are a sysadmin moving into DevOps, a developer who wants to understand infrastructure, or an engineer preparing for the HashiCorp Terraform Associate certification. Whatever your starting point, you need a structured path — not a random collection of tutorials. This roadmap gives you a 4-month plan with weekly objectives, hands-on projects, a skills checklist, and links to every Terraform post on Goel Academy organized by topic.
31 posts tagged with "Terraform"
Infrastructure as Code with Terraform
View All TagsWhether you are preparing for your first DevOps role or interviewing for a senior platform engineering position, Terraform questions will come up. This post covers 50 questions organized by difficulty, each with a concise answer and code snippet where relevant. Use it as a study guide, a refresher, or a reference to evaluate candidates.
Terraform breaks. Not often, but when it does, the error messages can range from crystal clear to deeply cryptic. A state lock that will not release at 2 AM, a dependency cycle that appeared out of nowhere, a crash that leaves your state file in limbo — these are the moments that test your Terraform skills. This post is your troubleshooting playbook: the debug tools, the common errors, and the recovery procedures that get you back on track.
Your organization decided to standardize on Terraform. Great choice. But you have 200 CloudFormation stacks in AWS and 150 ARM template deployments in Azure that are running production workloads right now. You cannot delete them and start over. You need a migration strategy that moves infrastructure under Terraform management without downtime, without recreating resources, and with a rollback plan if things go sideways.
Bicep is Azure-native. Terraform is cloud-agnostic. If your organization lives entirely in Azure, Bicep is a strong choice. But the moment you manage resources across AWS, GCP, or even GitHub repositories, Terraform becomes the lingua franca that your platform team actually standardizes on. This post covers everything you need to run Terraform on Azure in production — authentication, core resources, remote state, modules, and CI/CD pipelines that plan on pull requests and apply on merge.
Managing 10 Terraform resources is straightforward. Managing 10,000 across 20 teams is a different game entirely. At scale, every decision compounds: where you store code, how you split state, who can approve applies, and how CI/CD pipelines run. Get these wrong and you end up with 45-minute plans, state files that lock out entire teams, and a single bad merge that takes down production networking. This post covers the architectural decisions that separate "Terraform works for my team" from "Terraform works for my organization."
