Along with my regular job at Microsoft I also mentor a number of developers and program managers. I spoke to a young man recently who is extremely thoughtful and talented and he confessed he was having a crisis of confidence. He was getting stuck on things he didn't think he should be getting stuck on, not moving projects forward, and it was starting to seep into his regular life.

He said:

"Deep down know I’m ok. Programming since 13, graduated top of CS degree, got into Microsoft – but [I feel like I'm] an imposter."

I told him, straight up, You Are Not Alone.

For example, I've got 30 domains and I've only done something awesome with 3 of them. Sometimes when I log into my DNS manager I just see 27 failures. I think to myself, there's 27 potential businesses, 27 potential cool open source projects just languishing. If you knew anything you'd have made those happen. What a phony.

I hit Zero Email a week ago, now I'm at 122 today in my Inbox and it's stressing me out. And I teach people how to manage their inboxes. What a phony.

When I was 21 I was untouchable. I thought I was a gift to the world and you couldn't tell me anything. The older I get the more I realize that I'm just never going to get it all, and I don't think as fast as I used to. What a phony.

I try to learn a new language each year and be a Polyglot Programmer but I can feel F# leaking out of my head as I type this and I still can't get my head around really poetic idiomatic Ruby. What a phony.

I used to speak Spanish really well and I still study Zulu with my wife but I spoke to a native Spanish speaker today and realize I'm lucky if I can order a burrito. I've all but forgotten my years of Amharic. My Arabic, Hindi and Chinese have atrophied into catch phrases at this point. What a phony. (Clarification: This one is not intended as a humblebrag. I was a linguist and languages were part of my identity and I'm losing that and it makes me sad.)

But here's the thing. We all feel like phonies sometimes. We are all phonies. That's how we grow. We get into situations that are just a little more than we can handle, or we get in a little over our heads. Then we can handle them, and we aren't phonies, and we move on to the next challenge.

Despite external evidence of their competence, those with the syndrome remain convinced that they are frauds and do not deserve the success they have achieved. Proof of success is dismissed as luck, timing, or as a result of deceiving others into thinking they are more intelligent and competent than they believe themselves to be.

The opposite of this is even more interesting, the Dunning-Kruger effect. You may have had a manager or two with this issue. ;)

The Dunning–Kruger effect is a cognitive bias in which unskilled people make poor decisions and reach erroneous conclusions, but their incompetence denies them the metacognitive ability to recognize their mistakes.

It's a great read for a Wikipedia article, but here's the best line and the one you should remember.

...people with true ability tended to underestimate their relative competence.

I got an email from a podcast listener a few years ago. I remembered it when writing this post, found it in the archives and I'm including some of it here with emphasis mine.

I am a regular listener to your podcast and have great respect for you. With that in mind, I was quite shocked to hear you say on a recent podcast, "Everyone is lucky to have a job" and apply that you include yourself in this sentiment.

I have heard developers much lesser than your stature indicate a much more healthy (and accurate) attitude that they feel they are good enough that they can get a job whenever they want and so it's not worth letting their current job cause them stress. Do you seriously think that you would have a hard time getting a job or for that matter starting your own business? If you do, you have a self-image problem that you should seriously get help with.

But it's actually not you I'm really concerned about... it's your influence on your listeners. If they hear that you are worried about their job, they may be influenced to feel that surely they should be worried.

I really appreciated what this listener said and emailed him so. Perhaps my attitude is a Western Cultural thing, or a uniquely American one. I'd be interested in what you think, Dear Non-US Reader. I maintain that most of us feel this way sometimes. Perhaps we're unable to admit it. When I see programmers with blog titles like "I'm a freaking ninja" or "bad ass world's greatest programmer" I honestly wonder if they are delusional or psychotic. Maybe they just aren't very humble.

I stand by my original statement that I feel like a phony sometimes. Sometimes I joke, "Hey, it's a good day, my badge still works" or I answer "How are you?" with "I'm still working." I do that because it's true. I'm happy to have a job, while I could certainly work somewhere else. Do I need to work at Microsoft? Of course not. I could probably work anywhere if I put my mind to it, even the IT department at Little Debbie Snack Cakes. I use insecurity as a motivator to achieve and continue teaching.

Totally! Not. I've worked hard to develop and hone my craft, I try to be innovative, and deliver results.

Plenty of times! Most recently I started a new job where I've been doing a lot of work in a language I'm rusty in and all the "Woot I've been doing 10 years worth of X language" doesn't mean jack. Very eye opening, very humbling, very refreshing

Quite often actually, especially on sites like stack overflow. It can be pretty intimidating and demotivating at times. Getting started in open source as well. I usually get over it and just tell myself that I just haven't encountered a particular topic before so I'm not an expert at it yet. I then dive in and learn all I can about it.

I always feel like a phony just biding my time until I'm found out. It definitely motivates me to excel further, hoping to outrun that sensation that I'm going to be called out for something I can't do

Phony? I don't. If anything, I wish I was doing more stuff on a grander scale. But I'm content with where I am now (entrepreneurship and teaching).

I think you are only a phony when you reflect your past work and don't feel comfortable about your own efforts and achievements.

Hell, no. I work my ass off. I own up to what I don't know, admit my mistakes, give credit freely to other when it's due and spend a lot of time always trying to learn more. I never feel like a phony.

Quite often. I don't truly think I'm a phony, but certainly there are crises of confidence that happen... particularly when I get stuck on something and start thrashing.

There are some folks who totally have self-confidence. Of the comment sample above, there are three "I don't feel like a phony" comments. But check this out: two of those folks aren't in IT. Perhaps IT people are more likely to have low self-confidence?

The important thing is to recognize this: If you are reading this or any blog, writing a blog of your own, or working in IT, you are probably in the top 1% of the wealth in the world. It may not feel like it, but you are very fortunate and likely very skilled. There are a thousand reasons why you are where you are and your self-confidence and ability are just one factor. It's OK to feel like a phony sometimes. It's healthy if it's moves you forward.

I think the more you know, the more you realize just how much you don't know. So paradoxically, the deeper down the rabbit hole you go, the more you might tend to fixate on the growing collection of unlearned peripheral concepts that you become conscious of along the way.

That can manifest itself as feelings of fraudulence when people are calling you a "guru" or "expert" while you're internally overwhelmed by the ever-expanding volumes of things you're learning that you don't know.

However, I think it's important to tamp those insecurities down and continue on with confidence enough to continue learning. After all, you've got the advantage of having this long list of things you know you don't know, whereas most people haven't even taken the time to uncover that treasure map yet. What's more, no one else has it all figured out either. We're all just fumbling around in the adjacent possible, grasping at whatever good ideas and understanding we can manage to wrap our heads around.

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

There's a book called MindSet by Carol Dweck that covers something that might be very much relevant to this: When raising kids, always praise them for effort rather than talent. (e.g.: "You worked really hard at that" vs. "You are so smart"). If you tell them they're so talented they'll see a challenge as a sign that they might be a phony. It's interesting that in the answers from friends you list above, all the "No" answers include some reference to effort.

Agree with Dave's comments - "the more you know, the more you realize just how much you don't know"

I constantly battle with this and it leads me to massively undervalue myself until I do one thing.... compare.Compare myself to my peers, friends, work mates. Not in a conceited, arrogant way but just to gain perspective on how far along my personal journey I am.

I love discussing ideas, concepts, and especially anything I know nothing about, constant learning should be embraced by all... knowing how much I don't know is, for me, an important part of constant learning.

Being able to formulate meaningful questions from very limited amounts of knowledge on a subject is a good demonstration of intelligence for me, how quickly does someone just "get" something, shows they can listen, learn, assimilate and are hungry to constantly improve, no matter what level they may be at the subject in hand.

I do find that techie people struggle to find where they "fit", what are their weaknesses and strengths and how could a team being built of those different strengths and weaknesses compliment each other and the sum of the parts being greater than the whole. This struggle directly relates to people understanding if they're phoney or not.

Of course there are also those people that will look confident and say that they are awesome just to protect there uncertainty. From my point of view you Americans look very confident and aware of your selfs, we Belgians tend to be a lot more timid. But it's a person thing and your personality is not entirely caused by your upbringing or where you come from, partly yes but not all of it.

And you never looked phony to me.

BTW: I guess you think you are phony because you care what other people think of you and how they perceive you. And we all do in a way.

I really appreciated what this listener said and emailed him so. Perhaps my attitude is a Western Cultural thing, or a uniquely American one. I'd be interested in what you think, Dear Non-US Reader. I maintain that most of us feel this way sometimes.

Why can't a person be confident that that person is good at what that person does, simply because that person has been doing that for a long period of time, making that person a specialist in the field of what the person does best?

All that "but I'm just a guy who codes, nothing special"... it's mature, it's nice, it's what people want to hear, because the alternative is in general considered arrogant, but let's face it: why? If a person is a very good programmer, that person is a damn good programmer, and IMHO that person is fully entitled to say so. If another person finds that 'arrogant' or can't stand that attitude, maybe it's because hearing another person say "I'm damn good in what I do" actually confronts them with their own situation: they might not be there (yet) at that spot where the specialists are.

