The part the agent can't give you back

Five parallel lines; the middle one, in orange, knots into a tangle halfway across

Sometimes an AI agent gives me an answer that is clean, well-structured, and completely plausible. And something in me flinches before I can even explain why.

Then I go dig into the data and pipeline, and there it is—a quiet bug that would have derailed the whole thing.

When I first joined my team, we didn’t have Claude Code or agents worth much. So when I needed to understand the upstream pipelines feeding my work, I just read them. Line by line. All of them were written in Java—and I didn’t even know Java at the time—but I read through them anyway. Even the messy parts nobody expected me to care about, because I knew those were producing the numbers I’d eventually have to explain.

At the time, it was slow. Honestly, it felt a little like wasted effort.

Until things broke. Every weird number pulled me back into that same code—tracing the number backward, reading the logic in detail, figuring out where reality went sideways. After doing that enough times, something shifted. I stopped looking things up and just started knowing the shape of the system.

I use agents constantly now. I’m definitely not nostalgic for the slow version.

But that “flinch” caught two design problems this year that nobody else had noticed. It found bugs that had been quietly distorting our numbers for years. And I realized: I can’t get that flinch from the agent. It came from the slow, boring reading that the agent now makes unnecessary.

I genuinely don’t know what this means for someone starting out today. I’m not sure the answer is “do it the hard way anyway.”

But I’ve been thinking about it a lot lately. How do you build a gut feeling for a system you never had to wrestle with by hand?

← All posts