Seth Godin recently wrote,

Role models are fine. But not when they get in the way of embracing our reality. The reality of not enough time, not enough information, not enough resources. The reality of imperfection and vulnerability.

There are no movie stars. Merely people who portray them now and then.

I always appreciate Seth Godin’s candor. Someone as successful and respected as he is could pitch their advice as a fool-proof framework for excellence and success in one’s work—indeed, many do.

“Imposter syndrome” is a term that gets thrown around a lot amongst software developers. It’s the mindset that we are not good enough, not a “real” programmer. We could think this way for any number of reasons—lack of formal CS education, lack of experience, lack of knowledge around the cool new framework that everyone is talking about on Hacker News, lack of concern about what anyone even says on Hacker News, etc.

It’s easy to look at other, more experienced programmers and think that they have it all figured out. Yet some of the most profound things I’ve learned have come from hearing senior devs admit they don’t have an answer for the technical or architectural problem at hand.

My boss once told me that as I progress in my software development career, I’ll come across increasing problems for which there is no blog post, no tutorial, no Stack Overflow answer, and that that is where the most interesting growth happens.

Although we should work against the shame and deleterious effects it entails, “imposter syndrome” shouldn’t be confused for humility. Rather, by embracing our not-enough-ness and vulnerability, we can avoid hubris, learn, grow, and make something good.