The New Impostor Syndrome
Who's really the developer here?
It's been a whirlwind couple of months (or weeks?) in which I, like many developers, have witnessed a realtime shift in how code gets written. Simply put, the future of software development seems to be one in which no one is writing individual lines of code.
On one hand, the sudden democratization of software skills is liberating: as a wannabe fullstack engineer, I've been able to overhaul my personal website (that you're reading right now), ship a pretty fully-featured workout tracker that I use on a daily basis, build an iOS app to resolve a personal grudge against a certain Philips SleepMapper app. And even tinkered with 3D modeling and game development, activities with otherwise unapproachable learning curves. This is no doubt incredible and, as I've felt about AI tools for a long while, the only limitation is my own creativity and ideaflow.
The New Impostor Syndrome
Impostor syndrome is well-known phenomenon characterized by a sense of self-doubt and fraud. You might've heard developers express "I have no idea what I'm doing" in talks, interviews, or other forums. I've always somewhat disliked this expression, since, even if you only have a surface level understanding of what you're doing, being able to pull together pieces of technology into a harmonious working system indicates that you certainly know what you're doing.
But what if, thanks to agentic coding tools, I genuinely don't know what I'm doing?
With AI coding agents, my workflow is all about "the agentic loop":
- Present the problem or task in a planning session
- Provide high-level feedback on the plan if I have domain expertise
- Provide a feedback loop for the AI to self-improve (tests, browser access, iOS MCP, server logs)
When I'm working outside of my area of expertise, I lean on claude to suggest the best path forward and I feel a new kind of impostor syndrome. I'm taking credit for work that I orchestrated, but didn't truly execute. Does that still make me a good engineer?
A more concrete example of this phenomenon is building an iOS app: I don't really know how to do this from the ground up, but I was able to one-shot the core functionality with claude in under and hour and the rest of the time has been spent tweaking the UI and UX (via dictation and the XCode MCP for screenshots). The most significant thing I've done in this instance is set up a development environment in which I know claude can be autonomous and succeed at the task, which I believe is a skill not to be underestimated, either.
At the end of the day, I'm giddy because I've solved a real annoyance, but I'm not sure I've engineered much of anything. Rather I defined the problem, shared my vision, and set things in motion. And then I tinkered, which I believe is really the silver lining here: many engineers are feeling like a kid again, and I'd count myself in that camp, too.