Infrastructure as Code - Lessons learned from Dev to Ops | Emma Button

Technical excellence in infrastructure as code requires a culture of shared ownership, skilled engineers, and best practices for writing, reviewing, and testing.

Key takeaways
  • Technical excellence in infrastructure as code requires continuous attention and a culture of shared ownership.
  • Infrastructure code should be written in a way that is testable, and automated testing should be used to ensure quality.
  • Infrastructure engineers should be skilled in multiple areas, including automation, security, and configuration management.
  • The use of infrastructure as code tools such as Terraform, CloudFormation, and Ansible can help to reduce errors and improve consistency.
  • Code review and peer review are important for ensuring the quality of infrastructure code.
  • Infrastructure code should be written in a modular and reusable way to improve maintainability.
  • The use of infrastructure as code can help to improve the speed and efficiency of cloud computing.
  • Infrastructure engineers should be able to communicate effectively with other team members and stakeholders.
  • Infrastructure as code should be used in conjunction with agile methodologies to improve the speed and flexibility of cloud computing.
  • The use of infrastructure as code can help to improve the security of cloud computing by reducing the risk of human error.
  • Infrastructure engineers should be skilled in scripting languages such as Python and JavaScript.
  • The use of infrastructure as code can help to improve the scalability of cloud computing.
  • Infrastructure engineers should be able to use tools such as InSpec and Terratest to test and validate infrastructure code.
  • Infrastructure as code should be used in conjunction with continuous integration and continuous deployment (CI/CD) pipelines to improve the speed and reliability of cloud computing.
  • Infrastructure engineers should be skilled in containerization and microservices architecture.
  • The use of infrastructure as code can help to improve the portability of cloud computing.
  • Infrastructure engineers should be able to use tools such as Docker and Kubernetes to containerize and orchestrate infrastructure code.
  • Infrastructure as code should be used in conjunction with DevOps principles to improve the speed and efficiency of cloud computing.