History of Software Engr & how it applies to Infrastructure
summary
Argument: decades of software engineering practices are applied to infrastructure because version control (1970s), deployment pipelines (1991), microservices (2005), containers (2013), Kubernetes (2014) and GitOps (2017) each solved scaling problems. Claim: Infrastructure as Code hits limits at scale; a control plane using a Kubernetes controller and CRDs tracks environment-level state, orders Terraform components, detects drift, reconciles, and surfaces a plan for approval. Demo: a custom format and control plane run in Kubernetes to orchestrate Terraform stacks and manage complex environment dependencies.
AI-written summary · about
chapters (20)
- 0:00Software engineering history
- 1:28Software engineering shaping infrastructure
- 2:51Version control in 1970s
- 3:33Deployment pipelines since 1991
- 4:17Microservices and containers
- 5:00Infrastructure as code
- 6:47Manual scripts to pipelines
- 8:14CI/CD for infrastructure
- 9:18Breaking monoliths
- 11:05Applying microservices to infrastructure as code
- 13:15IaC limitations at scale
- 15:21Beyond infrastructure as code
- 16:25Environment as code
- 17:53Microservice dependencies with containers
- 19:38IaC versus environment as code
- 20:41Provisioning with environment as code
- 23:29Kubernetes controller pattern
- 25:59GitOps and deployment as code
- 27:43GitOps workflow for EaC
- 28:17Summary and future
related talks
54mInfrastructure as code (anti) Patterns
46mImplementing Infrastructure as Code
42mInfrastructure as Code - Lessons learned from Dev to Ops
46mThe Rise and (Potential) Fall of Infrastructure as Code
46mThink of your infrastructure as code
28mFrom Infrastructure as Code to Environment as Code: Challenges scaling IaC
15mInfrastructure as a Code: Best Practices and Myths
33mScaling Infrastructure as Code
