Sign in
Log inSign up

You will never know half of what you think you should

Ken Gilb's photo
Ken Gilb
·Feb 15, 2019

Impostor syndrome is a real thing in software development. After 20+ years in the industry I still catch myself thinking “I should know this, how come I don’t know this yet?”

The truth is that our industry is constantly changing. There is always some hot new framework or some en vogue methodology that is being hyped to the community. When you read about something new online it can seem like EVERYONE knows about the new hotness. You think to yourself: what is this and why am I just learning about it now? Does everyone already know about this and why am I the last to find out? Last year, it was React for me. But I have gone through this process with many technologies and frameworks over the last 20 years: Xamarin , .net core , .net standard , portable class libraries, MVVM , MVC , aspect oriented programming , functional programming , object oriented programming , composition over inheritance , test driven development , agile , scrum , inversion of control , containers , continuous integration , git , DevOps , RPC , web services , REST , json, XML, NoSQL, Document databases, websockets, ajax, handlebars, mustache, jquery and many more technologies that have come and gone the way of pascal .

And those are just a fraction of the things that have been new to me, over the years. I could fill this page with technology and languages that have come and gone. The point is the software industry is hard and it’s constantly evolving. No wonder it can feel like you are an impostor in your own industry.

I love learning about new things. You have to if you want to survive in this industry. It’s OK to tell yourself that you don’t know everything, you can’t know everything. Your peers around you might know more/less/different things than you do. Embrace that. Learn from each other. When I have to explain or teach something to someone else, I always end up with a deeper understanding of the subject.

When Impostor syndrome kicks in it can be really depressing. When browsing reddit or stack overflow or other online communities you can find the mentality of “what an idiot, this guy doesn’t know x”. Developers online can be cruel, even when they don’t think they are. Sometimes your own insecurity can make you feel that people are putting you down when they may not be. The internal struggle can be constant and relenting. Your co-workers may even contribute to this feeling.

Don’t put your team members or other developers down when they don’t know something. Instead, take it as a learning opportunity to grow together.

In some working environments you constantly have to defend yourself, your decisions or your code so you don’t look (or feel) stupid to the other team members/management. This will just breed insecurity and everyone will end up looking out for themselves. I have learned over the years that no matter how good (or bad) you are, you will fuck up. So will your co-workers. It’s how you handle that situation that will make for a good or bad experience going forward.

A terrible working environment is one where you talk shit about each others mistakes, or you say things like “I can’t believe how stupid Charlie was the other day. What a dumb ass”. If you hear a co-worker or boss talking down about another employee, you can bet your ass they’re talking about you too. This can only breed insecurity and cause everyone to circle the wagons around themselves. It’s toxic. Try to change the culture or get out if you can.

A pleasant working environment is one where the team members accept that they can’t know everything, that you can learn from one another and that we’re all working towards the same goal. Strive to be this kind of developer. You will never know everything there is to know. Accept that. Learn what you don’t know and teach what you do.

In the end, know that you’re not alone in this feeling. There are a lot of people out there who feel it too. As I have aged I have come to accept that I there are things I don’t know and things that others will know that I don’t. How you choose to react to that feeling will make or break you. I choose to accept my limitations and strive for additional knowledge.

-K