Which is the better place to work, Google or Facebook?
This question originally appeared on Quora: Which Is Better To Work For, Google Or Facebook? Answer by David Braginsky, has worked as an engineer at Google, Facebook and, currently, Asana.


This question originally appeared on Quora: Which Is Better To Work For, Google Or Facebook? Answer by David Braginsky, has worked as an engineer at Google, Facebook and, currently, Asana.
A lot depends on your personality, and the kind of culture you like. I’ll try to highlight the key similarities and differences. But, the short answer is you should come work at Facebook. Send me your resume.
Culture:
Facebook is more like undergrad. Something needs to be done, and people do it. Most of the time they don’t read the literature on the subject or consult experts about the “right way” to do it, they just sit down, write the code, and make things work. Sometimes the way they do it is naive, and a lot of time it may cause bugs or break as it goes into production. And when that happens, they fix their problems, replace bottlenecks with scalable components, and (in most cases) move on to the next thing.
Google tends to value technology. Things are often done because they are technically hard or impressive. On most projects, the engineers make the calls.
Facebook values products and user experience, and designers tend to have a much larger impact. Zuckerberg spends a lot of time looking at product mocks, and is involved pretty deeply with the site’s look and feel.
Size:
Facebook is much smaller, and while you won’t know everyone (or even the majority), you will probably recognize 25% of the engineers. There is sometimes duplication of work, but it is almost always intentional. Facebook is growing, and there is no reason to believe that the problems at Google wont start showing up, but it has not happened so far.
Because of its size, Google can place big bets, and try ambitious world-changing things. A project that makes tens of millions of dollars is not interesting enough for them to even try. There are many ambitious projects, most of which fail, but the successes are pretty inspiring. They can support world-class research into anything computer-science related, and beyond. So if being at the frontier of computer science is what you want, and you are good enough to convince the Google management structure to not place you into one of the many critical but not very interesting teams, Google might be the place for you.
People:
There is also (according to my friends at Google) a noticeable number of people that should have never been hired and the company seems reluctant (or unable) to remedy that. But, in general, Google has very smart people, who are experienced, passionate, and do good work.
Facebook engineers are typically younger, and many are less experienced. There are only 400 of them, and Facebook is much more willing to fire people. So I would say the median quality of engineers at Facebook is higher, but Google has some strong outliers.
Management:
All of Facebook’s managers are technical, many have switched to the management track from engineering. There is one VP of engineering, a few directors, and a bunch of managers. So things are not completely flat, but reasonably so. Due to the size of Facebook, the hierarchy is much less important, since it’s actually possible to develop relationships with people through out the company. This means there is a lot more peer-to-peer communication/collaboration than the management structure enables. Some of the managers at Facebook are new to management (having recently switched from engineering) and may not be as good at management as you may like. That said, I’ve been very impressed by the diligence with which they approach their new role, and the effort Facebook puts into selecting the right candidates.
Personal Impact:
Products have to be built to scale, and have a fairly high level of polish and maturity before release. Before a project launches there is a long checklist of things it needs to handle (such as internationalization, logging, security, etc.). Even if your product was completely finished, working, and bug free, it can take months to go through the checklist and actually launch.
On the other hand, when you do launch, hundreds of millions of users will notice, and that’s awesome.
At Facebook, I had checked in code my first day there and it was pushed to the live site on the next day. There were bugs, and emergency pushes to fix those bugs, but a few days later my code was running in production and millions of people were benefiting from it. That was three years ago and it’s still the case now. In general new-hires have code go live in their first week, maybe first two weeks. Chances are pretty high that your code is directly visible by users, though as the company grows, there is a lot of work on internal tools as well.
Facebook is full of low-hanging fruit, as well as important systems that need to be replaced to handle orders of magnitude and more data, so if you want to feel like you have an impact, it’s easier at Facebook. The most critical infrastructure projects are the work of small teams, so you get to work on v0 of a system instead of v5.2.
Compensation:
Facebook’s bonus target is 10%, but goes up non-linearly for high-performing engineers. Facebook is private (as of 2010), so deciding on the value of their RSUs is hard. Secondary markets might give reasonable estimates, but no one knows for sure. Furthermore, you will not be able to sell your shares until Facebook IPOs, and it’s not clear when that will be.*
Perks:
Facebook has subsidized laundry service.
*Based on information from 2010.
More from Quora: