Battling The Imposter Syndrome within CS

Rohin Bhasin
Student Voices
Published in
7 min readJun 20, 2018

Software is eating the world.

Marc Andreessen (co-founder of a16z, UIUC alum) wasn’t wrong when he said that quote in 2011, and since then software has only become more prominent as it penetrates nearly every industry on the planet. With the promise of high paying jobs, plentiful career paths, and great benefits in Silicon Valley, thousands of people pursue Computer Science as a career path — and for good reason, since software engineering roles are expected to grow by 24% between 2016–2026.

It’s no surprise, then, that there are more and more CS degrees being awarded every year, and CS departments around the country are becoming increasingly competitive and rigorous in order to best prepare students for programming in the real world.

In this growing competitive atmosphere, it’s incredibly easy to feel unqualified, unwanted, or inferior to others in the same major. If you have ever felt (or feel) this way, you’re not alone.

When I first joined the CS department as a freshman here at UIUC, I was overwhelmed. I was surrounded by people who had been programming since they were in middle school. There were students that had competed in CTFs and hackathons, had 30+ projects on Github, had interned as Software Engineers, and even students that had started their own companies.

And then there was me. I knew enough Computer Science to build a class in Java and that was about it. Of course, the department emphasized that you didn’t need to know anything going in and that they were very conducive to beginners, but I still felt that there were expectations I had to fulfill, and that I was lacking in my technical capabilities.

This was a classic case of the imposter syndrome: a psychological feeling experienced by people all around the world when they join a new school, team, or organization. When there are a ton of other smart people, it’s natural to feel like your achievements and qualifications are nothing in comparison, and that you’re almost a “fraud” in your position. Of course, none of that is true, and actively working against the imposter syndrome can help you regain your confidence and believe in yourself again.

Looking back on it 9 months later, I realize that I’m not the only one who felt this way. So, as the Fall semester approaches, I put together this list of tips to help new students (and old) get over the imposter syndrome early.

Realize that you’re not alone.

College can be really intimidating. Students come from all over the country, all of whom (especially in CS) were certainly among the best and brightest of their respective high schools. Some students have been coding for years, and some students are coming in without even knowing how to print “Hello World!” to console.

With this wide range of programming backgrounds, there are certainly people of the same skill level as you, just like there are people with less experience and people with more (P.S. A lot of the people that may act like they know more really are in the same boat as you, they just know the first lines of Wikipedia for a topic or a subject.). The point is — there are plenty of people with the same background as you coming in; everyone were admitted for a reason. Coding experience coming into college doesn’t ensure success, and lack of coding experience doesn’t imply that you will struggle. Everyone tackles college differently, but the most important thing is that you’re always trying to learn more and making an effort to work with others.

Know that technical aptitude and ability matters more than technical knowledge, especially in the initial stages.

I’m not going to lie — many of the initial interactions you’ll have with other CS majors (particularly those that think they’re the shit because they’ve written 10 apps or know 8 languages) will seem like dick-measuring contests. Everyone wants to flex that internship they had or that company they started — don’t let this discourage you. It may seem lopsided at first, but at the end of your four years all of you will be in the same boat, with tons of programming experience and top jobs around the country.

The important thing isn’t what you already know, it’s about your ability to learn, your ability to solve problems, and your ability to figure things out when you need to. CS is an incredibly dynamic field; tools & technologies come and go, but the skills of a good software developer are what stick. Companies won’t test you on what languages you know or what apps you can make; they want to look inside your mind and see your thought process, your problem solving ability, your response to adversity, and your general passion for learning and programming. These skills are what matter the most — each company has a different software stack and different tools, but seek similar qualities in a successful student and engineer.

Get involved with the CS community.

One of the best ways to learn more is to get more involved with the community. There are likely numerous organizations and resources put in place for you — a new student, looking to learn — to take advantage of. So, use them! Join a club that teaches web development, participate in a hackathon, and go to tech talks (Hint: Joining Facebook groups for the main Computer Science organizations at your school is a great way to hear about events happening in the community). These may sometimes seem boring, but sometimes you can learn a ton about a new field and leave with a newfound passion or interest. Never be afraid of “not knowing enough” — it’s events like these that help you learn more.

Learn from your peers.

This one’s my favorite — learning from those around you. Instead of being intimidated by those that have more experience, befriend them! This can go hand-in-hand with learning from the community, but surrounding yourself with people more experienced than you is often the best way to grow the most as a student and a person. Make good friends that you feel comfortable learning from, that are experienced but also helpful and kind. These are the best people that will help you become not only a better programmer, but also a better person. This leads me into my next point…

Ask questions.

This is probably the most important tip of all — if you don’t ask questions, you can never learn! No matter how “stupid” you think a question might be, ASK IT! Even if the answer is exactly what you expected, you may end up learning more based on whomever you asked’s explanation. You can ask these questions in Office Hours, on Piazza, or even ask some of those friends from the previous tip.

Asking questions, along with my helpful friends, is what helped me develop my technical knowledge the most and learn a lot super quickly. I made a friend early on first semester (s/o to you, Brian) who had been programming for a ton of time and knew a ton more than me throughout the fields of CS. I’d pester Brian with questions 24/7. They weren’t hard things either (I totally could’ve Google’d them), but I’m glad I asked him because I learned a lot just by learning from someone that could explain things well. Still, I understand that it can be sometimes hard to go to office hours or even hard to ask a friend for help. In that case, make sure to use a CS major’s best friend:

Google, Google, and more Google.

A gateway to the ultimate resource: The Internet! Chances are, if you’re confused about something, there’s an explanation out there somewhere. Sites like Quora, Reddit, StackOverflow, GeeksForGeeks, and W3Schools have great explanations on pretty much all CS concepts. Many of these answers are curated and written by professors, experienced engineers, and many times your peers. Even throughout your career, you’ll continue to encounter bugs that you’ve never seen before, and Googling is an important skill (yes, a skill) that will be imperative throughout your career in CS/SWE.

Don’t be afraid to apply to things and put yourself out there.

As you’re going through your first year of college, there’ll be tons of opportunities that’ll come your way, whether they be internship, scholarship, or club applications. The most important thing to remember here is that you should never feel discouraged from applying to something because you don’t feel qualified — if I hadn’t talked to a company or applied to as many internships as I did, I probably wouldn’t have an internship this summer. I know many people that have applied to clubs or programs on a whim, but ended up getting in and are now thriving. Remember, you can be rejected endless times, but you only need one success. Don’t be discouraged by failures, ask for feedback (if you can) and keep trying. If you don’t take risks and put yourself out there and apply, you’ll never know what could have been.

Remember who you are.

When you see everyone around you doing side projects, practicing for interviews, or working hard to build their CS skills, it can be easy to be sucked into this bubble. This sets up the illusion that hobbies and interests outside of CS are a waste of time, and many students start to lose sight of their previous passions — and therefore, their previous selves.

When you feel overwhelmed, take a break and remember who you were before you were a college student. Remember what you did to have fun, and go do it. These breaks can help remind you of what life outside of the competitive CS atmosphere is, and will help keep you grounded and passionate in your own way.

Of course, this isn’t a comprehensive list — different things work for different people. These are, however, my thoughts on how you can feel more confident and not feel unqualified in such a competitive community. Feel free to reach out to me (rohinbhasin.com) and talk if you ever feel discouraged or demoralized, and I’d love to give advice, share my experiences, or help out in anyway I can.

~ Rohin Bhasin, CS @ Illinois.

--

--

Rohin Bhasin
Student Voices

CS @ Illinois student and software engineer interested in education, tech, startups, and building scalable, powerful software that can change the world.