Slop Rolls Downhill
“Here’s today’s batch,” he said gleefully, handing over a double-bagged parcel of half-brewed slop weighing exactly two pull requests and 11,700 lines of code.
By tomorrow, the batch will reach a senior engineer who cares too much about the integrity of the codebase, or, at least, too much for the agentic era.
In the old days, he might have knocked it back. The pull requests were too large, he would have said, or the author did not appear to understand what they were changing. But that was before first-principles knowledge of the systems you modify became optional. The CEO is terrified of being left behind, and the CTO has an OKR tied to AI adoption in engineering.
So the senior engineer painstakingly reviews all 200 files, knowing that if this slop takes production down, the resulting incident will page him over the weekend.
He could, of course, ask one of the other “AI-native engineers” to review it. That is what happened the last time he took his annual two-week holiday. When he returned, someone had implemented a distributed queue in a service he owned by putting SQLite on a shared volume mount.
He knows the least-worst option is to devote the next six hours of his life to leaving comments on the pull requests. The AI-native engineers will feed those comments into a custom-built harness capable of reading github comments, and regurgitate what AI tells him. So, it’s important that he writes his comments in a way that the coding agent can understand it.
In the boardroom, the CTO presents a chart that rises confidently up and to the right. Its title reads:
LINES OF CODE GENERATED PER ENGINEER
Everyone applauds.
The CEO says the board will be very happy to see this. The CTO feels relieved that his year-end bonus is secure, though faintly disgusted by the knowledge that lines of code are more often a latent liability than an asset. He takes comfort in the fact that nobody else in the room seems to know this. By the time they discover the emperor has no clothes, it will be too late, and he might not be there to suffer the consequences - if at all there were consequences.
He knows his best engineers are quietly burning out - as he raised the issue with the executive team once.
The Chief Marketing Officer replied that he had heard on his favourite podcast that non-AI-native engineers were slowing companies down by “reading the code.” Everyone around the table nodded in agreement.
The Chief Product Officer added that his product managers were now shipping more code than some of the senior engineers, so perhaps engineering simply needed to “get with the times”.
The Chief People Officer assured them that they had the “tools” required to bring in fresh perspectives from outside the company, and said that the HR team were working on a strategy for a “AI-first workforce”.
That was the day the CTO realised his job had changed quietly from under him.
He spent the next two days vibe-coding a token-consumption leaderboard. It rewarded whoever could move the most money from the coffers of the barely profitable startup into the bank account of an AI Lab, which, coincidentally, sponsored the CMO’s favourite podcast. He justified this with the knowing that VC “funny money” would flow through to whoever got featured in the AI Lab’s newest case study.
It is 4:50 p.m.
The senior engineer is trying to conserve what remains of his energy. At least he can clock off at five and grind LeetCode for a few hours in the hope of “cracking the coding interview”.
He tells himself he will apply for another job eventually. Unironically, LeetCode has become the only place where he can still derive satisfaction from the craft he once loved.
On his way out, he passes the AI-native engineer “in the flow”: twenty multiplexed terminal windows spread across three screens, with iPhone Mirroring off to one side, auto-scrolling through short-form video.
Then he sees the CTO emerging from the boardroom.
They exchange a glance and a nod, a quiet acknowledgement between two men who have descended the same gradient and settled at different points near its global minimum.
Slop always rolls downhill.