That's perfectly fine though, it's just that IMHO in general people don't want to hear it, don't want to know it. What they don't realize, is that some people actually have spend a massive amount of their own time in their craft, when others went to the swimming pool, to parties etc, they were coding, digging through statement lists etc. All that investment in a small set of things for a long period of time pays off. They became very good at those things.

It's always a challenge to find the right balance between "I'm so incredibly smart/great/awesome" and "I suck, really, there's nothing I don't f*ck up within 2 minutes". People with a lot of confidence might lean more to the former, people with lack of confidence might lean towards the latter. In the end, does it matter? IMHO, only for the people who's lives suffer because they classify themselves in the wrong category.

Your article really illustrates that if you want to do everything for a long period of time, even with full dedication, you won't become the specialist you might think you are in everything. If you do just a few things and for a long period of time even with full dedication, you might excel in those few things, but you can be sure you're a total n00b in everything else.

For the record, I too find myself struggling with stuff which is simple to others. E.g. at the moment I'm fighting with ASP.NET, as I'm not a specialist in it or better: I simply suck at it: I'm still stuck in the 1990-ies way of doing HTML, as that's what I know. But to be honest, I don't see myself as a phony in that area, just not being skilled in that area, and therefore underachieving in that area.

I think the word 'phony' really applies when someone claims to be a specialist in field F and that turns out to be a lie.

man! this really resonates with me! especially the last quote of Dave Ward's comment! I've stumbled upon the Wikipedia article about the "Imposter Syndrome" a little while ago when a friend of mine said in a discussion we had that he has it. Right there and then, I could say the same about myself!

Once, a friend of mine who was working for Microsoft Algeria told me something (in the context of hiring new [unexperienced] graduates) that could be a good analogy to this. he said that, sometimes you would have someone who's at level 0, thinking he'd known it all. He'll come to you, right after the training period, where he's learned a little bit (maybe gone from 0 to 1, maybe 2!), and he'll "renegociate" his contract, because "he has experience now", and "he's advanced a lot" (maybe he did, there isn't a factor number that get's you 1 or 2 when you multiply it to 0 :P ). However, when the person you hire is a little more knowledgable (say at level 4), he'll be more humbled, and even when he gets to lever 5 or 6, he won't come rushing to you for a raise, because he "went deeper into the rabit hole" (quoting Ward), and has a feeling of what's ahead, and maybe even, thinking he's a foney ;).

so, yeah, if you feel you're phoney (like me), as long as it's keeping you moving forward, don't worry, because that means you're on a good track :)

Once again an interesting blog post, I really enjoy and always appreciate when you write or talk about developer related mindset issues.

I live in Denmark, and have never worked or lived in USA. I am a self taught web developer with a university degree in philosophy, I've previously been self employed for 8 years and am currently working as a developer in a smallish Umbraco centric web solutions company in Denmark.

I can really relate to the i-feel-phony feeling you're describing here. I usually ascribe this feeling to the fact that I am self taught, and have no real educational background in the work I'm actually doing. What really surprises me is the fact that everybody around me seem to have great respect for me and the work I do.

I don't know if it's this feeling that produces my insatiable thirst for learning new stuff, or if it's just another personality trait of mine. But I do know that I need to have a job where it is necessary to keep learning new things, if it wasn't I would get quickly get bored and start looking for something else to do.

Anyway I think this feeling is not a particular US related feeling but it might very well be a feeling only related to WEIRD people. (WEIRD ~ Western, Educated, Industrialized, Rich and Democratic)

Here is funny story. I’ve been in software development for 7 years now.I never went to college or any other kind of technical high school. I learned to program by myself and managed to get first job somehow.When they asked me where did I go to school I managed to skip that answer somehow.And during interview about technical stuff I nailed it because I really knew it good.

Guys who worked with me just assumed I must of have some high education like they did so they addressed in that fashion.What happened next, I felt like real phony among those guys and it had nothing to do with my work, it was just the way I felt.I spent nights and days learning, reading books, blogs, forums, coding, working just to make this feeling go away.I learned stuff that's not even part of my job, project or anything related just to have a dissent answer if question comes up at some point.

What happens next is I become manager to rest of those guys as reflection of my knowledge and dedicated work.They were so sure that everything they need to know was already given to them and learning new stuff is not so necessary.

It's been years and different companies since my first job and from my first gig up till now I only went up in structure (and payment) hierarchy, butthat feeling of phoniness and incompetence never went away.

Maybe it's that inside drive that still helps me to improve myself and move ball forward.

My fake name

Wednesday, 17 August 2011 10:19:22 UTC

I definitely feel like a phony sometimes. I agree the most with Dave Ward’s comment on G+. It seems like the more you learn, the more you realize how much you don’t know. This definitely happened when I got stuck on C++ team with legacy code that had to be supported when WPF, Silverlight and WCF came out with .NET 3.5 I felt like I wasn’t relevant anymore until I picked up some books and created some personal projects to bring myself up to speed in those areas. I have found that my personal projects really help my confidence.

A fellow software developer at work told me he looks back every five years in retrospect and realizes how much he is amazed at how little his former self really knew, and this cycle repeats for him every five years.

I recently felt like a phony when I joined a new team at work. I noticed that one of my teammates in QA was modifying my check-ins, and it kind of felt insulting. Then I realized he has been on the project for ten years, he understands the code base better, and he does the same to everyone else. I’ll get over it.

Great post Scott. I have increasingly being experiencing the Imposter Syndrome as I have gathered up a long list of topics that deserve further study but, due to time pressures (family life and having to sleep), will probably never get ticked off. Prioritisation is the key and keeping in mind the phrase "Jack of all trades, master of none."

I have noticed a few things of the software industry (since moving over from academic science), notably there are people that deserve heaps of praise (for humbly helping others learn the craft, like yourself Scott) and others that have (in my opinion) a pretentiousness about them (and probably add to peoples insecurities about their own abilities/knowledge). Thankfully, the former type, in my experience are much more prevalent, but still some humble pie (and ice cream of course) should be added to the menu.

Like you said Scott, it is unlikely that the phoniness that we sometimes experience is deserved. I like to take stock on the things I have achieved and be proud of them.

I think that's a good feeling. We are in a very difficult profession, if you think only about MS... how many frameworks has appeared in the last 2 years? and now all the cloud stuff with all those strange databases without relations. Too much pace! But we need to keep learning everyday because if you stop a couple of years you became a bad professional.

I also feel phony because I feel like I are leaving a lot of issues to a question of luck.

What an excellent blog post man! I can totally relate to this. Don't know why really. Perhaps it's the field? IT is so vast and complex; the minute you have learned how to do a fourier transform in code, write a cool ASP.NET custom control, or rotate a tiangle in DirectX you're humbled by the fact that your knwoledge are tiny compare to the huge freaking cake. The whole cakes is so enormous, full of cream and with pretty small candles on it; the odds are that whenever you engange in some discussion with a fellow developer his expertise is totally different from yours, which makes you feel like a know-it-not!

Thanks for the article. I recently read the definition of Imposter Syndrome and Dunning-Kruger Effect, although I can't remember exactly why, but I definitely could see how it applies to people I came to know, for both definitions.

I often have self-doubts because it feels like there's so much I don't know. I guess this happens to all of us who work in development teams, read other developer's blogs or browse forums on the internet. But then again, when I look at what I do every day and what I have done in the past years I am glad to say that I seem to know enough to get by without feeling like a phony. You need to take a moment and put things in perspective at times to realize that you don't have to hide your abilities and your experience.

I guess when you do it right, feeling like a fake at times motivates you to push yourself a bit. When it demotivates you, this is surely a bad sign. I try to be very honest with what I know and what I don't assuming that the people I work with directly will know that just because I don't know something this doesn't mean I'm stupid or lazy but that this a natural thing when you do the work we do.

I try to remind myself that so far I have done well in my job and try to learn what I don't know, but I admit that sometimes confronted with other developers who seem to know way more than I do I feel a bit overwhelmed and don't even dare to join the conversation because I feel like I can't add anything of value. But it's actually nice to know that I'm not the only one. Phew.

On a slightly different note I know that aside from my knowledge and experience regarding my job I know that I have other talents that I can be proud of. On a day when I get a bit too much of the feeling that there's too much I do not know, it helps to go home and be reminded of the other things I can do that others can't.

