Facebook

  www.facebook.com
Work in HR? Unlock Free Profile

Facebook Production Engineer Interview Questions & Reviews in San Francisco, CA

Updated Mar 17, 2014
All Interviews Received Offers

Getting an Interview  

77%
12%
10%

Interview Experience  

88%
0%
11%

Interview Difficulty  

Average Difficulty
9 candidate interviews Back to all interview questions
Relevance Date Difficulty
in

Accepted Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 4+ weeks - interviewed at Facebook in March 2014.

Interview Details – Was initially contacted via LinkedIn by an internal Facebook recruiter that dealt specifically with this role. I was impressed with the recruiter's technical knowledge, always a good sign, and agreed to go through the screening and start the interview process.

The process is 5 steps:

* Call with recruiter about position
* Phone screening with a few trivia questions regarding systems administration.
* Co-operative coding phone interview
* Systems phone interview
* On-Site interview

The call with the recruiter was mostly about the position description and duties, and assessing whether both sides think it's a good fit. The phone screening, also done with the recruiter, is just a few questions that anyone who has administered Linux for an organization would be able to answer off the top of their head.

The coding interview was done using a collaborative editing tool, so both parties could see what was being typed. The coding questions were not your typical abstract data manipulation questions, but rather questions that required systems knowledge, and in my case were most easily answered with shell scripts.

I didn't actually do the systems phone interview, as they considered my programming interview strong enough to simply skip this step. I'm informed this is not uncommon.

The on-site interview loop included five 45-minute segments: Programming, Systems, Networking, Solution Architecture, and meeting with the Manager (not in that order). Additionally, lunch with the initial recruiter and a brief chat afterwards with a different recruiter that dealt with the financial and logistics portions of the interview and negotiations.

One thing that struck me during the entire process is that *everyone* I spoke to, and I mean *everyone* because I asked them all, absolutely loved working there. Every time I asked someone how they liked working at Facebook, their face lit up and they started listing off reasons they loved working there, and everyone had the same reason: They liked everyone around them, felt trusted and respected, and trusted and respected the people around them. This was unanimously the first reason, usually followed by "and the work is really interesting".

Interview Question – What options do you have, nefarious or otherwise, to stop people on a wireless network you are also on (but have no admin rights to) from hogging bandwidth by streaming videos?   View Answers (2)

Negotiation Details – My negotiations were all pre-offer. There is a compensation department that comes up with an offer based on your years of experience, strength during the interview process, and current pay. They will almost certainly exceed your current pay if you disclose it, though I should probably point out they didn't verify mine. In my case they offered base pay approximately 10% higher than my prior base pay, and I presume this is fairly standard.


4 people found this helpful

Accepted Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 4+ weeks - interviewed at Facebook in August 2013.

Interview Details – HR contacted me from Linkedin.

There was 3 phone interviews for screening, code test and system administration test.

First interview, recruiter went through some questions, such as port number, routing, Linux commands, and some basic language wise questions.

Second interview was a coding test. Engineer had me to write two script for csv data processing, and system monitoring.

Third one was for system administration. The questions were pretty open. The interviewer had me to dig into the internals of operating system, such as performance tuning, memory model, paging, swap, process forking, system call, interrupt, and etc.

I passed 3 interviews, and flew to Facebook campus for a whole day onsite interview (with NDA signed).

During the interview process, I felt people there are super nice, and gave me chances to answer questions correctly.

My suggestions
 - Use your strongest language (scripting language will help a lot)
 - Familiar with operating system internals and system analysis tools
 - Familiar with networks and infrastructures (TCP/IP, DNS, HTTP, and etc)
 - Think about scalability

Interview Question – How can you find whether a process is I/O bound or CPU bound?   View Answer


Accepted Offer

Positive Experience

Average Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 3 months - interviewed at Facebook in October 2013.

Interview Details – I was contacted by a recruiter on Linkedin.

I first had a really quick phone call + technical screening with the recruiter (port numbers, shell commands...).
After that was a 2 questions coding interview over the phone which I believed didn't go so well even though the questions were easy (Think first CS college course level), but I passed anyway.
Next I had a another technical phone call on systems (kernel, shell commands, basic
troubleshooting...)

I was then invited to fly over to California for an on-site interview which I was really excited about. I stayed in a pretty nice hotel and everything was paid for by FB.

On-site, I had 5+ interviews with engineer, managers and recruiters which were similar to the phone interviews, just a little deeper/harder.
I also had the opportunity to tour the FB campus which looked great... nice office space, lots of free perks, great people...

I had an offer about a week later and accepted. You don't ofter get to work for one of the biggest/greatest/most traffic website/platform...

Interview Question – Explain everything that happens over the network when a client tries to access a website.   View Answers (2)


No Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 2+ weeks - interviewed at Facebook in August 2013.

Interview Details – Recruiter contacted me through LinkedIn and we setup a phone interview. He went through some basic System Administration questions and at the end asked me for availability for a coding interview. Coding interview was about algorithm and solving three problems.

Interview Question – Having solid software engineering skills   Answer Question


12 people found this helpful

No Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 6 weeks - interviewed at Facebook in June 2013.

Interview Details – Everyone I spoke with was reasonably personable and competent. The process went quite smoothly and was relatively painless.

5 phone contacts:
* basic screening (might you be a good fit for the position)
* basic programming
* (single) system administration
* basic description of what will come next+handoff to another recruiter
* in-depth description with new recruiter of what to expect during the on-site interviews

5 onsite interviews+lunch:
You first meet your recruiter, with a brief overview of the day.

* Production Engineer Manager
  - Getting to know you, talk about what a Production Engineer does.

