Session: System Design on Easy Mode

You know those system design questions you get when interviewing for senior or staff eng roles? I love them. And while I won’t solve them all for you, I will teach you an easy way to solve a large class of them.

I’ll take you through a whirlwind of distributed systems patterns like event-driven architecture, choreography & orchestration, task queues, sagas, circuit breakers, and transactional outboxes, and I’ll explain how each is either trivial or unnecessary to implement when we use a new programming primitive called durable execution.

We’re used to working with volatile execution—the process running our code could die at any time, perhaps due to a crash or pod rotation—and it turns out that has a large impact on how we program and design systems. But what if we had functions that couldn’t fail and could run forever? It might sound like magic, but it’s not. It’s durable execution, and it’s a huge DX improvement in reliable backend programming.

Presenters: