For a long time Terraform seemed like a mystical technology, so I avoided learning it. When I finally got around to putting my mind to it, it turned out that learning Terraform was a simpler and quicker process than I imagined.
How long does it take to learn Terraform? *Learning Terraform can be easy and could take as little as 1 week to master the basics, and as little as 3 months to really master if you are spending adequate time learning. *
But, of courseâas alwaysâthere are some additional factors which affect how long it can take to learn Terraform. Letâs take a look at what those factors areâŚ
A Timeline
If youâre after a rough timeline for how long it could take you to learn Terraform, the below table should give you a rough idea to set your expectations. The times given depend on the depth of knowledge that you are after.
| Beginner | Can use Terraform and itâs commands to create infrastructure. | 1 week |
| Intermediate | Understand Terraform well, can refactor and structure Terraform code. | 1-3 months |
| Advanced | Understand all the nuances and advanced features of Terraform, such as functions, modules, etc. | 3 months+ |
Of course these numbers are only a rough indication, and different factors can affect how long it takes to learn Terraform. Letâs now go through the different factors that will affect the time it takes you to learn Terraform.
If youâre new to infrastructure as code, I suggest checking out: Infrastructure As Code: An Ultimate Guide
Factors That Affect Time To Learn Terraform
The factors that affect how long it takes to learn Terraform are: your knowledge of the underlying cloud provider, your knowledge of command line tools, and how you plan to learn Terraform. Letâs break each of these factors downâŚ
1. Your Knowledge Of The Cloud Provider
The first major factor that will affect how quickly you can learn Terraform is how well you know the underlying resources that you create. Terraform is typically used in parallel with some cloud provider such as AWS, GCP, etc.
If you already understand the underlying resources that you are creating with Terraform that will make writing your configurations easier. But, that said; knowing the underlying provider isnât essential to learning Terraform.
In fact, I actually recommend learning Terraform before learning cloud, as it makes your learning experience easier. If youâre curious to find out why that is, check out: 5 Important Reasons To Learn Terraform Before Cloud Computing.
2. Your Knowledge Of CLIâs
The second factor that will affect how quickly you can learn Terraform is your familiarity with command line interfaces (CLIâs) since thatâs the main way that Terraform is distributed and executed.
In order to use Terraform locally youâll need to download and install their command-line tool. This isnât mandatory as Terraform can be installed remotely, but itâs likely that you want a local copy to help you experiment and learn.
If you already have prior knowledge of, and are comfortable using a CLI then learning Terraform will be an easier process for you. If not, you might want to factor in some time to read up about how command line interfaces work.
3. How You Plan To Learn
Lastly, the final factor that will affect how long it takes to learn Terraform is how you choose to learn. There are many different courses that exist which can help you structure your learning, Hashicorp even have an official certification course.
One mistake many people make when learning Terraform is spending time learning advanced features that arenât necessary to a beginner, such as modules, the inbuilt functions, and logic such as conditional resources, etc.
If you can stick to the basics at first, this will drastically speed up your learning of Terraform. Ideally, Iâd suggest getting as hands-on with Terraform as soon as possible, as thatâs the best way to learn Terraform in my experience.
If youâre a person that learns via books, I highly recommend the OâReilly book, Terraform Up & Running as good reading on the core concepts.
Get Started Learning Terraform
Generally speaking, Terraform is not a particularly hard technology to learn. And is a great compliment to many different roles, ranging from front end engineers to data scientists.
If you are still interested to start learning Terraform and youâre looking for a place to start, Iâd recommend reading the article: Learn The 6 Fundamentals Of Terraform â In Less Than 20 Minutes.
The post How Long Does It Take To Learn Terraform? And How To Speed Up Your Learning. appeared first on The Dev Coach.
Lou is the editor of The Cloud Native Software Engineering Newsletter a Newsletter dedicated to making Cloud Software Engineering more accessible and easy to understand. Every month youâll get a digest of the best content for Cloud Native Software Engineers right in your inbox.