Nice long article. I am from programer from india. 12 years back when I started as a developer there was only a couple of technologies around and I used to learn the new technologies as soon as they come. And the only channel was few programming books, msdn magazine and books from the library. Now the situation has become totally opposite. There is a huge amount of information overload from too many channels. Slowly I started feeling that may be now I do not know so many different things. I wanted to get rid of this feeling. So I reduced the list of imformation streams (reduced google reader subscriptions, twitter followups, Deleted lot of ebooks etc.,) and made up my mind that I or no one will ever be able to know everything. First be happy with what I know and if I feel I dont know something then if it is really required make an effort to learn or accept the fact that I dont know that. If I have forgotten something (COBOL,FORTRAN) then I just accepted the fact that its not required now its ok to forget. Now slowly I am normal.

At times, I do feel like a phony, failure, loser and other negative terms that one might think of calling me (or anyone else). Other times, I am an ego maniac thinking that I am the best software engineer in the world (aren’t I? ;-) ).

I remember being laid off on Nov 13, 2001. That night as my wife and I got ready for bed, I told her not to worry that I would have a job in 2 weeks. A year and half later, I finally got a job working at one of my previous companies (not the one that laid me off). The layoff and time it took to find a new job was quite the eye-opener as I thought I had skills (I did and do, but the skill set is always changing), that I was the developer everyone would want (my ego showing here), and that I was the best candidate (this really depended on the position and company). I think part of the delay was my ego and attitude toward companies.

The experience taught me a couple of things.• Depend on God• Be more humble• Always be learning

Currently, I am finishing a developer certification, but it seems outdated already as there is a new one. The new certification will soon be outdated because there is a new technology and tools to learn. Unfortunately, my current contract / engagement does not allow me the ability to learn the new technology.

For me, the feeling is not so much about being a phony; the feeling is more about being out-dated. The software languages I learned in college are not being used (the basic concepts are though). The VB I taught myself in 1999 is last century. :-) Keeping up with MS tech (or even just .NET framework and C#) is a challenge.

All I can do is realize there is something to learn and that the only time I will stop learning is when I stop breathing. Otherwise, I need to keep moving forward and stagnant.

You just described how I've been feeling latelly. I mean, I know I'm good and I do teach a lot to my coworkers almost everyday, but I feel like a phony more often than not. It is funny how this feeling has been changing me in the past months. I started to be more concious about my work, my productivity and even my work interactions. This feeling is helping me be better at my job and it is moving me towards a better self image.

I'm aware that not everyone can handle such feelings, but again, not everyone has the same passion for what they do. I believe this only happens to people that are really passionate about their jobs and want always to go deeper down the rabbit hole.

It is great to know I'm not the only one that feels this way.

BTW, I'm from Brazil, so yes, this feeling has nothing to do with you being in the US. ;)

I have had this same feeling off and on over the life of my career. I don't know if I would describe it as being phony, which to me implies purposeful deception. The feeling I experience is more of "I wish I was better at this" or "wow, I have so much more to learn."

This feeling was amplified like never before last year when I attended my first two conferences. One was a PHP conference in Chicago called php|tek and the other was a Microsoft conference at the Redmond campus, VS Live. I was learning quite a bit from the speakers and sessions, but also at lunch and in the hallways with fellow attendees. I realized just how many smart, talented people are out there, especially compared with the the people I normally meet in my home town.

At first, it was kind of disheartening, but the more I thought about it, I realized this was actually a good source of motivation. Having an opportunity to stay in touch with some of the speakers/attendees in the months after the conferences, I realized these are normal developers just like me, but who have focused enough on a topic to deeply master it and teach it to others. That helped me to refocus my efforts on the core technologies I work with every day. Don't get me wrong, I don't feel like a guru/ninja/rockstar/master/insert catch phrase here. But, I do feel more confident overall and it's easier to talk myself out of those occasional feelings mentioned above.

One related point that I learned from this experience is that it's much better to surround yourself with people that are smarter, more experienced and wiser than you than to surround yourself with people that aren't. The first group can certainly bruise your ego at times and make you realize what areas you are lacking in, but I'd much prefer that to a blissful ignorance that "I'm at the top of my game". I've given this advice to a few people considering a job move: If you really think you're the smartest developer at the company, you should probably move to a bigger/smarter company. Otherwise you'll stagnate.

All the smartest people I know have 'imposter syndrome' from time to time because they're smart enough to know how much they don't know; the person who assumes they know it all, have all the answers and have nothing to learn might be right, but they're likely to be dangerous because it's more likely they're just not smart enough to know when they're out of their depth - which we all are sometimes. If you nail everything you do 100% with no effort or challenge, you're not stretching yourself. If you never get anything wrong, you're not trying hard enough. And there is always someone smarter, harder working, more relevant, more skilled or - in at least one aspect - better than you. Knowing that you don't know it all and learning, rather than bullshitting, to address that is a good thing. If it cripples you with anxiety and self-doubt, that's the problem...

Mary B

Wednesday, 17 August 2011 13:09:31 UTC

Wow, this really hit home. I thought I was the only person feeling this. I find that at senior levels, its often assumed that you know everything in the domain you are working in, and it often makes me feel inadequate. I was actually starting to get seriously depressed by this lately, and considering leaving the industry over it. I was starting to feel that maybe I had been promoted past my competency level, even though my work is still getting done.

Maybe it's a characteristic of the profession. In my own experience, I have never done the same job twice. About the only thing that qualifies me for the next one is that somehow I managed to succeed (or hide my failures) in the last one. I have this weirdly appropriate title at the moment "VP of New Technology" (small company, bloated titles) makes me smile. Last year I persuaded a solidly Microsoft/Sql Server outfit to take on hadoop (at least, that's my pitch). Hey, it seemed like the right thing at the time. What's right now? probably not hadoop, or at least hadoop won't be enough on its own. I'm expecting it'll be complex event processing - but I don't know CEP from a hole in the ground.

@Joel Clermont: I realized that I can enjoy the feeling of being mildly stupid because I know it just means that I'm working with smart people who know their stuff and can teach me new things. Of course it must be in an environment where asking questions is not seen as admitting ignorance and frowned upon and the smart people are up to their role as mentor. Then it's really rewarding.

On the other hand working mostly alone or with people who cannot really teach you anything is dangerous because sooner or later I get too bored and demotivated. I guess it needs a certain amount of confidence to ignore the feeling of "unworthiness" and just focus on learning and improving, but when you can do that it's great.

I really appreciated this gutsy article. Too often it is the ultra confident who get the attention. But they are not always the ones who get things done. It's Ok to admit to not knowing everything. And just having the attitude of giving it a go. No matter how good you are there is always more to learn.

Clayton Powell

Wednesday, 17 August 2011 13:42:52 UTC

Scott, this is a very good post for several reasons. I'm a mid level developer and have been coding for 6 or so years professionally. I've had people tell me that I'm a very good programmer and I know I'm what I would consider an ok programmer, but I'm always holding myself to a much higher bar - I look at my mentors, you, people in the .NET community, people who I fell are programming rock stars in my mind and feel like the gap gets bigger and bigger. I know I'm learning new stuff each year and growing and pushing myself, but feel like at times I'm very behind where I think I should be. So to hear you express a very similar concern makes me realize that no matter how much you know, people who crave knowledge, will always want more knowledge and like you stated by Dave Ward, it's a never ending rabbit hole. How I deal with it is, I know I'm pushing myself to be better everyday and that's all I can do, that's all any of us can do, put one foot forward and know that no matter how much you know, there will always be someone who knows more.

David

Wednesday, 17 August 2011 13:45:07 UTC

This post really hits home with me. I always had that thought in the back of my mind and worried that I should know more than I do. Where I work, there has never been an Architect in the history of the company and my company has been around for 30+ years. I was promoted to Architect in 2008 because I highlighted a need for some structure around our code base and proved the case of using services, code reuse, etc. I started as a developer in 1990 in the Unix environment and progressed to .Net when it came out. Now, the trouble at my company is, it is not widely know what an architect does, they immediately think that the architect must know how to do everything. I have explained that this is not the case, but I do have resources to help me solve problems that I don't know off the top of my head. It is very hard to break that perception, hence the 'phony' feeling, wondering if I'm just fooling everyone and I really should know more.

Thank you very much for this article.

Bill Sampler

Wednesday, 17 August 2011 14:07:08 UTC

After a two month string of failures as project manager, I was starting to feel exactly this way and wrote a blog about exactly this not so long ago. I'm reassured knowing that someone as tallented as you feel this way at times too. I've recently begun to follow your work and think very highly of your approach to life.

My opinion of my own abilities has changed with time as well. It's become apparent that my experience with so many small companies has made me a jack of all trades in the development world, but a master of none. This is very obvious when I visit StackOverflow now. So many talented programmers can dive deep into very specific topics and provide great answers.

Of course, I still have a will to learn and a certain enthusiasm for my work. And I actually applied for a job at Microsoft last Friday. It's a position on the Bing team. Since I haven't mastered the more advanced concepts like natural language interpretation and machine learning, that isn't doing much for my confidence in getting the job. But the job sounds fascinating to me anyway, and if I'm brought in for an interview I only hope that my past experience and my enthusiasm will be enough.

Any time I'm having first world problems I too like to remind myself of how good life is in the first world Especially on a developer's salary.

