Infrastructure as Code, or IaC, is now an inalienable part of the majority of modern cloud-native projects. Previously, generation of scripts for configuration and using your environments as a moving target has been tiresome. Then came advanced tooling with even stronger assurance for a standardized, stable, and scalable setup.
Nevertheless, most teams are still at the ‘hello world’ stage of IaC, with little understanding of how to level up and manage, organize, and govern it as the work progresses. This article aims to discuss how to maximize the use of IaC — focusing on the organization of modules, versioning, and policy.