Welcome back to Part 2 of my 3-part series on agentic software development. In Part 1, I vented a little about how painfully slow traditional corporate code-review queues feel once you have seen real-time, voice-driven AI prototyping in action. Today, I want to show you what happened when I took that rapid-iteration philosophy and built my own multi-agent engineering pipeline at home; before we bring everything full circle in Part 3 to ask what this massive jump in solo productivity actually means for the future of software engineers.
That homelab experiment turned into FCI Operations, a "Paperclip company" I created that combines local AI inference (using Hermes Agent and local models on vLLM) with frontier models like Google Antigravity, Claude, and Codex. Instead of having three humans stare at every pull request, I set up a pipeline where specialized agents write the code, build the test harnesses, and review each other's pull requests before I ever step in as the final human quality gate on `main`. I even have local agents that dispatch tasks to managed cloud agents like Google Jules, wait for Jules to open a pull request, review the diff, and approve the merge so the CI/CD pipeline can take over - all while I am off doing something else.
Of course, if you are going to let AI agents write and review code at high speed, you can't rely on wishful thinking to know if the software actually works; you need serious automated verification (otherwise you are just generating bugs at the speed of light). In my case, I was building and testing an integration tying Home Assistant into an analytics cloud platform for senior care, and I hit 95% code coverage by building an end-to-end simulation engine called the **Virtual Villa** harness.
The idea behind Virtual Villa was simple: Home Assistant thinks it is talking to a house full of real physical Z-Wave motion sensors, contact switches, and smart plugs, and the cloud platform thinks it is monitoring a real building. In reality, the whole thing is a simulated retirement community populated by synthetic resident personas that I created.
Each resident has their own daily routine and quirks:
- Sleepy Tom, who sleeps in late and moves at a glacial pace.
- Active Jane, who is up at the crack of dawn and out the door on a strict schedule.
- Antisocial Jack, who mostly stays holed up in his living room all day (honestly, I can relate on some weekends).
- Baking Martha, who spends practically her entire day moving around the kitchen.
Having these virtual residents wander around their simulated homes (with a little randomization around activities) gives the system a baseline of daily human activity. Once that baseline is established, I can start injecting anomalies. For example, what happens if Active Jane doesn't get out of bed at 8:00 AM one morning? The harness lets me simulate that exact scenario end-to-end, feed the telemetry stream into the cloud analytics engine, and automatically verify whether the right alerts get triggered and sent to the right caregivers.
Most of that simulation code, along with the unit and integration tests validating it, was written, reviewed, and refined by agents working in a loop. My role shifted from typing boilerplate to acting as the product owner and system architect; I use the tool, spot where the behavior or speed feels off, and set the requirements for the next pass. I watch the system resources, and tell the agent when it is using too much memory or CPU. Agents monitor the logs daily for error messages, and report to me with suggested next steps.
Coming Up in Part 3 (The Conclusion): I have to admit, part of me feels like a wizard running a five-person engineering team out of my home office; however, the other part of me sees a huge warning sign in how this works. Discovering performance requirements on the fly exposed a classic trap I remember from my days testing games at Microsoft, and it points directly to the final conclusion of this series: if agents are writing and reviewing all the code, who is training the next generation of senior engineers? Let's wrap up the trilogy in Part 3.
Later,
SteveO