Re: imposter syndrome - your coworkers abilities are probably a big influence. The average developer at MS is probably way better than at Little Debbie's, so you won't feel as competent. The work is probably close to or just beyond your current limits so you always feel a bit behind. But if you've been there for years and you're delivering quality output then have 4 or 5 beers every Friday evening to relax and reflect how good your life really is.

Another possibility is your management's priorities vs. your own. If deadlines are way more important than code quality, but you're really into code quality, no, you won't feel good when you look at what other people produce when they have time to write and test quality code. A fix for this is to write hobby or open source code in your own way after hours just to show yourself you can.

All of these thoughts and feelings are really a result of anxiety, which a large amount of people suffer from to some degree or another. It's really the level at which you suffer from anxiety that informs the symptoms that you display. If you have high anxiety it can paralyze you, but if you have a medium amount it might just make you into a person that pushes themselves hard in the fear that they are not accomplishing enough. This is a body chemistry thing in that some people are just built with a more reactive fight or flight reflex.

It's important to remember that the feelings that this anxiety engenders are often not the truth of your situation. Thinking that you are a failure because you haven't met the unreasonable goals you have set for yourself is obviously fallacious, but because you FEEL that way it becomes the truth of it. Only when you step back and do something that breaks this train of thought are you able to see the truth. In this case Scott, when you wrote down that you felt like a phony I bet it struck you as a bit ridiculous to write that, because even though you feel that way it is far from the actual truth.

The is a reason why there are so many self help books out there. Most of the systems for managing time or work that are out there are all about managing anxiety through planning. If you set the proper goals and organization in place any task or set of tasks can be managed despite feelings of anxiety. I'm sure every one of the people that read this who have those feelings of anxiety all the time remember doing something to organize themselves and push through anxious behavior to succeed.

I'll say it again because it bears repeating, in many cases where negative emotions take hold the key thing to recognize is that the feelings you are having are often not the truth of your situation.

One thing to consider is that constant criticism is officially recognized as emotional abuse, and lack of self-confidence and depression are symptoms of abuse. I'm wondering how much of this insecurity and depression is a result of the type of people we have to work with in the programming profession, especially on the internet?

In my opinion, this is THE MOST INTERESTING and INSPIRING blog post I have ever read from you . Seriously. I hope you and Rob will consider digging into this subject over at TDL. I have not yet started my day coding, but knowing that I am not alone in my phoney feelings makes me feel..... well, like I'm going to have great day.

Kind Regards Sir!

p.s.

Dave Ward hit the nail on the head with his amazing insight:"We're all just fumbling around in the adjacent possible, grasping at whatever good ideas and understanding we can manage to wrap our heads around."

Jennifer Marsman posted a great blog post in June, where she touched on Imposter Syndrome. Great read.

For me, one of my biggest fears of speaking is due to fear of being exposed, not so much as a phony, but for my ignorance, as in, I don't know what I don't know & would hate to discover what that might be in front of a room full of people.

As for your reference to that (awesome!) Polyglot Programming Hanselmintues, Ivan Towlson served up a huge slice of humble pie in that episode. I would think he probably makes almost any programmer feel like a phony in comparison. Inspiring :)

Wednesday, 17 August 2011 15:55:24 UTC

This was an amazing post. It's saying what I've always wanted to say about myself. Wonderfully inspiring. Comfort is the enemy of success and greatness.

In reference to Mike's comment, Carol Dweck was on Tech Nation a while ago, and has a half-hour downloadable podcast that I found to be a good summary of the book. Well worth the time to listen in my opinion.

I'm a mexican developer that graduated from college on 2008. Right after graduation I landed a job in the States, thinking that I was a terrific developer, after much praise from my teachers, family & friends, and I really did believe that! But, 1 or 2 months into this new job, I hit the wall. I met some of the most technically gifted developers I'll ever meet, & it was a humbling experience; I often felt stupid when compared to these guys. Even though they were more experienced than me, I was convinced that they were also more intelligent, which somehow destroyed my confidence (and I haven't got it back completely yet).

Nowadays I live back in Mexico, & I'm convinced that there are so many more things I should know by now that I don't know yet. Feeling a phoney really pushes me forward, so I keep studying, working hard & keeping my eyes open for new opportunities. It is a shame I can't see some of the guys I used to work with, they were really inspirational.

Anyways, thanks for sharing!

Carlos Rodarte

Wednesday, 17 August 2011 16:21:37 UTC

This post truly made my day. thanks :)

john

Wednesday, 17 August 2011 16:50:54 UTC

Great timing. This post is exactly what I needed, not just at this point in my career, but today. Thank you. MVC3 and Razor, here I come!

Wednesday, 17 August 2011 17:05:29 UTC

Great post. I suggest that you read David Foster Wallace's short story, Good Old Neon. It's one of the most important works of fiction I have ever read and it's all about oneman's struggle against feeling like a phony.

Jackson Kernion

Wednesday, 17 August 2011 17:14:56 UTC

Yep. Right on target. I'm glad to see other people feel the way I feel.

Dave's rabbit hole comment really hits home. One related fear I always feel is that I'm going down the wrong rabbit hole. Doesn't really matter which technology I focus on, there's always the nagging fear that I'm picking one that will fizzle and leave me scrambling to learn something new and get a new job.

I have tried to analyze my fears over the years, and I think it comes down to the chicken and egg nature of development work. A company won't hire you unless you have experience with whizz-bang technology X, but you can't get experience with the technology until someone hires you. You can break through that barrier, but it requires enormous amounts of effort beyond your normal workload. The risk is that you apply all that extra work to a technology stack that doesn't pan out. You can't wait until the technology HAS become popular, because they are like flares. They go from zero, to full light to fading very quickly. When a technology is in full burn, it is time to be prepping for the NEXT one...

The result is that you have to make shallow forays into lots of rabbit holes, then pick one for the deep dive. That way if you find snakes down there, you at least know how to find some other holes...

My advice would be to, um, find a wise old rabbit with a flare in each hand, saddle him up and ride him down the, uh, rabbit hole to Wonderland? Perhaps I have stretched the analogies too far. Or not far enough? Hmm.

this post really hit me hard. its an great piece to read, thanks a lot.from last 4 years i have been following you by reading your posts, tweets, and listening to your product casts and off course the hanselminutes, you changed my way of thinking, you are always an inspiration to push my self to the edge, today i solute you, and want say one thing only "Thank you Sir"

Ashaq Ali

Wednesday, 17 August 2011 18:17:32 UTC

Hm. Isn't life a gift (or did you buy yours)? Aren't all ideas gifts too? (If you grow and harvest your ideas somewhere, please tell me how.) And our effort, isn't it rooted in our willingness to make an effort? Where does this willingness come from? Right. It's a gift as well; some people got it and others did not. Background is a gift. (Or did you chose yours?) Intelligence, patience, kindness, health, you name it, all gifts.

So being proud of your effort is as silly as being proud of having rich parents, or having been born in America, or getting a bike as a birthday present. (Or do you think the seed that falls on rock and never sprouts is just lazy and with some more effort it would do great?) We all come to life with a bag of advantages and disadvantages, talents and handicaps, and we all make the best of what we have.

With this perspective there is no pride and there is no shame, and there is no need to be someone else. There is only doing what looks best, and learning from the experience. There are a lot of people smarter than I am, and that is great because their work is delicious (have you seen Linq and Rx?). And yes, the ability to see greatness in others is a gift too, and so is the realization you are lucky to have job.

Enjoy and be grateful. Every moment.

Marc Schluper

Wednesday, 17 August 2011 18:21:48 UTC

Didn't read all the comments, there's so many!

Anyways. I think if one isn't pushing himself to learn more and achieve greater things then they won't feel phony sometimes. But if you are trying to learn more and go outside of your comfort zone than it is easy to feel overwhelmed and under equipped.

I've been self teaching myself programming (got a masters in electrical engineering but got bored with the field - don't care to go in the management direction) and I started with VBA and am now learning VB.NET. Man, sometimes I wish I would have done a CS degree instead by its been nice to have all the experiences I've had and programming offers the ability to continue learning and continue the feelings of inadequacy.

This is definitely one of your best posts ever. I feel this way periodically (I have the same domain name problem). The only reason that I think I buy into the feeling sometimes is because I feel like I encounter people who are phony, even at Microsoft, and I worry I could be one of them.

I think it was interesting finding out that those 3 that said they didn't feel like a phony were from non-I.T. fields. I think I.T. is unique in that the rapid pace that it evolves at, there is always something new to learn and if you stagnate for just a few months, it feels like everything you learned is obsolete. At least for me, what keeps from going insane from trying to learn every new technology that comes out, is that I realize that the business world moves at a much slower pace than the innovations come at. I mean heck, cobol programmers are STILL getting hired... :) Learning a new cutting edge technology/framework/pattern in I.T. is like playing roulette, sometimes you learn something that lasts "forever" (c++) or sometimes you wasted all that time and energy for some fleeting technology (looking at you coldfusion and delphi).

