Insights / Engineering discipline

Engineering discipline · By Naveen Gainedi, Founder & CEO

Complexity doesn't announce itself. It accumulates.

One plausible-looking pull request at a time.

Every engineering team has always shipped some bad code. That was never the risk — the risk was always how much, and how fast anyone would notice. For twenty years, the limiting factor on that was simple: how fast a human could type, think, and review. That ceiling quietly capped how much damage a bad week could do.

AI coding assistants removed that ceiling. Not the review process — the typing process. An engineer who used to ship one flawed function a day can now ship ten, each one individually plausible, each one reviewed by the same tired human at the same tired pace. The review process wasn't redesigned for ten times the volume. It just absorbed the difference, silently, until it couldn't.

The failure mode isn't incompetence

That's the part worth sitting with. The next wave of production failures at most companies won't come from engineers who don't know what they're doing. It'll come from engineers who are perfectly competent, working with a tool that makes every individual change look reasonable — while the cumulative shape of the system quietly drifts somewhere nobody signed off on.

We've started calling this AI-assisted mediocrity: not wrong, exactly, just slightly worse, repeatedly, faster than anyone is checking. A single mediocre PR is invisible. A thousand of them, compounding over a quarter, is an incident report.

What we do about it

The honest answer is: the review process has to change shape, not just work harder. Every engineer at DataGrokr builds with AI in the loop — we're not precious about the tooling. But we hold the line that a human signs off every gate that matters, and we've had to get more deliberate about what those gates check, precisely because the volume of change coming through them has grown.

The operating principle

Speed without a matching increase in discipline just moves the risk downstream, to whoever's on call when it surfaces.

That's the whole premise behind how we deliver: AI-native speed, with the discipline built to match it — not bolted on after the fact.

Next step

Want this discipline on your next build?

See how we structure delivery so speed and discipline don't trade off against each other.

How we deliver →