Robert Hoffmann

Stop configuring infrastructure, start coding it!

Tired of writing hundreds of lines of YAML? Learn how the AWS CDK lets you code complex infrastructure using your favorite programming language.

Stop configuring infrastructure, start coding it!
#1about 2 minutes

The evolution of infrastructure provisioning

Infrastructure management has evolved from manual playbooks and bash scripts to declarative Infrastructure as Code tools like CloudFormation and Terraform.

#2about 3 minutes

Why a simple web app needs 300 lines of YAML

Building a basic, highly available web application with CloudFormation can result in hundreds of lines of YAML due to underlying complexities like VPCs and security groups.

#3about 4 minutes

Introducing coding infrastructure with the AWS CDK

The AWS Cloud Development Kit (CDK) allows you to define cloud infrastructure using familiar programming languages like TypeScript, Python, and Java.

#4about 1 minute

The CDK ecosystem extends beyond just AWS

The CDK concept is not limited to AWS, with community projects like CDK for Kubernetes (CDKates) and CDK for Terraform (CDKTF) enabling a similar workflow.

#5about 4 minutes

How CDK transforms code into deployable templates

The CDK CLI compiles your application code into a standard declarative template, like CloudFormation YAML, which is then deployed by the native orchestrator.

#6about 2 minutes

Understanding the power of CDK constructs

CDK uses constructs, which are classes representing infrastructure, at different levels of abstraction to provide sane defaults and create reusable architectural patterns.

#7about 8 minutes

Rewriting 300 lines of YAML with CDK

A practical walkthrough demonstrates how to create a VPC, an auto-scaling group, and a load balancer using just a few lines of TypeScript with the AWS CDK.

#8about 5 minutes

How coding makes infrastructure intent clearer

Using code with expressive functions makes the purpose of your infrastructure easier to understand compared to reading hundreds of lines of declarative configuration.

#9about 4 minutes

Deciding when to code your infrastructure

While coding infrastructure offers benefits like better developer experience, declarative tools may be preferable if your team is already familiar with them or dislikes debugging.

#10about 4 minutes

Resources for learning and using CDK

Get started with CDK using the official online workshop, explore community resources like Construct Hub and CDK Day, and learn about related tools like CDK Pipelines.

#11about 3 minutes

Q&A on idempotency and infrastructure changes

CDK maintains idempotency and handles infrastructure diffs by generating a declarative template that is then processed by the underlying tool like CloudFormation or Terraform.

#12about 4 minutes

Q&A on testing, diagrams, and templates

The CDK ecosystem supports test-driven development (TDD) for infrastructure, can generate diagrams via community tools, and uses templates as a non-editable intermediate format.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.