Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hidden Complexity in Infrastructure as Code Mig...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

Hidden Complexity in Infrastructure as Code Migrations

Infrastructure as Code (IaC) has brought software development practices into the world of operations, but writing code is merely the tip of the iceberg. Over the last few years, a plethora of tools, frameworks, and languages have emerged, and one of the most underestimated challenges today lies at the intersection of two decisions: how we model infrastructure in code, and how we migrate existing production environments without impacting customers.

This talk shares lessons learned from rewriting multiple large-scale, AWS-based production infrastructures, moving from CloudFormation and CDK to Pulumi. We will explore the full lifecycle of an IaC cutover, starting with mapping existing resources to understand what is actually running in production and to uncover hidden dependencies, using tools such as CloudQuery and AWS Config. From there, we will discuss the challenges of translating heterogeneous legacy setups, including CloudFormation templates, manual configurations, Kubernetes manifests, and Helm charts, into a consistent and maintainable codebase.

Along the way, we will examine the often-hidden costs of IaC design choices: should we introduce abstractions to reduce duplication? Is code reuse valuable for infrastructure? When does the expressive power of general-purpose languages pay off, and when does it become a liability?

Attendees will leave with a concrete toolkit and a repeatable approach to plan and execute IaC migrations, making informed trade-offs between simplicity, expressiveness, and operational safety.

Avatar for Matteo Di Pirro

Matteo Di Pirro

March 23, 2026
Tweet

More Decks by Matteo Di Pirro

Other Decks in Programming

Transcript

  1. • Senior Software Engineer @ Kynetics Inc • Software developer

    • DevOps Engineer ◦ Been working with AWS for ~5 years
  2. The enabling idea of infrastructure as code is that the

    systems and devices which are used to run software can be treated as if they, themselves, are software. Kief Morris
  3. What if we want to migrate to a new cloud

    provider or IaC platform?
  4. Infra code !== Application code • It’s ok to repeat

    yourself • Behaviour VS Configuration
  5. Document and plan everything!! • Workflows • Involve teammates /

    stakeholders • Don’t underestimate the struggle
  6. Matteo Di Pirro [email protected] VCard When things are simple, fewer

    mistakes are made. The most expensive part of building is the mistakes. Ken Follett Q&A