Great article! It reminded me of the endless loop of learning and knowing I experienced and had explained to me while studying Feldenkrais (a somatic education technique):

1 Not knowing that you don't know

2 Knowing that you don't know

3 Not knowing that you know

4 Knowing that you know

5 Goto 1

David Evans

Wednesday, 17 August 2011 19:39:13 UTC

To be honest i felt a lot like i was not moving forward at all. I ve been developing .net since its beta. What really gave me new energy was switching platform. To opensource, the community is different. The technology broader, mpre innovative it seems. Maybe, just more pragmatic. Less 'fake', less 'marketed' . It was a hard tough deciscion since i've invested lot of time and energy in learning c#, and products like sharepoint, crm and what not. But im happier now. I live in amsterdam, or appsterdam as its becoming more and more and i love it. I have to start at the bottom, but i dont mind, im happier.My c# experience, sharepoint, and crm projects havent gone to waste it was always useful but it feels i can realize now more. Moving forward means sometimes killing your darlings, throwing away 10 years of your favorite language.It doest matter, it shows that you've got balls. I can easily pay me app with c#, but in opensource not so sure. But we'll see. Keep learning, trying, succeeding and failing.

Emile bosch

Wednesday, 17 August 2011 19:43:10 UTC

Also, the real question is, are you truly happy?

Emile bosch

Wednesday, 17 August 2011 20:04:40 UTC

It isn't that I feel that I'm an impostor (check that -- I do every single time I interview for a job), but I spend an exorbitant about of time trying not to look like a complete moron (reading, blogging, writing code, reviewing code, etc). I'm only partially successful at that so far.

Being really good, passionate, interested and involved in something for longer (10.000h anyone?) will make you realize what you don't know ... yet. It is like the ride down the rabbit hole or for the computer folks :

like the zoom into the Mandelbrot picture; there is always more details to know.

This makes ppl who realize it humble some times even feeling like a phony.It is as well caused (i think) by putting your own possibilities and knowledge into perspective of the always growing whole... so relatively seen the impression is that of your own knowledge shrinking ... in relation.

Related: http://matt.might.net/articles/phd-school-in-pictures/

Pointernil

Wednesday, 17 August 2011 21:16:17 UTC

I am in my mid-thirties, been at this stuff(IT) almost 15 years. I am the badass world's greatest phoney. I can relate to atleast 3 things (exactly as you stated) that you posted: domains, zero email, learning ruby.

Things that helped me see my real phonyness:- github- weed (haha)- a book called Radical Honesty- a man named Bill Hicks

What am I doing to feel less of a dumbass (not in any order)? - questioning myself continuously- got rid of most of my electronics/tv and stopped buying them.- got rid of all my domains kept the only the ones that I am actually working on- started using vi for all my editing - following the rule: stfu & work- trying to be genuinely interested in whatever task I am doing at the moment- stop thinking so much about irrelevant stuff and stop planning too much into the future.

Thanks Scott, it is a good post. Like @Denis mentioned Socrates was the first to announce he was a phoney. We are all merely following him.

bose

Wednesday, 17 August 2011 21:26:53 UTC

Have you ever noticed how when taking a trip somewhere (say, driving to the supermarket) the return trip seems to pass more quickly?I think the travelled ground is perceived with a lesser magnitude than that which is yet to be crossed, so as you learn the true scope of your topics of interest, your achievements to date 'feel' less significant.

As has been mentioned, it's only when you take a moment and inspect the milestones that comprise your achievments, and put them in perspective with relation to your peers, that you realise their true significance.

I can't really identify with this honestly. I think I used to, in college and maybe right out of college. But I quickly figured out that what I don't know is irrelevant. I don't know the height of Mt Everest or Niagra Falls, I don't know how many different species of ants there are or what their average lifespans are, I don't know the boiling or freezing temperature of nitrogen (although I could find out all of these things with Google [not Bing, Google]). I also don't know how to write a "Hello World" app in Ruby, Python, Perl, PHP, Eiffel, or Haskell (although I could also find out all of these things with Google), much less a robust scalable multi-tier application. So what? I actually disagree with the Polyglot Programmer philosophy. I think the industry will be much better off when we start highly specializing roles so that we can dive deep into a particular language/platform/architecture and truly become experts instead of having to spread ourselves thin over so many different languages/platforms/architectures and rarely getting past the surface.

I have been programming for a long time, since I was very young, and I do it constantly because it is what I love. As a result I am good at it. There are of course a ton of things that I don't know, and I am always trying to learn more (which is one of the reasons why I come to this blog). No matter how much time I spend studying, there will be a lot of things that I NEVER know. That doesn't matter; what matters is what I DO know, and how I use that knowledge.

"Hell, no. I work my ass off. I own up to what I don't know, admit my mistakes, give credit freely to other when it's due and spend a lot of time always trying to learn more. I never feel like a phony."

I think that pretty much sums it up for me.

David Nelson

Wednesday, 17 August 2011 22:08:33 UTC

The trouble with the world is that the stupid are cocksure and the intelligent are full of doubt. - Bertrand Russell

Probably one of the best blog posts of the year [insert suitable award here]...

First off, we tend to as people to measure ourselves rather harsher the older we get - is it because life's taught us so many lessons or just because that youthful "invincibility" wears off? who knows, but it's definitely a fact that we do.

Now, i used to have huge self-esteem issues...i was a failure...i couldn't provide a suitable standard of living for my family...i was selfish. One of the things I learned was not to measure myself by my failures, but by my successes and things slowly started to turn around. I can now provide a decent level living for my family....am i a phoney. To some extent yes...do i complete every project I start (or even start those i intend to start)? definitely not...Does it make me a phoney? I'd like to think I'm not, but deep down that doubt always lingers...should have...could have...would have.

Life has a tendency to throw you curve balls and how you react is what's important.

I am never a phoney...but I am at various times a fool, a student, asleep or wise. He who knows not and knows not that he knows not is a fool; avoid him. He who knows not and knows that he knows not is a student; teach him. He who knows and knows not that he knows i asleep; wake him. He who knows and knows that he knows is a wise man; follow him.

There are also days when "delusional or psychotic" (perhaps both) apply - just ask any of the people who work for me, or that I mentor....

Yep I feel like a phony often. Been a professional developer for almost 8 years now and I feel like any day they are going to send me back to my old job in a call center.

I think perspective here is interesting. Scott, I read the things in this post that make you feel like a phony and think "really?? 3 successful domains and multiple spoken and programming languages and YOU think you are a phony?". But I know there are people I work with who would feel the same way about me admitting I feel like a phony.

I think how you think of yourself and your competency level is in part determined by who you surround yourself with - both physically and virtually (in the case of developers). You work at Microsoft, which like all the great technology firms of today has a LOT of very smart people, and you yourself recognize this and point out the insane smartness of some of your peers.

I think surrounding yourself with these types of people makes you reevaluate the 'I'm one of the smartest guys in the room' benchmark that everyone has in their own head to bring you down a peg or two because you're in the company of geniuses. That's quite natural. I think most developers also 'meet' and interact with the best of their profession on sites like StackOverflow and often recognize genius in others there, so you probably don't have to work directly with others to appreciate this. The internet has made meeting and recognizing the talent of other programmers no longer dependent on your geographical location.

If you work with idiots all day you might think you're "the bomb" - but surrounding yourself with some of the smartest programmers on the planet in turn makes you smarter too, because you strive harder to be the best person you can possibly be. I know which group I'd rather be in !

Anthony Smith

Thursday, 18 August 2011 01:04:14 UTC

awesome post. if you don't feel under water from time to time you aren't working hard enough. i think phony is a bit hard, a lack of confidence is a very different thing - it does not precede a phony, over confidence might.

I think for me the issue boils down to time and ambition. I can think of 101 improvements to the programs I write and how I would implement them. I can think of 101 technologies or languages I would like to learn. I can think of 101 personal projects I would like to implement. I only have time to do a very very small amount of these and not managing to do everything makes me feel a little phony.

Perhaps this is a closer opposite to the Dunning-Kruger effect because in some ways you have made the right decisions and prioritised well but always feel you can do better so have failed.

Wow, really struck a chord with this one. Thank you very much for writing this. I too, like many others here, really identify with this "syndrome" that I had never heard of before. I can also relate to a lot of comments here - It's good to know I'm not the only one!

Jim

Thursday, 18 August 2011 02:10:23 UTC

With regards to 27 unfulfilled domain names, I only currently have 5 unfulfilled domain names that would be a great business. As we age we hit a huge time crunch with outside of work obligations and the reality of implementing a business idea is that it takes more free time than we have available. Do I want to code 3 hours on a side project after completing a 9-10 hour workday. As I get older, the answer increasingly becomes no. I kinda blame MS for offering too much choice but that's a rant for another day. In short, wether using MS stack or not I feel we lose the joy of mastering a technology because often there is a newer tool every other day. This has to be one reason we feel like phonies on a regular basis. I definitely enjoyed this post.

