Facebook Production Engineer Interview Questions

Updated Jun 25, 2015
28 Interview Reviews

Interview Experience

Interview Experience

82%
7%
10%

Getting an Interview

Getting an Interview

78%
7%
7%

Interview Difficulty

3.6
Average

Interview Difficulty

Hard

Average

Easy

28 Candidate Interview Reviews Back to all Interviews

Sort: Popular Date Difficulty

 

Production Engineer Interview

Anonymous Employee in Menlo Park, CA
No Offer
Positive Experience
Average Interview

Application

I applied through a recruiter. The process took 2+ weeksinterviewed at Facebook (Menlo Park, CA) in April 2015.

Interview

They recruited me at a conference. I had a recruiter phone screen followed by two engineering phone screens. One was focused on coding and the other on systems. This was followed by an all-day interview at the Facebook Campus. The all-day interview was 5 sessions with different engineers, 45 minutes each. Each interview focused on a different area like Architecture, Coding, Networking, and Systems.

Interview Questions

Other Interview Reviews for Facebook

  1. Helpful (5)  

    Production Engineer Interview

    Anonymous Interview Candidate in Menlo Park, CA
    Accepted Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took 2 weeksinterviewed at Facebook (Menlo Park, CA) in March 2015.

    Interview

    I was contacted by a recruiter through LinkedIn. He asked several simple questions and then set up two phone screens, one for "systems" and one for "software engineering." A few days later I was invited to Menlo Park, CA for a day of interviews. There were 5 45-minute sessions: software engineering, networking, manager, and design. The interviewers varied in quality, but we generally pretty good.

    Interview Questions

    • Under NDA to not reveal interview questions however they are very predictable questions which could be easily understood based on the names of the interviews. There were no odd trick questions like "deploy SSH to 10,000 servers on the moon."   Answer Question
  2. Helpful (1)  

    Production Engineer Interview

    Anonymous Employee in Menlo Park, CA
    Declined Offer
    Positive Experience
    Average Interview

    Application

    I applied through a recruiter. The process took 3 weeksinterviewed at Facebook (Menlo Park, CA) in March 2015.

    Interview

    Quick tech quiz with the recruiter over the phone. Then we scheduled two phone screens, one on coding, one on systems, both of them 1 hour long. Once you pass the phone screens you'll have to schedule an on-site visit which consists of 5 interviews, 45 minutes each: systems, networking, cultural, system architecture, coding. If you're not from CA, they'll fly you over to SFO, preferably on a Monday.

    Interview Questions

    • The quiz was pretty simple, you'll be asked basic questions about Linux. Battleship game: write a function that finds a ship and return its coordinates. Write a script that connects to 100 hosts, looks for a particular process and sends an email with a report. What is a filesystem, how does it work? File permissions, properties, file types. A write operation failed with an error, how do you figure out what happened? What's a signal and how is it handled by the kernel? What's a zombie process? Talk about an iostat output (what does user vs system cpu load mean, what does iowait% mean, cache vs buffers, why do we need caching, how much cache is needed, how can disk performance be improved, where is the bottleneck) How do TCP, UDP work? Describe what happens when a client opens a web page. How does DNS work? How does HTTP work? How does a router work? Various questions about your current experience, talk about a conflict situation and how you handled it. How would you design a system that manipulates content sent from a client (e.g. clean bad words in a comment post)? Write a function to sort a list of integers that looks like this [5,2,0,3,0,1,6,0] -> [1,2,3,5,6,0,0,0] in the most efficient way.   Answer Question
  3.  

    Production Engineer Interview

    Anonymous Employee
    No Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took a weekinterviewed at Facebook in March 2015.

    Interview

    First interview was with a HR, which i thought would be just about soft skills but i was asked 10-20 technical question mostly networking and system administration. Second round was a coding exercise and was asked to code using any language of my choice. Interviewer is looking for how you apply the logic. He did not ran my code but he made some modifications on the code and asked me what the output will be after the changes.

    Interview Questions

    • HR screening questions on networking and system administration.   Answer Question
  4. Is this helpful? The community relies on everyone sharing – Add Anonymous Interview Review


  5. Helpful (7)  

    Production Engineer Interview

    Anonymous Employee
    Declined Offer
    Positive Experience
    Average Interview

    Application

    I applied through college or university. The process took 4 weeksinterviewed at Facebook in February 2015.

    Interview

    An recruiter contacted me by email and ask me to do a phone interview. She asked me whether I am familiar with production engineer's work and 10+ initial screen questions. They are all about basic Linux and networking knowledge, like port number and tcp protocol, Linux commands. Most of them are quite easy but they do really have some tricky questions. Afterward, I was told that I had passed and would have one coding interview and one system interview before making the final decision. The coding interview started about 1 weeks later. I was asked to code using stypi and there are two questions in 45 minutes. One is translate English to "Goat Latin" language with a set of predefined rules. It was not hard but I still spent 20-30 minutes on that, partly because I cared too much about the detail. The second question is more a shell-script coding, although I did not realize it immediately. I was asked to obfuscate local parts of email addresses found in all HTML files under a folder (also subfolders). Due to the time limit, I did not write a clean and complete code for it. But I discussed with the interviewers for the possible solutions (shell script + python regex operation). Then the recruiter told me I passes the first round and we moved on to system interview, which began 5 days later. Since it is totally new to me, I read lots of posts in glassdoor and other interviewing forums and there are very useful. The interview questions requires solid knowledge about Linux, operating system, performance monitoring. They both starts with a relatively simple questions but ends with lots of followup questions. Try your best to be open-minded and always talk with the interviewer. They want not only an correct answer, but also how you get this solution. Later that day I heard from the recruiter that the feedback seemed also great. After one week, they give me the offer. The salary is greater than I ever expected. Pros: The recruiter is super nice and willing to answer any of your question in a timely manner. The interviewing schedule is very flexible. You can propose any date as you like. The interviewers are quite smart and patient. They are always on your side and trying to guide you through difficulties.

    Interview Questions

    • Explain in every single step about what will happen after you type " ls * " in your terminal.   Answer Question
    • Suppose there is a server with high CPU load but there is no process with high CPU time. What could be the reason for that? How do you debug this problem? Does your solution always work, and if not, what's the reason for that?   1 Answer

    Reasons for Declining

    I have to decline it because I got another offer from Palantir later as a software engineer intern. But FB is really great and I will definitely take it without the other one.

  6.  

    Production Engineer Interview

    Anonymous Employee
    No Offer
    Negative Experience
    Easy Interview

    Application

    I applied through a recruiter. The process took 2+ weeksinterviewed at Facebook in February 2015.

    Interview

    The recruiter contacted me on Linkedin and during our initial exploratory conversation, I was asked several initial screening questions about my background. Afterward, I was scheduled for a 45-minute coding interview, about one week later. The interviewer contacted me at the proper time and we began the interview, using stypi.com. The first question came and went very quickly, though I did have some difficulty understanding the interviewer as English was not their first language. The second question also went by very quickly, though the interviewer kept hitting on what happens when a float is cast to/from a boolean in Python and ultimately, I suspect this is what put the interviewer against me. Overall, the questions asked were fair and weren’t unnecessarily complicated. The time from the phone screen to rejection was six days and the rejection message was the standard condescending boilerplate of, "We've found stronger candidates for this particular position," leaving me with no idea what I had done wrong and only my suspicions. Followup e-mails to figure out where I fell short were met with silence. The job posting had the following verbiage on it; "Our team is comprised of varying levels of experience and backgrounds, from new grads to industry veterans. Relevant industry experience is important, but ultimately less so than your demonstrated abilities and attitude. We sail into uncharted waters every day at Facebook in Production Engineering, and we are always learning." For a position that demands such a broad range of skills, I find it silly that what (I suspect, anyway) did me in was something that in a real-world situation, I could've just opened an interactive Python interpreter and entered a few of lines to prove / disprove the expected behavior. So much for "we are always learning." Pros: - Recruiter was friendly and was on top of things. - Decision was made quickly. - Interview questions were fair. Cons: - Interviewer dinged me for trivial things. - Coding interview did not reflect the broad knowledge required for the role. - Interview did not jive with the ethos of, "we are always learning." - I had some trouble understanding the interviewer and I suspect they also had trouble understanding me. - Standard condescending rejection boilerplate with followup e-mails routed to /dev/null.

  7.  

    Production Engineer Interview

    Anonymous Employee in Menlo Park, CA
    No Offer
    Neutral Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took 1+ weekinterviewed at Facebook (Menlo Park, CA) in February 2015.

    Interview

    A recruiter reached out to discuss a position that may be a good fit with my skillset. It started with a phone interview followed up with a code review interview. The process took about 10 days. The interview questions were not difficult, some with several answers. Unix Process, networking, tcp/ip stack, and system administrative commands. The process was casual, I did notice before the interviews even started. Their coordination was awkward, after receiving numerous misspelled emails and wrong phone numbers. I was a little leery of working for them. Nonetheless, I continued with the 45-min code review interview and answered the question. Overall, the interviews were comparable to other companies. Also, they were efficient with their responses and answering questions.

    Interview Questions

    • Given a sentence convert the sentence to the modified pig-latin language: Words beginning with a vowel, remove the vowel letter and append the letter to the end. All words append the letters 'ni' to the end. All words incrementally append the letter 'j'. i.e. 'j','jj','jjj', etc...   2 Answers
  8. Helpful (2)  

    Production Engineer Interview

    Anonymous Employee
    No Offer
    Neutral Experience
    Easy Interview

    Application

    I applied through a recruiter. The process took 1+ weekinterviewed at Facebook.

    Interview

    Over the phone coding screen, I was asked two fairly easy questions and I answered both of the them well and I understood the edge cases and answered all the questions the interview had about my solutions. The interview lasted about 50 minutes. Sadly I was rejected based on feedback from the interviewer. The feedback stated the second question was fine, but the first question had an issue. The solution I provided wasn't what the interviewer wanted, and the solution that he wanted was different from what the question had asked.

  9. Helpful (5)  

    Production Engineer Interview

    Anonymous Interview Candidate
    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied through an employee referral. The process took 4+ weeksinterviewed at Facebook in October 2014.

    Interview

    Referred by a friend and received email from the recruiter several weeks later. The recruiter would ask some one-word-answer questions just to make sure you have the most basic knowledge required for this position. They are mostly linux system related questions and if you work with linux it should be easy. There are two telephone technical interviews after that. First is for coding and the seconds is for linux system knowledge.

  10. Helpful (22)  

    Production Engineer Interview

    Anonymous Interview Candidate
    Accepted Offer
    Positive Experience
    Difficult Interview

    Application

    I applied through a recruiter. The process took 3 weeksinterviewed at Facebook.

    Interview

    A recruiter contacted me. After confirming that I would like to interview for the position, I was asked basic questions around networking, Linux system administration, and programming. A graduating Computer Science student should expect to pass this with little difficulty. Next was a phone interview for programming. I was asked to take input text and identify the unique words in the text and how many times each word occurred. Edge cases were important as was the performance. Interviewer asked for an analysis of the run-time and memory usage. Any second-year CS student should have no problem completing this in far less than the allocated time. Next was a phone interview for systems administration. I was given the bare minimum information possible about a system and told to describe how I discover running services and potential issues. As I progressed, the interviewer gave me information reasonable based on my descriptions and identified when I had correctly discovered a problem or possible problem. In investigating problems, it was important to be specific about why the problem was occurring and how to address the issue. When addressing problems, the performance, scalability, and maintainability of the solution was very important. Be prepared to identify how a file system is mounted or if it's local, and be prepared to encounter a single central share mounted by many servers with active read/write activity from them all. This will be difficult for anyone without good real-world Linux systems administration experience. Next I was flown out to HQ for a series of on-site interviews. A manager spoke to me to gauge my understanding of Facebook and the Production Engineering position (rely on the job description and don't be afraid to ask your recruiter lots of questions!) and to get to know me. There's another interview about coding and another one for systems administration. Both are along the same lines as the phone interview, but more in-depth and more difficult. There's a systems design interview, where you'll be given a target and asked to design a scalable and performant system to accomplish the goal. You may be asked to analyze the storage requirements (core and/or persistent) and network requirements of your system. The last interview type is a networking interview, which is very in-depth and requires extensive knowledge of TCP/IP, UDP/IP, DNS, etc. Essentially, start at a command prompt and think of what happens when you type "telnet www.facebook.com 80" - be prepared to talk about almost every single network-related thing that happens at all seven OSI layers. Know your packet layouts! Throughout the entire process, my recruiter was always on top of keeping me informed and always answered questions very quickly (I rarely waited even most of a day for a reply). I rarely needed to ask anything about what to expect because she kept me so well informed. Don't worry too much about thinking at Facebook's scale, they understand that very few people have worked on anything even approaching their size and scale. Everyone you deal with will work hard to make things go as smoothly as it can.

    Interview Questions

    • The entire networking interview was very difficult, I was not expecting the amount of in-depth knowledge expected for that interview.   Answer Question
Don't Miss Out On a Job You Love
Upload a resume to easily apply to jobs from anywhere. It's simple to set up.

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.