An agent produces code at speed. Producing a codebase you can still read, review, modify and test in six months is a different and more interesting problem.
Ever more extensive prompts and specification frameworks don't solve this. But cutting up a system into meaningful modules that support reasoning, changing, verifying and securing the whole is the core of software architecture and has been around for a long time already.
This work has only become more valuable with the advent of agentic software engineering: agents work more efficiently in well structured code environments, and humans profit in similar ways from "divide and conquer" that they always have. Creating, maintaining and iterating over a well-structured codebase has become both more relevant and more attainable now than ever before in a virtuous circle.
This talk is about how we shouldn't write off software design just yet, and how a bunch of well-placed constraints might just set you free.