The many tools around Terraform
Terraform is a small tool. While reading this book, you've hopefully noted how many different other tools were introduced all the time. They are as follows:
Chef, Ansible, and Puppet: For configuration management
Inspec and TestKitchen: For testing
Terragrunt and Terraforming: As a helper for Terraform operations
Git, git-crypt, GitLab, and GitLab CI: For teamwork
S3 and Consul: For storage
Bash and Ruby: For scripting
You have to learn all of these (or their analogues) to make Terraform production ready. The focus of all HashiCorp tools is to solve one problem and solve it well, and leave everything else to other software out there.
It can be beneficial quite often - you are not forced to change your toolset, you can pretty much naturally integrate Terraform into your workflows without any big sacrifices. Introducing Terraform to an existing environment is easy. Pick one particular service you want to manage with it and write first template. Decide on how you want...