Talk to a student about the big tech companies and you’ll often get an enthusiastic response. They study for hours, practicing technical interview questions. They beg their friends and acquantances and strangers for referrals. They frequent various forums and beg for resume feedback.
This post isn’t for them. If you’re one of these people, good for you. Try to survive recruiting season and not have your job be your identity. It won’t be the end of the world if you work at a non big N.
Instead I’d like to talk to the people on the other side of the spectrum. The people who are happy to take the first job they see. The people who don’t see the purpose of going above $30/hr.
I’ll preface this with saying that there’s nothing wrong with being satisfied with one’s job. If you truly are happy with your current position, then feel free to ignore my advice here.
That being said, I believe there’s some real benefits to working at a larger, more prestigious company, even if it’s only for a short period. These benefits aren’t always readily apparent unless you know people at large tech companies or you work there yourself.
Pay
Pay is an interesting factor. If you were to ask potential applications to large tech companies, most of them would cite pay as a major motivator. And yeah, pay can make a big difference. We all know what money can accomplish. However this is probably the least convincing point. Everybody knows Facebook pays bank. If someone isn’t applying to Google, citing pay probably won’t convince them.
Granted, the extent to which they pay a lot is often underrated. Dan Luu goes into this in detail, but in short, it’s a lot of cash. Especially if you can get competing offers.
But again, it’s unlikely that cash is the convincing factor.
Coworkers
I’m hesitant to make any claim as to whether company size is correlated to quality of employees. In fact I won’t. There’s plenty of brilliant programmers at companies large and small.
However there’s a matter of simple math. At a small company, there’s maybe 10-20 programmers. Realistically, how many programmers there are going to be in the top percentile? Whereas with a company of 40,000 programmers? Definitely gonna be some top performers in that group.
With your day to day work, you might not notice this difference. A 5 person team is a 5 person team at Google or at your local dev shop. But simply having access to these top performers can be extremely valuable. At my big N job we had an internal tool to query anybody, figure out their email and position in the hierarchy. I made it a habit to look up various respected figures in my field of interest and chat with them.
Say I wasn’t satisfied with my team. I could have easily messaged one of these top performers and looked into moving onto their team.
Process
Large companies have well defined processes. This can be annoying, as when I waited a week for my credentials to clear. It can also be incredibly informative. A lot of these processes were put in place for specific reasons.
At a small company, deploying may consist of talking to your coworker next to you, or sshing into a box with root access. At a large company you will have a thorough process that reviews your code and puts in the necessary controls so that your code won’t crash half the internet or lose hundreds of millions of dollars.
Likewise processes will be defined for more personal issues. If you have problems with your manager, there’s a process. If you want to switch your team, there’s a process. These processes will not always be good. But they will exist.
Some people claim that they prefer smaller companies because there’s no process. That’s not entirely true. Smaller companies don’t have no process as much as undefined processes. This can be tricky to navigate, as it means you’ll need to scope out the lay of the land before attempting something. Or worse, your request will require your manager to create a process, which they most likely will invent on the spot. This will not go your way most of the time.
Working at a large company can teach you a lot about process. Even if you end up leaving the company, this knowledge about process can be super useful if or when you end up in charge.
Resume
Big companies are more recognizable. Beyond pay, the resume boost of a big company is probably the best return on investment. I spent three months at a large company and it made my resume infinitely more competitive.
It’s a bit of a meme at this point, but stuff like “Ex-Google/ex-Facebook” do really carry cachet.
Even if you go to a large company, hate it and leave within a year, you’ll forever have a resume boost and a bargaining chip.
Your work will also sound more impressive. I can say that I built a data pipeline that processes petabytes of data. It wasn’t that hard honestly. I used a standard big data tool and wrote simple data processing steps. But hey, it sounds cool.
Do It Once
Again, for the angry mobs who think I’m blindly claiming big tech is better: I’m not.
I am saying that you should consider working at a large company once. The same is true with small companies by the way. If you’ve spent your entire time at large companies, a small one might be a refreshing change of pace. The worst that can happen is you return to your company size of choice, satisfied knowing that the alternative wasn’t worth it.
So go on, apply! Get that job at Google or Microsoft. Especially if you’re a student. Internships are wonderful because they’re fundamentally time constrained. If you don’t like it there, it’s only 3 months.