Kubernetes without YAML

Kubernetes ONLY understands JSON, yet we all write a ton of YAML. This is because it's meant to be easier for us to write ... but writing our manifests in YAML can be complex, error-prone, and damn right opaque as we adopt more custom resources.

In this presentation, we'll show you some better-suited tools that make writing Kubernetes resource definitions more efficient and effective with an unparalleled improvement to developer experience and happiness.

In this session, you will learn how to:

  1. Use programming languages to describe Kubernetes resources
  2. Share re-usable higher-order constructs to deploy Kubernetes resources within your team, org, or even publicly
  3. Make your Kubernetes resources testable and policy-driven

Kubernetes is hard enough, so let's learn how to be productive, reduce errors, and make deploying to Kubernetes, almost, enjoyable.

Let's set sail.

What's the focus of your work these days?

Helping Teams Build Platforms with Kubernetes

What's the motivation for your talk at QCon San Francisco 2023?

To improve the DX of working with Kubernetes

How would you describe your main persona and target audience for this session?

Senior Developers that own their own deployments

Is there anything specific that you'd like people to walk away with after watching your session?

I want people to walk away knowing how to improve the developer experience of working with the Kubernetes resource model


David Flanagan

Kubernetes Whisperer

Founder of the Rawkode Academy, open source contributor, and beloved husband and father to my wife, two amazing kids, and a plethora of animals.

David has been developing software professionally for nearly 20 years, starting with embedded systems written in C back in 2004, and has spent that entire time learning the paradigms of different programming languages, including C++, PHP, Java, and Haskell - though more recently preferring to work with Go, Rust, and Pony.

As a professional technology magpie, David was an early adopter of cloud, containers, and cloud-native technologies. During his time as the Director of Development for a rock and metal media organization called TeamRock (now LouderSound), David was responsible for the software, infrastructure, and website during its biggest test: the unfortunate death of Lemmy Kilmister. Fortunately, due to his desire to experiment and play with new technologies, David and his team had already migrated their slow to provision virtual-machine centric infrastructure to containerised workloads running on Amazon Web Services the year prior, 2014, not long after the public launch of Docker.

As much as David enjoys writing software, scaling infrastructure, and leading teams, he quickly realised that his passion was helping others learn and be successful. David started presenting at local user groups in 2016, slowly working up to conferences, before eventually moving into a full-time Developer Advocacy position at InfluxData - where he presented and taught workshops at 42 events in 2019.

Outside of technology, David enjoys reading science fiction, drinking craft beer and whisky, and very-very-very slowly learning to play the piano.

Read more
Find David Flanagan at:


Monday Oct 2 / 05:05PM PDT ( 50 minutes )


Pacific DEKJ


Kubernetes Infrastructure as Code GitOps CI/CD


From the same track

Session Infrastructure as Code

What if Infrastructure as Code Never Existed?

Monday Oct 2 / 01:35PM PDT

We rewind the clock and ask ourselves: what if Infrastructure as Code never existed? What different solutions might we have come up with to the problems we faced? We’ll leave you full of possibilities about the future.

Speaker image - Adam Jacob
Adam Jacob

CEO @System Initiative, CTO @Chef; Systems Administrator who loves building products

Session Frontend

Framework Defined Infrastructure (FdI) – an Evolution of Infrastructure as Code (IaC)

Monday Oct 2 / 11:45AM PDT

Discover the future of infrastructure management with Framework-defined Infrastructure (FdI), an evolution of the industry-standard Infrastructure as Code (IaC).

Speaker image - Malte Ubl
Malte Ubl

CTO @Vercel

Session Cloud Engineering

Pulumi Adventures: How Python Empowered My Infrastructure Beyond YAML

Monday Oct 2 / 10:35AM PDT

In recent times and as technology keeps evolving, the boundary between software engineering and DevOps continues to blur, presenting unique challenges and opportunities for software engineers.

Speaker image - Adora Nwodo
Adora Nwodo

Community Engineer

Session CI/CD


Monday Oct 2 / 03:55PM PDT

This session explores the evolution of infrastructure strategy, focusing on the shift from traditional YAML configurations to pipelines-as-code.

Speaker image - Conor Barber
Conor Barber

Senior Software Engineer, Infrastructure @Airbyte, Over a Decade of Experience in Data and Infrastructure Engineering, Previously @Apple


Unconference: Languages of Infra: Beyond YAML

Monday Oct 2 / 02:45PM PDT

What is an unconference? An unconference is a participant-driven meeting. Attendees come together, bringing their challenges and relying on the experience and know-how of their peers for solutions.