PAPER
AI Does Not Replace Engineering Judgment
AI Does Not Replace Engineering Judgment
AI accelerates writing code.
It does not replace engineering judgment.
There is a growing narrative around AI in software development that misses the point.
AI is powerful. It is fast. It can generate large amounts of code in very little time.
But that does not make it an engineer.
The difference comes down to one thing:
Who is driving?
Two Models
There are two ways teams are using AI today.
Model 1: Human in the loop
- AI generates the system
- Human reviews and adjusts
- Architecture emerges during implementation
- Decisions are reactive
Model 2: Human drives, AI executes
- Human defines architecture first
- Human defines constraints and boundaries
- AI implements within that structure
- Decisions are intentional
Only one of these scales.
Pros of Human in the Loop
This model feels productive early.
- Fast initial output
- Low upfront effort
- Easy to get something running
- Useful for small or isolated problems
But those benefits come with hidden costs.
Cons of Human in the Loop
The failure mode is subtle but consistent.
- Architecture is accidental
- System boundaries are unclear
- AI drifts as complexity increases
- Code appears correct but is wrong under the hood
- Scalability issues surface later
- Rework becomes inevitable
You are not accelerating.
You are discovering the system while building it.
Pros of Human Driving AI
This is the model that holds up.
- Architecture is intentional
- Clear service boundaries
- Deterministic system behavior
- AI output stays aligned
- Faster iteration once design is set
- Easier to reason about failures
- Significantly less rework
AI becomes a force multiplier instead of a liability.
Cons of Human Driving AI
There is a tradeoff.
- Slower upfront due to design work
- Requires strong engineering fundamentals
- Forces clarity before implementation
- Less immediate “visible progress”
But this is front-loaded cost, not waste.
It removes friction later.
The Real Failure Mode
AI does not fail because it writes bad code.
It fails because it is asked to make decisions it cannot understand.
- lifecycle boundaries
- ownership of data
- coupling between services
- failure modes
- long-term scalability
It will generate something that works.
It will not generate something that is correct.
The Correct Mental Model
AI is not the engineer.
AI is the implementation layer.
- You define the system
- You define the constraints
- You define the contracts
AI executes.
What This Looks Like in Practice
Instead of:
“Build me a system that does X”
You operate like this:
- Define requirements
- Define architecture
- Define service boundaries
- Define event model
- Implement one unit at a time
- Review and validate output
Now AI is no longer guessing.
It is executing clearly defined intent.
The Bottom Line
AI accelerates writing code.
It does not replace engineering judgment.
If AI is driving, you get speed without direction.
If you are driving, you get both.