The Verification Tax of AI-Generated Work
Someone still has to check.
That is the part of AI-generated work we do not always talk about clearly enough. We talk about speed, output, productivity, automation, and the small miracle of watching a tool produce something useful in seconds. We talk about how much faster a first draft appears, how much more ground one person can cover, and how many things AI can remember to consider when our own brains are already holding half a product roadmap, three Slack threads, and the quiet suspicion that we forgot to eat lunch.
And to be fair, AI can be genuinely useful. I use it. I value it. It can catch things I might not have thought of on my own. It can help me explore edge cases, draft implementation plans, review code paths, explain trade-offs, and move faster through work that would otherwise take much longer.
But useful is not the same as free.
Every AI-generated output arrives with a cost attached, and that cost is verification. Someone still has to understand what was produced. Someone still has to check whether it is correct. Someone still has to notice what is missing, what is risky, what is slightly wrong in a way that looks completely reasonable at first glance.
That “someone” is not a small detail.
In software teams, especially when we are touching large or sensitive parts of a system, verification is not a polite final glance before merging. It is the work. It is reading the diff properly. It is running the tests. It is checking the behaviour in the app. It is comparing the implementation against the actual requirement, not the version of the requirement that the tool confidently inferred. It is thinking about security, privacy, failure states, old users, new users, unhappy paths, and the strange little corners of production that never show up in the neat example.
Authentication is a good example. Recently, we redid authentication in an app to make it more secure. It was exactly the kind of work where AI can be helpful, because there are many moving parts and many things to consider. It thought of things I had not immediately thought of. It helped widen the surface area of the conversation.
And still, things were missed.
Some of those things only came out in testing, which is how this work often goes. Not because humans are useless. Not because AI is useless. Not because anyone was careless. But because important systems are full of context. Authentication is not only a technical flow. It is also a user experience, a trust boundary, a security concern, a support problem, and sometimes the difference between someone being able to use the product or being locked out at exactly the wrong moment.
If people are unexpectedly logged out, that is not a tiny inconvenience. It is a bad user experience. If a payment flow breaks, the product may stop making money. If a vital part of the application behaves unpredictably, the team does not get to point at the tool and say, “Well, it generated confidently.”
The user still feels the outcome.
This is where AI can create a particular kind of false confidence. Generated work often looks complete before it has earned that trust. It can be well-structured, plausible, and even thoughtful. It can name the right concepts and appear to understand the system. It can produce something that feels finished enough to lower our guard.
That is the dangerous part. Not that AI makes mistakes. Humans make mistakes too. The risk is that generated work can look more settled than it actually is. It can arrive with the tone of certainty before the team has done the work of certainty.
And certainty in software is not a vibe.
If I do not understand what is happening in a change, I might as well just be vibe coding. That sounds funny until the change is authentication, billing, access control, medical information, user data, or anything else where “seemed fine” is not a standard anyone wants to defend later.
Understanding is part of ownership. It is not enough that the AI produced a solution. It is not enough that the code compiles. It is not enough that the happy path works once on a machine that already had the right state. Someone needs to be able to explain why the change behaves the way it does, what it depends on, what happens when something fails, and which risks were accepted knowingly.
That is not anti-AI. It is pro-responsibility.
The verification tax also does not fall neatly on one person. In practice, the whole team pays it. The person prompting the AI has to check the output before handing it over. Reviewers have to read carefully enough to catch subtle issues. QA has to test the experience in the real product shape, not only the imagined one. Managers and technical leads have to create enough space for this work instead of pretending that faster generation automatically means faster delivery.
This is one of the leadership challenges of AI adoption. If a team starts producing more drafts, more code, more documentation, and more plans, but does not increase the space for review, then the work has not disappeared. It has shifted downstream.
Sometimes it shifts onto senior people, because they are the ones trusted to spot the deeper risk. Sometimes it shifts onto QA, who become the first people to discover that a confident implementation missed an important behaviour. Sometimes it shifts onto the most conscientious person in the room, which is a quiet recipe for burnout. They become the human safety net for speed that everyone else is celebrating.
That is not sustainable.
Leaders need to plan for verification capacity as deliberately as they plan for build capacity. If AI helps a team produce more, the team may also need more explicit review time, better test coverage, clearer acceptance criteria, stronger product checks, and calmer conversations about what “done” actually means. Otherwise, AI does not remove pressure. It can simply move the pressure to the part of the process where mistakes become more expensive.
There is also a cultural piece here. Teams need to be able to say, “This looks good, but I do not understand it yet.” They need to be able to pause when something feels off. They need to be able to test the boring unhappy paths without being treated as if they are slowing everyone down. Verification is not negativity. It is care for the people who will use the thing later.
That care matters most in the parts of a product that carry trust. Authentication. Payments. Data access. Subscriptions. Anything that keeps the business alive or protects the user. In those areas, the question is not only, “Did AI help us move faster?” It is also, “Do we still understand what we are shipping?”
AI is a tool, and tools need to be checked. A power tool can make work faster, but nobody sensible uses one blindfolded and calls that innovation. The checking is not an insult to the tool. It is part of using the tool properly.
The best AI-assisted work I have seen still has humans fully present in it. Not humans rubber-stamping output. Not humans pretending to understand because the generated answer sounded confident. Humans reading, questioning, testing, correcting, and making the final decision with eyes open.
That may sound slower than the promise we were sold. In some ways, it is. But it is also the difference between generating work and delivering work.
And for teams building real products for real people, that difference still matters.
Member discussion