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"?