Are you sure you want to work for Google? Or Facebook or Twitter or some other biggish company? If you’re in your early twenties, you might want to stop and think about it. Or you could end up a 40-year-old loser like me!
Let me explain.
I get to interact with a lot of young programmers, both as part of my recruiting efforts at Google and as a side effect of Programming Interviews Exposed. The other day I was reflecting on the differences in the tech industry when I graduated (1990 — pre-Java, early C++, i.e. ancient history) compared to today. Today there are so many opportunities for good software engineers to do things that I’m actually quite envious. These opportunities were not around when I graduated. Instead, my classmates and I were busy interviewing with big companies. I turned down an offer from Microsoft, for example (which in some ways I regret because I’d probably be rich by now because of stock options!). Friends were interviewing with Sun, SCO, Bell-Northern Research, Northern Telecom, big banks, etc. — all big companies for the most part. I don’t remember anyone starting their own company.
Today, though, I see many graduating students thinking about starting or joining a startup where the pay is lowish and the work is all-consuming. And that’s great, because the possible upside — i.e., going public or being acquired — is almost limitless compared to working a 9-to-5 job for an established firm. If you love autonomy, if you want to work on something that could be the Next Big Thing, if you want to change the world, a startup is the place to be. And if you were wise enough to stay unattached through your college/university years and are willing to travel to where startups thrive (and you’re OK with continuing to live like a pauper) then I recommend you go the startup route. It’s much, much easier to create or join a startup when you’re young and have no responsibilities.
The truth is that most startups fail. So at some point you’ll probably end up working for an established company. You’ll have lots of hands-on coding experience and you’ll be a prime catch — please do apply to Google, it’s a great place to work. You won’t get rich or change the world working for an established firm, but you will enjoy the work if you choose the right company and get paid pretty well.
Looking back, I guess I regret taking the easy route with my career. I played it very safe. I didn’t even take the Microsoft offer, which would have required a move to the United States. I didn’t join RIM in its salad days — it’s ending badly now, but I’d at least have some serious money to console me. Switching to Google was the riskiest thing I’ve done career-wise, which really wasn’t much of a risk!
Don’t get me wrong, I enjoy my work and Google’s a great company to work for. But part of me thinks I’m a 40-year-old loser for not taking career risks when I had the chance. If you’re young, now is the time to take those risks. Go interview for that hot startup — what do you have to lose? You can work for a big company anytime — trust me, we’ll be happy to have you! Don’t discount the tiny companies with lofty goals and aspirations. Give a startup a chance. Or better yet, find a buddy and start your own!