Software engineering is often discussed in terms of frameworks and technologies. But the deeper questions are about design, testing, and architecture.

I’ve collected a number of talks that explore those ideas particularly well. Many of these talks focus on principles rather than tools, which is why they remain relevant years after they were recorded. This page is a curated list of those talks. Last update: 2026-03-17.

Engineering

Talks about the philosophy of software engineering, failure, and design thinking.

Refactoring & testing

Practical talks on evolving code safely and maintaining long-lived systems.

AI-assisted programming

Perspectives on how AI is changing the way software is written.

Architecture

Discussions on distributed systems, event sourcing, and system design.

Technologies

These talks focus less on the technologies themselves and more on the problems that led to their creation.