All. The. Damn. Time. I'll solve a particularly complex problem, and once I solve it, it seems so easy. I then think, "This isn't so hard. Why did it take me 2 days? I'm sure someone else could have done it so much more quickly. I feel guilty charging my client for 16 hours when it should have only taken me 2."

I really appreciate you blogging about this. I struggle with this regularly. Seeing someone at your level go through the same feelings is something I will hold onto. Next time I run into that difficult problem and start doubting my abilities, I'll think of this post.

I thought this was going to be your iphone rant post :-) Very glad it wasn't.

I think you're spot on. I'm not sure if it's a western culture thing, or a working class culture thing, but I always felt as though I was only one discovery away from being 'found out'. At one point I decided that it wasn't necessarily up to me to assess my own capability in every situation. If my boss is happy with my work, if my peers think I'm worth talking too... maybe that's enough.

Such a great, great post. I've had a really hard time with this throughout my career in IT (I wouldn't say that I noticed it in school). Before, I would try to combat it with long nights at the bookstore studying. Since I had children six years ago, it's been so hard because I'm not really willing to leave them alone to pursue my career goals at night.

This post really helped me today -- the post and all the responses -- thank you. There certainly is comfort in numbers. I like the rabbit hole analogy. But wouldn't you know -- I'm already telling myself that it doesn't really apply to me. All of you are so smart that you simply know what you don't know. But me? I shouldn't even be here.

Like most of the comments above, I feel this way often. Being in my mid-late 30's (37), I have been going through what seems like a perpetual midlife crisis for the past three years. My wife is a stay at home mom, we have our second baby on the way in January and I feel like a fraud in the more urgent sense of "oh shit, this is all going to fall apart and everyone is going to realize I can't even support my family". But I have and I will continue to do so. Over the past month I've really been thinking about impostor's syndrome and I've realized that many people in the IT industry have this because of the company we keep. We all read techcrunch, we all read hacker news, we follow influencers on twitter, read their blogs, etc. We inherently surround ourselves with people that are influential to us because that is how we learn. Fortunately (double edged sword) our industry is still so new that there is so much room still to carve out a niche. We're just in the wild west... robbing banks and holding up trains.

