Episode 405: Yevgeniy Brikman on Infrastructure as Code Best Practices

Topics covered
Popular Clips
Episode Highlights
Open Source
Open source libraries play a crucial role in the development of Infrastructure as Code (IaC), offering reusable components that save time and effort. highlights the value of these libraries, comparing them to essential tools in any programming language, such as database clients or date manipulation libraries 1. discusses the importance of these libraries in the Terraform ecosystem, emphasizing their ability to streamline processes and reduce the need to start from scratch 2.
If I was going to start a task in any programming language, and I need to do things like talk to a database or manipulate date and time, I'm not going to code that all up from scratch.
---
These libraries not only enhance efficiency but also foster community support and collaboration, making them indispensable in modern software development.
Modular Design
The modular design of infrastructure components, such as HashiCorp Vault, offers flexibility and scalability. explains how modularity allows for the separation of components like load balancers, security group rules, and IAM permissions, enabling tailored deployments for different environments 3. This design approach not only simplifies the deployment process but also accommodates varying needs across production and pre-production settings.
Instead of spending two, three months learning how to run it, learning how to secure it, learning how to scale it, and all of these other pieces, you can basically grab this code off the shelf.
---
By leveraging modular components, developers can efficiently manage infrastructure, ensuring that systems like Vault are both robust and adaptable 4.
Code Reusability
Infrastructure code reusability is a key practice in modern software engineering, allowing for efficient and flexible deployments. describes how reusable components serve as building blocks, which can be parameterized and combined to suit different environments 5. This approach mirrors traditional software engineering practices, such as dependency injection, enhancing control and adaptability.
The infrastructure you need under the hood is going to look pretty darn similar. You're going to use it in a million different ways.
---
By creating reusable infrastructure code, companies can streamline their operations, reducing redundancy and fostering innovation across various platforms like AWS, Google Cloud, and Azure 6.
Related Episodes


SE-Radio Episode 268: Kief Morris on Infrastructure as Code
Answers 383 questions

Episode 210: Stefan Tilkov on Architecture and Micro Services
Answers 383 questions

Episode 482: Luke Hoban on Infrastructure as Code
Answers 383 questions

Episode 488: Chris Riccomini and Dmitriy Ryaboy on the Missing Readme
Answers 383 questions

SE Radio 591: Yechezkel Rabinovich on Kubernetes Observability
Answers 383 questions

Episode 506: Rob Hirschfeld on Bare Metal Infrastructure
Answers 383 questions

Episode 495: Vaughn Vernon on Strategic Monoliths and Microservices
Answers 383 questions

Episode 133: Continuous Integration with Chris Read
Answers 383 questions

Episode 216: Adrian Cockcroft on the Modern Cloud-based Platform
Answers 383 questions

Episode 93: Lessons Learned From Architecture Reviews with Rebecca Wirfs-Brock
Answers 383 questions

Episode 47: Interview Grady Booch
Answers 383 questions

Episode 500: Sergey Gorbunov on Blockchain Interoperability
Answers 383 questions

Episode 2: Dependencies
Answers 383 questions
Episode 115: Architecture Analysis
Answers 383 questions













