Here’s how I’d think about where a creative, thoughtful developer still has a real edge:
Taste and judgment — AI can generate code, but it can’t tell you what’s worth building, or recognize when a technically correct solution is architecturally ugly, or feel the difference between an API that’s a joy to use and one that’s merely functional. That curatorial sensibility is deeply human.
Problem framing — Before any code gets written, someone has to understand the messy, ambiguous real-world situation and turn it into a well-posed problem. AI is downstream of that framing. Getting it right is a creative act.
The edges and the weird — AI is trained on the common case. Novel domains, unusual constraints, interdisciplinary problems that don’t fit neat categories — that’s where pattern-matching from training data runs thin, and genuine thinking takes over.
Explanation and narrative — Understanding why something works (or doesn’t), communicating it clearly, teaching it — these are things AI does passably but a thoughtful human does with insight and personality.
Integration with the physical and social world — Code that touches hardware, organizations, politics, ethics, or users with unusual needs requires contextual judgment that goes far beyond what a model has access to.