I find it really interesting that I feel like the biggest fraud and idiot on twitter with the group I follow, but on Facebook (where I'm friends with all of my real friends with "real" jobs), they think I am some kind of mad genius. The feelings are all in how you position yourself, too much of one thing (reading influencers) can lead you to feeling inadequate and stupid. On the flip side, too much time with people that don't know PHP from PCP and you feel like you can't even talk to these mere mortals. Point being, when you feel down about stuff or your confidence is running low, call up one of your accounting buddies and tell him/her what you did today... they will certainly be impressed.

Mike Hughes

Thursday, 18 August 2011 06:28:42 UTC

I just started as a developer 4 months ago and I will be graduating with my degree in Software Engineering in one week. I feel like a phony all the time. The funny thing is I have not accomplished anything or done anything to make myself feel this way. When I got this job here there was no prior experience I could bank on in the interview but my classes and a timed test they gave me. Truth is I just got really lucky because they knew exactly what I was capable of when they hired me based on the test. I still feel like a imposter though! I think I feel this way because I started my IT career three years ago and just barely started dev. I meet people all the time that say stuff like, "I been programming since I was 12". Well I have been only programming since I started school a few years ago and I'm 33 now. At the same time I am highly confident and believe I can do anything I put my mind too.

Great article Scott. I feel the problem I have is that everything moves on so quickly and it is so easy to get stuck in a job where you have been left behind. It is astonishing how much a developer is meant to know these days. I feel overwhelmed by it all to be honest.

Arame

Thursday, 18 August 2011 08:13:01 UTC

I've been stuck on a task for the last week, which shouldn't take more than a day. I just can't help it, the code is bad and ugly and not even mine. Instead I try to find all kind of internet distractions to keep me away from a regular work task.Your post really did it for me though -- I am going to do this today. There are many ways of achieving satisfaction from your work life, but the most important thing to get straight first is to keep a positive mindset. Yes, the code is bad and ugly and hard to understand and that's a challenge, for me, to point out to myself how not to design things and while at it - slowly refactor it.Thanks Scott!

I have one hypothesis about why (according to your anecdotal evidence) IT people might be more prone to this syndrome. Consider the following scenario:

1. A bright kid gets a PC and starts to program (in my case that was IBM PS/2 286 + QBasic).

2. ???

3. Profit!!! (i.e. getting a good job in the IT industry)

What actually happens at step 2. is up to ten years of adults yelling at this kid that he must do his biology homework, and that he will never get anywhere in life if he doesn't stop playing with computers all the time. That can teach this poor kid to misjudge the relative importance of IT skills.

This is an excellent post. Long back when I was a junior I got hauled in for a counseling session after a run in with a senior. My defence was: If I can keep myself updated, why can't he? I know better now.

This is an excellent post. Long back when I was a junior I got hauled in for counseling after a run in with a very respected senior. My defence was: If I can keep myself updated, why can't he? I know better now.

David Nelson brings up a good point. it's not really about knowledge. it's about the ability to learn. once i gained confidence in my ability to learn it became easy to say: hey, i have no clue, but i can go and find out. i'd go as far as saying that all those who are looking to hire people based on knowledge are a big part of the problem. that is what is causing so many people to feel like impostors in the first place. because we are asked to demonstrate knowledge. i think that all who feel like impostors only feel so because they feel they are judged on their knowledge. if they could feel that they are judged on their ability to learn then they would feel much better.

now i can't control how other people judge me but i try to influence it by stressing the ability to learn and by picking jobs and projects where the employer or client understands that i'll spend some time learning before i am going to be productive. and i pick projects specifically because there is something i need to learn.

if i am in a situation where i make a claim that i know something, sometimes i feel like an impostor too, but most of the times i can avoid that by stating upfront that i don't know.

greetings, eMBee.

eMBee

Thursday, 18 August 2011 19:04:55 UTC

Hello,

I just wanted to say thank you for your wonderful post! I am launching a new business this week and your words really touched me. Thank you!

oSo with the simple rabbit hole thing, as you learn new doors open... you can't know everything. You can't see the while Mandelbrot detail in one scoop either. But over time you can cover lots of ground. The fact that so many dev don't have a degree in CS isn't amazing, it's obvious - there has to be a passion for learning and applying CS info.

To learn more I spend lots of time in local Users Groups and also LIDNUG.org - LinkedIn.com's DotNet Users Group.The constant learning is great; it keeps one's mind fresh. But it is natural to feel there's SO much more you don't know.

I spent weeks getting my arms around WF4 WCF Services... finally the mental breakthrough occurred and then, for a long moment I got this total mental high feeling freed of bonds holding my feet in the muck of our great mother earth... I was levitating 1000 feet up having accomplished the near impossible... then the next day occurred.

We always hit blocks and spin our tires trying to figure out real difficult concepts. That's what makes us human, that we can rise above the feeling of not knowing, to accomplish very good stuff! It's natural and a real driver if we're constant learners to find solutions we feel bad we don't already know.

It's great to work with really smart people too, like occasional pair-programming, gaining cooperative co-knowledge. Typically like a wolf-pack attack - one person goes strong, then the other takes that to the next level, and so on. If you keep at it you will get these spikes of great feelings when you hit the success points. It takes you to a more even keel.

I've only read some of the comments and it seems that some folks have an issue with the word phony. I guess it does have a negative connotation to it but I think you're sentiment rings true. I have often felt the same way in my 13+ years in this field. Maybe it's the nature of our constantly changing field mixed with the constant flow of "expert-ism" coming from all the different feed sources we have available today. That definitely adds to the pressure a lot of us feel with this need to "keep up" with everything.

I think it's important that people here stuff like this though and it even makes more of an impact coming from folks like you.

People need to know, understand and be ok with the fact that there will always be someone better. It's not about winning. It's about growing. It's about becoming better everyday. And if you don't have that desire to grow, get out of the field before you become a bitter dinosaur saying get off my lawn.

In the end, as others have already stated, it's that balance between humility and confidence that will propel you in this field... instead of becoming suicidal or a raging a**hole.

I think your last statement said it all, "Fake it till you make it." I think that a phony is someone who tries to be something they are not. Like wearing a mask to disguise the truth. If you are genuine, have good intentions, and have no malice, it's okay to not be fully confident or to question your intentions or your abilities.

'I think the more you know, the more you realize just how much you don't know" - In that same context, I feel like the more you know, the more pressure you put on yourself to be that much better than the next guy. Sometimes you feel that the pressure is coming from a pier or boss or client when it's not, it's all you. When things go great, you feel like you are on top of the world. When things aren't going so great, it's easy to burn-out and conclude that you suck. It's a roller-coaster really. But the highs more than make up for the lows. At least I think they do ;)

I have this fealing of being an imposter a lot. I'm from the Netherlands and I've been in software development for over ten years now. I've done many things from simply writing code up to being part of a management team. I've worked as a consultant and currently I'm leading a small team of developers to develop cool new things.Many times I experienced great stress because I was asked to do things I've never done before and still I succeeded. I know I've written some awsome code and completed some significant projects. Still, today, I do feel like I should not be leading a team or architecting these new solutions. I also have doubts about achieving my career goals. Hell, I even feel like a phony writing on my own blog.

I thing I do have missed out on opportunities because I thought I would not be good enough. But hey, in the end I do make a nice living out of writing code and comming up with yet another software product. And as long as companies are willing to pay me a considerable amount of money to come in and do that every day, I'll just keep at it.

As usualy a great post and a good contribution to the community.

P.S.: To those posting that this is all irrational: Yes, it is. That's why it's a feeling.

I don't think anyone who is a good programmer can ever relax and feel like they are done learning in this business. In this day and age when new programming technologies are emerging everyday (really - I feel like a new technology emerges every day) you need to always feel that urge to go and find/learn those new things you don't know about. A good programmer needs to have a really large number of skill sets also.. and so.. if you choose to focus on one area - let's say Database Administration - well .. you would be an even better programmer if you new how to do front end application programming, wouldn't you?So it is all a personal thing and how you feel about reaching the top of your personal professional hill .. or you choose to go to the top of the entire professional hill.

FastestBusiness

Friday, 19 August 2011 19:31:58 UTC

Excellent article and I find myself very often in this situation. I believe it was the ancient Greek philosopher Socrates that said: If I draw a circle and inside that circle is my knowledge, outside of it is all the stuff I don't know and the line of the circle is what I know that I don't know then as my knowledge expands so does my awareness of how much is out there that I don't know....

Marko

Friday, 19 August 2011 19:36:45 UTC

But if I may add to my previous post, this all doesn't change the fact that your knowledge and skills are way grater than mine... :) Otherwise you'd probably be reading my blog not the other way around... Cheers!

Marko

Saturday, 20 August 2011 20:07:14 UTC

Dave's comment is spot on.

The more you know, the more you realize just how much you don't know.

Years ago, I had a slight disagreement with someone I worked with about interviewing. My claim was that it was pointless to ask someone if they "knew X" since their answer wouldn't matter. Rather you had to ask them about aspects of X and/or what they had done with X, then decide for yourself. So I conducted an experiment. In a small (about 40 people) shop that was primarily Unix focused, I went around one day and asked everyone in the company to rate themselves on a scale of 1 to 10 on the topic of "do you know Unix." Well, our receptionist rated herself a 10, reasoning that she logged in every day and read her mail. By contrast, our lead engineer, who was responsible for much of the kernel work, rated himself a 3 or 4, reasoning that at that point he was fairly familiar with the SVR3 kernel, had mad a few expeditions into the SVR4 kernel, but hadn't really looked at any of the BSD derived kernels. Their perception of what it meant to "know Unix" was light years apart.

Since them I've noticed the pattern again and again. There's an inverse relationship between competence and confidence.

I just wanted to say thank you for this post. This REALLY resonated with me as I am in the process of recuperating my confidence after having it fall off a cliff. I just got out of a 4 year job that drained me of my skills, while giving me the illusion that I was great. I seriously thought I could handle any problem, however I had never even heard of TDD, Agile, DDD, ATDD, MVC, MVVM, SOLID, etc. My main job duty was SQL (part of the reason for the skills-drain), however, when I did have to work on small programs, I tackled them very procedurally and made them work. Everybody gave me praise, so I did not strike out and look to better myself (thinking I could tackle anything anyway). It was not until I finally took a deep look and realized that I only really knew how to hack a program and write semi-decent SQL (this is one area I am very confident in, at least). In fact, it wasn't really until a job interview of mine was nearly lost in the HR screen because of my atrophied software skills. Since then, I have been reading as much as I can as quickly as I can, while going to any user group available. I even listened to all (with a few skipped here and there) of the Hanselminutes from the beginning at 2x speed in about a month or two. However, the end result of this renewed vigor for learning...I am consumed with a feeling of almost despair. I now feel that I cannot code anything properly. Sure, I can still hack out code and make things work. But, I am trying to write cleaner code, yet having trouble breaking away from those procedural thoughts. I know enough now to spot the code smells, but I have a heck of a time trying to actually refactor it. I feel I get 80% of the way using the theories, patterns, and practices, but cannot lock it into a great design. I persevere and hope that drives me towards the appropriate answers and experience, though. I guess it just seems that everybody I listen to seems to have all of these methods locked down, and I am just flailing in the wind. It is at least comforting to know that even some of these giants feel the same way to a degree. I do realize and agree with others that it is this feeling of inadequacy that drives us forward, helping to create success, though. It is a vicious cycle, but I think I would rather be in that cycle than the one I just left. Ignorance is not bliss if you ask me :) That being said, I feel that anybody who appreciates this blog entry should also listen to the This Developer's Life episode on Education; the second half with Seth Juarez. His take on education and how it can humble a person really fit in line with this. Also, I definitely think that this would make for a great episode of This Developer's Life. I know I would find it an interesting topic, and it fits your current theme of one word titles! As far as you are concerned though, I can tell you personally that through you I have picked up on some great GTD tips, programming tips, and how to take advantage of hotkeys for productivity tips (among other things). At the very least, I thank you for all of your time spent giving back to the community and want you to know that I appreciate it greatly!

I am not a programmer. I work in the Nuclear Industry. The idea that I feel like a phony sometimes was I thought, unique to me. I am under-educated for my career field so I laid my angst down to that. Reading through the blog and comments however convinces me you nailed it when you said it was really a recognition of what you did not know that made you uneasy. Rest easy, it is not unique to the IT world, or to the Western world either. Staying busy to learn all I can helps with the phony feeling but ultimately causes it because, as you know, the more you know the more certain you are that you do not know enough!! Keep writing, keep learning, and keep feeling phony - it will keep you pursuing new knowledge.

David Faulkner

Monday, 22 August 2011 03:36:48 UTC

Thanks for this post. Now I feel I am not alone. I have been following you for last few years and reading your blogs and listening to podcast, that helps me to keep my knowledge up to date.

As Dave Ward said "I think the more you know, the more you realize just how much you don't know." this is absolutely correct.

Thanks for this, Scott. There are days where I've thought about how and when I'll "get found out". I've even discussed it with my sister and dad (seems to be a family trait). It's great to know that others feel the same way.

I've felt this way at various times pretty much since I graduated with my C.S. degree, and that was almost five years ago. Amusingly enough it was hanging over my head this morning as I got into my car to come to work this morning, so seeing this this morning has been particularly relevant for me.

I think the thing that helps me deal with the "phoniness" of it all, besides a fair amount of prayer, is that I know that I don't know everything, but I know that I can adapt and learn what's important for me to accomplish my work. I won't claim to do a lot of extra-curricular activities related to learning new things(and maybe that makes me a heretic), but I do learn a lot by having tasks presented to me in things that I haven't worked on before. Being told that I need to do X with Y to accomplish Z, when I've never worked with Y, much less done anything like X in anything else, motivates me to learn Y and how to do X with it.

I will never know everything, and I won't bother trying to know everything, but I can know what's needed for my job to be accomplished, and ultimately that's what my employer pays me for.

Kevin Clayborn

Tuesday, 23 August 2011 00:20:02 UTC

Excellent post! I've never come across your blog nor am I anywhere related to IT or programming, but I thoroughly enjoyed reading your thoughts. One of the partners in our firm emailed this to me because she is the only one of the partners I typically confide my feelings of "phoniness" to. We continue to have success and I feel I am the least qualified to lead our team yet these highly capable people trust me with their careers and reputations.

One of the other posters commented:

"Why can't a person be confident that that person is good at what that person does, simply because that person has been doing that for a long period of time, making that person a specialist in the field of what the person does best?"

I think it's pretty simple and the reason why is that those of us driven by success definitely care what others think about our work. Also, we know there is always either someone better than us or someone who has their eye on us to become better.

As my mother used to say, "If you ever find yourself being the smartest person in the roof, you'd better get the hell out of that room and find some smarter people to hang out with."

Great reading and thank you for sharing your thoughts with us.

Michael O - Bellevue, WA

Michael O

Tuesday, 23 August 2011 00:28:51 UTC

So very true. Every time I start a new project or major task that is new I feel like a phoney. But that is ok. It takes some dedication to get up to level with new ideas / technology. After that you will kick butt because of your wider knowledge and experience. It is very true that the more you know about technology, the more you realize you need to learn.

I think in a lot of cases we measure ourselves against others who may be doing the same thing. But you don't have their same experiences, nor do they have yours. If you are a consultant and coming in new to projects all the time then the domain expert who resides in the company will always look like a diety to you. But they usually are very specialized, and don't have the broader knowledge to solve the problem (or why would they have hired you?).

There are lots of different types of experts. Some can code, some can't. Doesn't mean one is more awesome than another, they are just different. Respect each persons contribution, and don't forget to count your own unique contributions as well!

Thanks for this Scott. You have no idea how good it feels to know that I am not alone! Especially hearing this from somebody so high profile. I would have been afraid to talk about this with peers in case it put me in a weaker position in their eyes. I actually showed this article to my wife because she knows my greatest fear is this irrational belief that one day I'll be "found out" and exposed as not knowing anything at all. In fact, I have lost sleep and kept envisioning scenarios of being found out at work - this tends to happen more when I start a new job or a new project. I am competent and capable and qualified and smart, so it is irrational. I get praise and promotions at work but it doesn't make the feeling go away. I think the passage you quoted at the end, about the more you learn the more aware you become of all the things you don't know, is something to always remember. Great article. I think a lot of people are paddling furiously under the surface.

Thats for the post Scott. The Imposter Syndrome and Dunning-Kruger a things I constantly battle with myself about. Its good to know I'm not alone.

Do you think something about our field (pace of change, competition, etc) exacerbate this feeling? If I was an accountant I wonder if I would struggle with self doubt as much.

Its a fine line between having the phonyness provide motivation to continue to learn and challenge yourself and having it paralyze and overwhelm you. It effects me in both ways, unlikely in equal measure. I tend to believe overall the syndrome is negative.

In the actual day to day software world most people don't know shit. They exist in their little world and their bosses are also ignorant. It's incredible. These are people making close to 6 figures.

I am a good programmer and I have solid grasp of technologies (web and otherwise, thought mostly web). There is no employee at my work even close to my level of aptitude. Couple that with discipline and it gets silly.

This is not a brag, humble or otherwise. It's the truth. I'm not great, they suck.

I have no doubt I could get another job in a few weeks. I am not an avatar of great coding. I'm just someone with 12 years of experience who is good at their job. Wherever I would be hired would be stoked to have me. If they wouldn't it would be because of a weird culture or weird management.

If you have experience writing and delivering real software projects you have what you need.

R Dub

Monday, 29 August 2011 02:30:14 UTC

Thanks for a great post, Scott. I've struggled with feeling phony many times. Your post, and the many comments, are helpful.

Your best... post... ever, the one to rule them all, insightful, thorough analysis, some good links and relevant quotes, motivational. Thanks!

At work I'm the guru and man... sometimes I feel like "any day now they will find out that I didn't cover all bases", it's almost paranoia. But then when my job stresses me I think "I know I know a lot, so I can go anywhere I want."

So I think we all know what we are worth, but sometimes the wrong side of the brain is talking and we are happy to listen.

Thanks for this post!

Mike

Monday, 19 September 2011 16:55:00 UTC

Thank you for this discussion. It was oddly therapeutic.

Nothing is so inspirational as hearing that other professionals experience this as well. I excel at my job. People compliment me all the time. And I feel--well, like I'm standing in front of a gulf of things I don't know--because I am.

When people emerge out of that ego bubble of their twenties, when they think they are gods gift to code, it's hard to swallow when they start to realize how much you have left to learn--and not only that, but the true fact that you simply /can't/ be an expert in everything.This is a difficult fact to learn when in IT, people want to hire confident experts, and in that regard, a large ego (even if built from a position of ignorance) can be an asset.

In the end, jobs are landed through overconfidence, but careers are made through modesty.

Thanks for sharing this. It helps me to maintain perspective to hear that you languish over the loss of your language fluency although I love to tell people, "This awesome guy Scott Hanselman? He knows 4 languages. Wait, that's 8 languages". I think sometimes I even go higher! Your honestly and humility in your writing, podcasts, tweets and IRL interactions have certainly influenced my life journey in a positive way. Keep it up!

We all sometimes don't feel like the smartest at something or the best one to do the storytelling but when we do share and someone responds to us talking from the heart, it confirms that we are in our best form when our desires and passion match our actions.

I still remember the first time I said, to myself, "I am not a phony" and it was a great moment to realize I knew quite a bit about technology. That was a turning point in 2004 and I went on to get my MCSA the following year.

I really enjoyed this post and appreciated the courage it took to write it. Every single one of us wrestles with insecurity from time to time, but I think it's fair to say developers struggle with it more than the average Joe (with the obligatory disclaimer that there are always exceptions). I'd like to chime in with two additional thoughts if I may:

1) Developers should probably reserve a bit of the blame for their own insecurities. We're often eager to pounce on others based on superficial standards. I've been through MS loops both as a vendor and FTE, and on at least two occasions I came out knowing the interviewer had no earthly idea what I was capable of. Preconceived notions and grand assumptions have a way of coming back to bite us. If we're hasty in our assessment of others, we shouldn't be surprised when that manifests itself as insecurity in our OWN abilities.

