Every project we build follows the same allocation: roughly 70% of implementation is AI-generated, 30% is engineer-written. But the interesting question is not the ratio — it is where the line actually falls.
AI writes: implementation
Given a well-structured specification, our AI agents are excellent at implementation — the translation of a clear requirement into working code. This includes:
- UI components and their state logic
- Form validation and submission handlers
- Data fetching and caching logic
- Type definitions and interfaces
- Standard API endpoint handlers
- Unit and integration test scaffolding
Engineers write: architecture and judgment
The 30% engineers own is not remediation of bad AI code. It is the work that requires judgment that cannot be captured in a prompt:
- The specification itself — the thing the AI builds from
- System architecture decisions: how services communicate, where state lives
- Security review of every authentication and data access path
- Database schema design and migration strategy
- Infrastructure configuration and deployment pipeline
- Performance testing under realistic load
- Monitoring, alerting, and incident response setup
The line is about reversibility
The clearest way to draw the line: AI handles the work that is cheap to regenerate if wrong. Engineers own the work that is expensive to reverse — architecture decisions baked into a schema, security assumptions embedded in auth logic, infrastructure patterns that affect every future deployment.
This framing also explains why the ratio matters less than the sequence. The spec comes first (engineer), then implementation (AI), then review and deployment (engineer). You cannot reorder those steps without breaking the quality guarantee.