Claude Code can make a non-engineer look busy. Looking busy isn't the same as building something that survives Tuesday.
I've watched the demo loop enough times to recognise the glow.
Non-engineer opens Claude Code. Types a wish. Green checkmarks appear. Screenshot goes to Slack. "We're a tech company now."
I'm not anti-Claude-Code. I use the stuff. I'm anti mistaking velocity for engineering, and then hiring an engineer only after production has already become a haunted house.
Everyone's a "developer" until taste shows up
Claude Code (and friends) turned a lot of people into people who can ship pixels. Fine. Shipping isn't quality.
Most of those newly minted "developers" can't tell good from bad yet, not because they're stupid, but because taste is the job. Trade-offs. Edge cases. The boring "what happens when this fails at 2am" instinct. Agents optimise for looks-done. Engineers get paid for doesn't-rot.
If your only QA is "it ran on my laptop", congratulations: you've reinvented 2014 WordPress freelancing with better autocomplete.
One repo isn't infrastructure
Here's the bit that keeps biting vibe-coded startups.
Claude Code is excellent at generating app code in a mono-blob. Screens, APIs, a README that sounds confident. That isn't platforms. It isn't environments. It isn't observability, auth boundaries, deploy paths, secrets handling, or any of the dull machinery that keeps a company alive when a human isn't staring at the terminal.
You can vibe a product surface in a weekend. You can't vibe an estate. The agent won't volunteer a staging story, a rollback plan, or "please don't put prod keys in .env.local and call it DevOps".
Single responsibility, or one glorious blob
Vibe agents mash concerns together because the demo reward is "it works". Auth next to billing next to admin next to a random cron that emails customers. One file to rule them all. Until it doesn't.
Engineers draw boundaries. Not for sport, so you can change one thing without summoning three others. Single responsibility isn't a textbook vibe. It's how you avoid a codebase that only the original chat transcript understands.
Blobs become unmaintainable fast. Then someone says "we need a rewrite" like that's a strategy and not a confession.
Regressions, and why Playwright still matters
Without browser / E2E gates, agents "fix" one screen and quietly break three others. I've seen the cheerful PR description. I've also seen the checkout that died in silence.
Playwright (or equivalent) is the adult in the loop for UI truth. Not because tests are fashionable. Because vibe coding without a regression harness is just speedrunning technical debt with nicer commit messages.
If it isn't clicking through the product, it isn't verified. It's hoped.
Hire the engineer before the meltdown
Punchline, without the TED cadence:
A vibe-coded CEO with an engineer from day one beats a vibe-coded CEO alone who calls for help after production is already haunted.
The engineer isn't there to kill the vibe. They're there so the vibe has somewhere honest to live: boundaries, infra, tests, taste. Claude Code can accelerate that pair. It can't replace the pair.
Thoughts
Keep the agent. Keep the ambition.
Add an engineer early enough that "it works" still means something next month.
&w=3840&q=75)


