Facebook's engineers are its most prized possession. They're given an enormous amount of autonomy and told to ship quality code quickly.
So, what's it like being a Facebook engineer?
Google employee Yee Lee wrote a huge post on what it's like shipping code at Facebook that he's compiled from talking to a ton of engineers.
It's pretty much exactly what you might think it's like — although there's a little more supervision than first expected.
Granted, this post was written about a year ago, but it doesn't seem like much has changed since the company has gone public.
So, what's it like being a Facebook engineer?
Google employee Yee Lee wrote a huge post on what it's like shipping code at Facebook that he's compiled from talking to a ton of engineers.
It's pretty much exactly what you might think it's like — although there's a little more supervision than first expected.
Granted, this post was written about a year ago, but it doesn't seem like much has changed since the company has gone public.
First off, engineers make up a majority of Facebook's staff.
Facebook
The two teams make up about half of the company.
There are plenty of product managers, though.
Facebook
There are about 7 to 10 engineers per product manager, Lee says.
It all starts with "boot camp."
Facebook
Around 10 percent of the employees coming in to Boot Camp don't make it through, and are counseled out.
After that, Facebook employees get access to the database.
Facebook
Employees also get a list of fire-able offenses — like sharing user data.
There are still a lot of safeguards to prevent this from happening, though, he says.
Like Google, it's a very engineer-driven culture.
Facebook
Engineers can modify specs of a project mid-process, re-order work projects, and inject new feature ideas at any time.
Engineers present their work during monthly cross-team meetings.
Facebook
Facebook wants engineers to publicly own products and be the main point of contact for the things they built, Lee writes.
Gathering resources for a project is purely voluntary.
Facebook
Product managers lobby groups of engineers to try and get them excited about their projects, but the engineering managers mostly leave each engineer's preferences alone.
Instead of arguing whether a feature is worth implementing, engineers just prototype it.
Facebook
This is controlled by an application called "Gatekeeper."
It's a big part of Facebook's "hacker" culture — rapidly build and ship products, and dump the products that don't work.
Everyone wants to work on the back-end processes at Facebook.
Facebook
So it can be hard to get engineers excited about working on front-end products like messaging, Lee writes. Instead, everyone wants to work on the News Feed algorithm.
That's a far cry from other consumer tech companies, where everyone wants to work on front-facing products, he says.
Mark Zuckerberg reviews every code update to the News Feed.
Facebook
There are mandatory code reviews for all major updates, and all changes are reviewed by at least one person.
But Zuckerberg personally reviews anything that changes with the News Feed.
There's no official quality assurance group.
Facebook
Facebook still has QA engineers, and all engineers are strongly encouraged to report bugs.
By default, code updates go out on Tuesdays.
Facebook
There are review tools that "pushers" have that tell how much risk there is with a code update. Facebook engineers have "push karma," which shows that some engineers are riskier than others.
Any engineer that's committed code to that week's release has to be on-site and present in an IRC channel before the release for a "roll call."
The operations team rolls out the code updates slowly.
Facebook
It goes out to about 6 servers first, and then more. If a fix is needed, it's taken offline until the engineer that committed the code fixes it.
Then it's pushed out to the first six again, then the next level, and so on.
Ignoring the operations team results in "public shaming."
Facebook
If you aren't around to fix the code after you commit it, you get "publicly shamed." Lee doesn't go into a lot of detail about this, but he says you can get fired if this happens too often.
You won't get fired for accidentally breaking the site, though.
Think you have what it takes to work at Facebook?
By Justin Sullivan/Getty Images
About Admin
This is dummy text. It is not meant to be read. Accordingly, it is difficult to figure out when to end it. But then, this is dummy text. It is not meant to be read. Period.