2) We control the extent to which we fall prey to the "phony" syndrome. For years I poured so much energy into trying to convince people I belonged at Microsoft, that I could hang with the big boys. But I've come to realize this: if respect from my peers ever hinges on my familiarity with v3 versus v4 of Technology X, I've got to question how valuable that "respect" truly is.

I'm enjoying my time at MS now more than ever, mostly because I'm perfectly content in divulging my strengths and weaknesses (I have plenty of both). I guess you could say I'm a recovering phony. One thing's for sure, I get my butt kicked every day by some of the smartest people on the planet. It simultaneously humbles and motivates me, and I wouldn't have it any other way.

Interesting article. I found some similarities with HBR.Org 249 Podcast "The Hidden Demons of High Achievers". One of the key traits of successful people is to know yourself and this article has really given me (and others) something to think about.

The book 'The Invisible Gorilla' touches upon the illusion of knowledge/confidence with various studies on the subject. It's very eye opening, so much so that I probably just got that portion wrong I referred to : )

This sentence:That can manifest itself as feelings of fraudulence when people are calling you a "guru" or "expert" while you're internally overwhelmed by the ever-expanding volumes of things you're learning that you don't know.

This really speaks to me. I quite often feel overwhelmed by what I don't know to the point I find it hard to focus on something and attack it.

I went from being a 'developer' to an 'architect' a couple of years ago and still feel like I'm in over my head most days.

Still at least it keeps things interesting and I haven't been shown the door yet, so I guess I'm doing ok! ;)

Smash

Tuesday, 03 January 2012 22:57:18 UTC

very timely. I often think about this, and i think there is the humble wisdom of maturing, when you realize the more you know the less you know, mix that with often crazy large expectation we put on ourselves, (and then expectations from others, whether legitimate or not (i.e from a competitive set of peers who work crazy overtime).

Also our human finiteness, with knowledge we "should" learn keeps growing exponentially in a rapid fashion.

I don't think i consider myself a phony, but do often feel disappointed and insufficient, though in this industry i look at many and see a lot of "hacks" who call themselves professionals that i think are truly phony ;)

Wow, thanks for this blog post. My husband sent it to me after I came home and started talking about how I felt I wasn't good enough at science to be pursuing it as my career. Having read some of the comments I think that its more than just being in the IT field (I'm a doctoral student earning my PhD in microbial genetics). Perhaps this feeling of being phoney is more common for people who are in fields where they are constantly required to create some product (a piece of software, a scientific publication, etc) and then re-evaluate or improve upon that original product. Since both IT and science require objective criticism of ones' own work how can we help but feel inept at times? But its taking that step back and seeing what you could have done better than drives you to do it better next time, we just need to remember to stop and see what we also did well.

GradStudentGal

Sunday, 09 December 2012 10:40:23 UTC

"It's healthy if it's moves you forward."

I have nothing to do with IT, I worked in an educational setting. I dreaded going into work every morning for fear of being 'found out' by the kids or my colleagues. I stuck at it for some time but eventually the weight of this sense of being phoney became overwhelming. I quit.

What strikes me as interesting in your piece and in the comments is how most, if not all, contributors talk of being driven on to achieve in the face of this 'phoney' sensation. "I work my ass off" / "it humbles me and motivates me" etc. In my case I worked hard but the imposter sensation grew until it paralysed me and in desperation I turned away rather than towards it.

If you're looking for a trait that binds your IT community I would suggest it is not the incidence of 'phony' feeling but the form of response to it.

rich

Friday, 21 December 2012 09:31:21 UTC

Interestingly, Roger Waters from Pink Floyd also thought he was a phoney. Not only that, he developed a deep disdain for his fans for worshiping this phoney - at one point he even used to spit on his audience. Did you ever have disdain for your followers? Spit strings at them perhaps:)? Yeah i too sometimes feel like a phoney. I think it stems from insecurity at some level. It is perhaps fuelled by the realization that we know jack shit, and when juxtaposed to the beleif of knowing it all in your youth, its jarring. This phase is the anti-synthesis. The synthesis will surely follow....

Pete

Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.