Over the past months I've been building a new AI-enabled platform. Like many developers, I initially started using IBM Bob as a coding assistant.
But somewhere along the way I realized I was missing one important step.
Who reviews the AI-generated code?
Instead of only asking Bob to generate code, I asked Bob to review the entire solution as if it were preparing for production.
The result surprised me.
The review wasn't simply a list of coding suggestions. It evaluated the solution from multiple engineering perspectives, including:
- application architecture
- security
- production readiness
- operational resilience
- maintainability
- scalability
- testing strategy
Just as important, the review also highlighted the strengths of the solution. It confirmed that the overall architecture followed sound engineering principles while identifying the areas that deserved immediate attention before considering production deployment.
Some examples of the recommendations included:
- strengthening secret and credential management
- improving API security and input validation
- introducing structured audit logging
- preparing a proper database migration strategy
- improving error handling and observability
- building a realistic testing strategy
None of these findings were particularly surprising for an experienced architect.
What was surprising was how quickly a comprehensive review was produced and how well it aligned with the type of checklist an experienced software architect or security reviewer would normally use.
For me, this changed the role of AI completely.
Instead of using AI only during implementation, I now involve it throughout the engineering lifecycle:
- brainstorming architecture
- validating design decisions
- reviewing code
- identifying technical debt
- prioritizing improvements
- documenting architectural decisions
That doesn't replace experience.
It amplifies it.
As architects we remain responsible for the final decisions, but having an AI continuously challenge assumptions is becoming an incredibly valuable engineering practice.
I'm convinced that this collaborative approach—developer, architect and AI working together—will become one of the standard ways of building enterprise software.
I'm curious how others are using IBM Bob.
Are you only using it to generate code, or have you started using it as an engineering review partner as well?