I transferred to Computer Science my Freshman year so never really got a chance to look at schools for CS in particular. I breezed through with a 3.9 and never really felt challenged. I did three internships at startups, and all of my employers seemed to really like me so I think I'm ok at programming.

However, I'm becoming more insecure with computer science and myself than I've ever been. I've been talking to students who went to top schools and I feel overwhelmed by what I never learned. I've been a big fish in a small pond for the last four years and I'm scared I wasted my time.

I don't want to be an ok developer. I want to be a great developer.

I know I can program. I'm really into self teaching myself. I can read Cracking the Coding Interview and do pretty well. I took the Machine Learning course on Coursera. I did nand2tetris.org. I'm almost done with reading Learn You a Haskell.

But I'll never take a class like CMU's 251 class where I have someone breathing down my neck to make sure my proofs are right. I'll never be up late hanging out in a CS lounge with a ton of people way smarter than me hacking away. I'm getting borderline obsessive with "catching up". I'm trying to read CLRS (a pretty in-depth algorithms book), and it's half for fun, but it's also because I'm scared that I'll be in the industry for 30 years and there will be MIT grads that have a better "base" of knowledge than me.

Is this irrational? Is this a common issue that people "get over"?

  • 1
    Career or education advices are off-topic here.
    – scriptin
    Nov 15, 2015 at 11:25
  • Find hard stuff. Do hard stuff. Get better. Repeat. Nov 15, 2015 at 12:21
  • 4
    Do you want to be a compute scientist, or a programmer? Nov 15, 2015 at 12:25
  • Real world: Nobody cares about proofs. Can you get the job done on time and within budget? You're golden.
    – emragins
    Nov 15, 2015 at 19:46

1 Answer 1


First things first, MIT/Columbia/Berkely/Stanford/etc. graduates will always have the upper hand upon graduation. That's just the way it is. Keep in mind that those schools also cost way more than normal schools. They have access to the top instructors and materials, as well as some of the smartest students around, and a great alumni association for networking.

The good news about this is, after you have a few jobs a few years out of college, this begins to matter less and less. As long as you can code, you can have the same jobs as people from top schools have. I went to a normal school and many people I know work at organizations that no doubt have people from Ivy League colleges at them (most of them got the jobs 2-3 years out of college).

Feeling behind in the software industry is something that you learn to deal with over time. As long as you learn relevant things quickly enough to apply them at your job, you will be fine. Personally, I have a long commute, so I listen to podcasts to/from work in addition to reading books. You can still be a great developer if you practice at what you do and keep at it.

Life is a marathon, not a sprint. Just because someone may start off further than you doesn't mean they will tire throughout the race. You may end up passing them before the end.

Continuing that thought, don't look at everything as a competition. If you really wanted to get serious, you will always compare yourself to the Mark Zuckerburgs, Larry Paiges, and Melissa Meyers of the world. Be happy with what you have and always try your best.

Not the answer you're looking for? Browse other questions tagged or ask your own question.