* Coding
  - Algorithmically simple (write ____ system utility), but you need to be able to intelligently discuss complexity and tradeoffs of optimizations (CPU/RAM). What is the theoretical best performance?
  - You don't need to know exact details of APIs, but you need to know what calls are available, and have a deep understanding of how things work. You should know exactly what is happening, including the complexity of any system calls you make.
  - Accuracy and and efficiency in your code are crucial.

* Systems
  - FB has problems on a scale you have not yet realized. They hit problems you haven't ever seen.
  - When you see ____ crazy problem, what do you do? How do you figure out what the fundamental problem is? Once you know the problem, how can you mitigate it?
  - Explain in detail what happens when you run ____ command.
  - Think about this sort of information: what problems are you going to run into while doing IPC (pipes, shared memory structures etc.)? How exactly does the OS transfer information across a pipe? What are the limits or bottlenecks?

* LUNCH
  - Good food, relax and get to know your recruiter a little better. Get a better feel for the environment. Ask questions off the record, so to speak.

* Design/Architecture
  - FB understands you probably don't have experience at their scale. Just do your best to extend what you know to their scale.
  - How do you do ____ across a large number of systems? How do you do it without interrupting production? How long will it take?
  - When doing estimation, be sure to explain your thought processes.

* Networking
  - Probably the least important of the 4 technical interviews.
  - Be familiar with packet routing (How does the source computer know where to route packets? How do packets move across a network?).
  - Know how to configure and use at least one client/server network service (and talk about it intelligently). How does it work internally? What are the features of XXX protocol?

Last, you talk to your recruiter about what you think about the recruiting process, the position, how well it fits you, considerations that you may need to think about before making a final decision.

Interview Question – The individual questions are not difficult.

I'd expect any network engineer worth his salt to have no difficulty with the networking questions. Likewise, the coding shouldn't be a problem for a software developer, and systems isn't going to be hard for a systems administrator.

The trouble is the /breadth/ of questions. What are the limits of your knowledge? Can you make a reasonable guess as to what is going on based on what you do know?
  Answer Question


2 people found this helpful

No Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 3 weeks - interviewed at Facebook in July 2013.

Interview Details – Three 45-minute phone interviews. A positive review from each qualified me for the next.

First interview was a basic-technical one with their recruiter: port numbers, subnet math, Linux commands.

Second was a Collabedit programming interview. An engineer had me build a performance monitoring script, adding more features and improving efficiency as we went.

Third was a systems interview. Heavy operating systems theory was involved. This engineer's confessed style was improvisational, probing areas of knowledge my previous answers had laid claim to. It helped to know enough systems stuff, and to be interested enough in it, to make the conversation span the whole interview time.

I passed the third phone interview, so Facebook flew me to their campus for a day of on-site interviews. I had to sign an NDA covering my experiences on that day. What I can say is that I thought it went at least as well as my phone interviews, yet I got a rejection email a week later.

Interview Question – No particular question strikes a chord.   Answer Question


Accepted Offer

Positive Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied online and the process took 4+ weeks - interviewed at Facebook in October 2011.

Interview Details – The process was tough but fair. The phone screens were a bit harrowing because I didn't know what to expect. However, during the on site, the employees did everything they could to make me as comfortable as possible and gave me every opportunity to answer the questions correctly.


2 people found this helpful

No Offer

Positive Experience

Very Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through other source and the process took 6+ weeks - interviewed at Facebook in November 2012.

Interview Details – The process was pretty spread-out but extremely well coordinated and communicated. Expectations were perfectly managed. Since I was remote, they had me go through a set of 3 phone screenings, each very technical. Passing each phone screen lead to the next, with passing the final round leading to an in-person interview and trip to Menlo Park, CA.

The pictures of the campus there don't do it justice. It's a really surprising environment.

I really can't say enough how awesome their recruiting staff is. They always replied promptly and helpfully, and were awesome to work around my schedule every step along the way.

In the final analysis I just wasn't a good fit for the position - and I even agree with them. After seeing and hearing so much of the cool stuff they do behind the scenes and are working on doing, I am not (yet) qualified for that job. In the end, the thing I felt most qualified in was my big stumble. What I learned was to be on their level, it wasn't enough to have just done what I've done for a long time - that they justifiably want an expert in multiple disciplines.

Their benefits are just absurdly great. Everything they offer is top-notch including their facility in Menlo Park, where the old Sun research campus used to be.

In the end, it was a great experience. I got to go and interview with one of the biggest Internet companies in the world and meet some brilliant people and see just how great their environment is. I realized that in the right environment, I can go head to head with some of the best - and got a quick trip out there to boot!

Interview Questions

  • Why wouldn't you want a root DNS server to answer queries for you, instead of delegating you to an authoritative server?   View Answers (3)
  • For a given set of software checkins, write a program that will determine which part along the branch where the fault lies.   View Answers (3)


No Offer

Negative Experience

Difficult Interview

Production Engineer Interview

Production Engineer
Menlo Park, CA

I applied through a recruiter and the process took 4 weeks - interviewed at Facebook in June 2012.

Interview Details – I was contacted by a recruiter over linkedin. After doing a technical screen with the recruiter, there were two phone interviews with engineers. The first was a fairly simple programming test, and later a more in depth systems test.

Interview Question – The systems interview was more open ended than I expected   View Answer

Worked for Facebook? Contribute to the Community!

The difficulty rating is the average interview difficulty rating across all interview candidates.

The interview experience is the percentage of all interview candidates that said their interview experience was positive, neutral, or negative.

Your response will be removed from the review – this cannot be undone.