How I build software with AI
I've been building with AI for more than two and a half years. I started before Andrej Karpathy coined the term "vibe coding", back when it meant copying code from a browser window into Visual Studio Code. Since then, both the models and the harness around them have improved enormously. Over the last few months I've settled on a workflow, and I wear every hat in it: product manager, developer, reviewer and tester.

Planning
I write the specs with help from an AI assistant. They cover the product goals, features, user journeys and user experience. A second AI then reviews the plan and looks for gaps and weak assumptions. After that, I break the work into small feature slices, and each one has a clear definition of done. My favourite pair for planning is Fable 5.1 with Sol 5.6 or Astra.
Building
A coding agent builds each slice. It has access to the codebase, the data store and my architecture and coding guidelines. It writes unit, functional and regression tests as it goes. Current favourite for building: Fable 5.1 or Opus 5.5.
Review
A different coding agent reviews the code, and another does a security review. Each review runs for a set number of rounds, with a clear point at which to stop. I use a different agent for review because an AI checking its own work tends to miss its own mistakes. Current favourite pair for review: Opus 5.5 for execution and Sol 5.6 or Astra for review.
Guardrails
- The AI drafts an architecture diagram, and I review and improve it.
- I use database tools to check security and performance.
- I review third-party dependencies for supply chain risk.
- Code follows SOLID and DRY principles, and cyclomatic complexity stays under 20.
I stay in charge throughout. The agents do much of the work, but I decide what gets merged.
Acceptance and release
I check the result against the acceptance criteria with AI help, and then I test it thoroughly by hand. Any feedback goes back to the build step. Once a slice is accepted, it goes to production using deployment playbooks.
What I feel is that software development is now largely automated. The agents write the code, the tests and much of the review. My job has shifted from writing code to deciding what to build, setting the rules and approving what ships.