I think what often gets lost in the "AI is replacing developers" framing is that someone still has to technically steer the system.
I'm a lead engineer and I've barely written code directly in weeks, yet I've shipped side projects and continued shipping at work. My job hasn't disappeared. It's shifted up a layer. I spend my time designing the system, decomposing problems, setting constraints, probing tradeoffs, correcting plans, and iterating on architecture. The AI writes most of the tokens. I supply most of the technical judgment.
Tools like v0 or Replit hide some of this by baking rules and scaffolding into the product. But the work doesn't go away. Someone still has to know what to ask, what to doubt, what to measure, and when the AI is confidently wrong.
That role is not "customer who doesn't know what's possible." It's still a technical role. It just operates at a different abstraction layer.
I'm a lead engineer and I've barely written code directly in weeks, yet I've shipped side projects and continued shipping at work. My job hasn't disappeared. It's shifted up a layer. I spend my time designing the system, decomposing problems, setting constraints, probing tradeoffs, correcting plans, and iterating on architecture. The AI writes most of the tokens. I supply most of the technical judgment.
Tools like v0 or Replit hide some of this by baking rules and scaffolding into the product. But the work doesn't go away. Someone still has to know what to ask, what to doubt, what to measure, and when the AI is confidently wrong.
That role is not "customer who doesn't know what's possible." It's still a technical role. It just operates at a different abstraction layer.