How To Teach Your Agents About Architecture
by Neal Ford
emphemerality: the concept of things being transitory, fleeting, or existing only for a short time.
Suddenly, one of the most important considerations for code is emphemerality–how long will this code live? If it’s a quick vibe-coded solution then no one cares about good architecture. However…if what you’re building is the foundation for future building, you need ways to ensure that agents (either humans or machines) build proper software.
How To Teach Your Agents About Architecture represents several years thinking about how to concretely define nine different intersections of software architecture with how humans and agents build software. This class shows developers and architects how to define architecture rules embedded within specifications and how to use the same rules to generate deterministic guardrails. Even with the best models, developers should trust but verify. How To Teach Your Agents About Architecture provides techniques to both teach your agents about architecture and govern non-emphemeral code.
We define architecture in code in the following nine intersections:
GenAI
Implementation
Infrastructure
Engineering
Data
Integration architecture
Team topologies
Enterprise Architecture
Business
For each of these, we provide examples of how developers and architects can build rules that provide fast feedback when important things happen. For example, this framework allows developers to define rules that prevent developers (or agents) from “cheating” in a mono-repo source code repository. Similarly, when architects need to break a database apart for scalability, we show techniques to restore data consistency and referential integrity.
This class begins with how to “wire” rules into agentic generation and how to use the same intent to generate concrete guardrails. Then, we cover nine different dimensions of software architecture and how to concretely define each intersection in ways that constrains agents (and humans) to build proper software.