惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
Hugging Face - Blog
Hugging Face - Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
Y
Y Combinator Blog
Google DeepMind News
Google DeepMind News
大猫的无限游戏
大猫的无限游戏
Vercel News
Vercel News
V
Visual Studio Blog
Microsoft Azure Blog
Microsoft Azure Blog
MyScale Blog
MyScale Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
罗磊的独立博客
N
Netflix TechBlog - Medium
M
MIT News - Artificial intelligence
G
Google Developers Blog
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
小众软件
小众软件
Engineering at Meta
Engineering at Meta
D
DataBreaches.Net
S
SegmentFault 最新的问题
H
Help Net Security
量子位

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
The Human Is No Longer the Developer
Michael Maramzin · 2026-06-16 · via DEV Community

I don't write much code anymore. Well, almost none.

I've been building software for 25 years. Payment systems, document pipelines, bank software, high-load transactional systems, the kind of code that breaks badly when you get it wrong. So when I say the human is no longer the one writing the code, I'm not guessing. I've watched my own job change while I was doing it.

AI agents do that now. What's left for me is different work. I decide what to build, I set the rules, I check the result, and I own what ships. Less typing. More judging. More creative and productive.

Many people still insist that AI writes bad code and makes mistakes. Sure. So do humans. That is exactly why I don't trust a single agent. I make two of them argue.

I run a consensus environment: Claude Code builds, Codex reviews, I judge.

Two different models on purpose: each one is blind in its own way, and they rarely fail in the same direction. Claude is strong at moving through the codebase and turning the plan into code. Codex is the one that comes in cold, reads the plan, looks at the diff, and challenges what Claude produced. The point is not that either agent is always right. The point is that they are not wrong in the same way.

And right now this combination works really well. It produces working, clean, reliable code, as good as what a strong developer would write, sometimes better, and obviously far faster than a human could.

Using AI agents is not vibe coding. It's a skill.

You build it, you sharpen it, and you keep it current as the tools keep changing under you. In that sense it is no different from any other skill in this job: learning a language, learning patterns, learning architecture. Nobody is good at it by accident, and nobody stays good at it without practice.

AI agents are already smart enough that you can hand them a task and say "go build it." Try that on anything complex and the result will disappoint you. Software development is a branching problem. There are many ways to reach the same goal, and one wrong turn early sends everything after it in the wrong direction, no matter how cleanly that branch is written.

Spec first, code later. The industry calls it spec-driven development.

So for complex work, and for any change to production code, I never start with code. I start with a plan, a spec. Depending on the task, getting that plan right can take dozens of iterations, all of them done with the agents. Only when the plan holds do I let Claude and Codex write and review the code against it.

Yes, it is slower at the start. But that upfront time is what makes everything after it faster. You pay early instead of paying double later.

And this is not just my personal habit. The whole industry is moving the same way: GitHub's Spec Kit, AWS's Kiro, tools that treat the spec as the source of truth and make the agents build against it. For a quick prototype or a throwaway script I skip all of it. The plan only earns its cost when a wrong call is expensive.

From there the spec and the code go through the same back and forth between Claude Code and Codex, and I sign off at the end. The full loop:

Explore → Draft spec → Claude + Codex review → Fix the spec → Implement → Claude + Codex review → Tests → Human validation → Commit

Don't waste time crafting the perfect prompt. Your spec matters more.

The prompts themselves are nothing clever. These are the kind I actually use:

  • Implement the plan.
  • Review the changes against the spec.
  • Review this plan against the codebase as an independent reviewer.
  • Critically validate this review, and apply only the points that make sense.

It surprises people, but the style, the phrasing, even the typos make no real difference. What matters is the spec behind the prompt and the judgment reading the output. A clever prompt on top of a weak spec still gives you weak code.

The useful findings are almost never about syntax. They are things like: this quietly breaks another input type, this ignores what happens on retry, this hardcodes a value the spec says must be configurable, this handles the new data but not the old data. Real problems. The kind that costs you a weekend later.

Reviewer feedback is not the final word. Claude applies only what holds up, never the whole list. Accepting every suggestion is just a different way of not thinking.

The job moves up, not away.

None of this is magic, and most of it can be automated. I'm sure it will be. The next step is obvious: multi-agent development environments where the agents plan, build, review, and argue with each other on their own.

And the last step is always me. The agents build, they argue, they fix. But I'm the one who decides what's true and puts my name on it. If it breaks at 3am, no agent gets the call. I do.

So here is my honest question. If you're not the one writing most of the code anymore, what do you call your job now? And if you still write all of it by hand, how long do you think that lasts?