Facebook Software Engineering Interview Questions & Reviews

Updated Aug 23, 2014
Updated Aug 23, 2014
340 interviews

Interview Experience

Interview Experience

60%
25%
14%

Getting an Interview

Getting an Interview

24%
21%
18%

Interview Difficulty

3.3
Average

Interview Difficulty

Hard

Average

Easy

340 Candidate Interview Reviews Back to all interviews

Sort: Popular Date Difficulty

69 people found this helpful  

Software Engineer Interview

Anonymous Employee  in  Menlo Park, CA
Anonymous Employee in Menlo Park, CA
Application Details

I interviewed through a recruiter. The process took 3 months - interviewed at Facebook in November 2013.

Interview Details

This was for a position in their Infrastructure team in Cambridge MA.

Recruiter contacted me in September and was very interested in my background and experience with highly scalable systems - both in Finance and Mobile phone payments.
I attended some small intimate presentations they did as they were initially opening a new Boston office and wanted to grow it out. The meetings were great and I learned a lot about how they solve some of their biggest problems.

I then did a screening interview on-site (because I don't do technical screens well on the phone). The question was "Given a binary tree, write code to print the tree out line by line". I did OK and got the Breadth First Search down fine, but couldn't figure out the - line-by-line part. (Turns out this is Facebook's #1 question to ask in interviews).

Although my performance wasn't great they gave me a break on that and asked me back for another screening interview. This time I prepared well for another coding interview but it turned out to be a Design interview. The problem was

"Imagine you have 10,000 servers and need to monitor the performance of each one, how would you do it" - naturally you need to be able to NOT take too much of the bandwidth and so you'll have to do sampling, have some history to watch for trends etc.

I passed that and was very excited to be flown out to Menlo Park for the final round.
I studied like CRAZY based on questions on this site and CareerCup. I took 4 weeks and studied about 15 hours per week.

Turns out I focused on the wrong questions - I studied Tree, String, Array and List algorithms based on the distribution of Q&A but I was asked Binary math and heap algorithms. Here are the questions I was asked.

1) How would you implement division without +, - or multiplication (a "classic" question, but not one of the ones I would focus on). I bombed on this as I was not expecting and could not recall my binary math. I figured out the high level outline but that was all. That I was asked this in the "culture fit" interview made this doubly unexpected.

2) Given 10,000 servers containing a Billion integers each how would you find how to find the median? I knew the answer to this question (use two heaps) - not because I had focused on it, but I had found it an interesting question while studying. However he then asked "How much memory do you need?" and I didn't know how big the heaps would need to be. The real answer I was trying to get is - what is the minimum heap you need. I had a guess but I think I got this wrong.

3) Given a List structure where each node contains a Next node and optionally a pointer to another list, flatten that list
e.g.

L1 --> L2 --> L3 --> L7 --> L8
                      |
                      v
                     L4 --> L5-->L6

WIll be flattened to
L1 --> L2 --> L3 -->L4 -->L5-->L6-->L7-->L8

I did OK on this - getting the answer - but it appeared I took too long. The interviewer also interrupted me a lot while I was writing an initial solution and that threw me off - I like to be more iterative in my problem solving but I think he expected 100% immediate correctness.
He had an observer there too and that guy looked bored out of his mind and that bugged me a little too as it wasn't clear who would be doing the judging.

4) I was also handed some hard to read Python code (I don't know Python) and asked to figure out what it does. I did OK on this - but again surprised to be handed hard-to-read code in a language I didn't know.

5) One final question "How would you implement the "ls" Unix function in your language of choice. It should take the input:
>ls a/b/c/*/e/*/f/*/*/g
and the output should be similar the the output given by unix."

I used a tree structure to represent the file directory structure and wrote a solution from there. I did OK on this.

Overall: Everyone seemed very nice - I had a nice lunch and the campus is interesting but it was clear that what I studied was not what I needed to (so lesson learned: don't just trust the distribution of questions on Glassdoor or CareerCup). I even got to walk past Zuckerberg's office (more of a conference room) and saw Sheryl Sandberg in there.

One interesting thing I learned is a lot of Google people are leaving for Facebook. Also I'd say if you are over 30 (I am 41) you are a rare bird at Facebook :-)

I knew based on the reactions of the interviewers that it was very probably a bust, but overall a good experience and something I will learn from. Very disappointing as I really wanted to be one of the first few Facebook engineers in the Boston area - and to work on their super high scalability issues but such is Life.

Interview Questions
  • How would you implement division without +, - or multiplication   View Answers (6)
No Offer
Positive Experience
Difficult Interview

Other Interview Reviews for Facebook

  1.  

    Software Engineer Interview

    Anonymous Employee  in  Seattle, WA
    Anonymous Employee in Seattle, WA
    Application Details

    I interviewed online - interviewed at Facebook in April 2013.

    Interview Details

    A recruiter contacted me. After a few days of back and forth we set up a phone interview. In the phone interview we discussed a possible problem that involved trees. I struggled to implement the necessary algorithm.

    Eventually, I got to ask a couple of questions about facebook.

    Received a decline a couple weeks later.

    No Offer
    Negative Experience
    Average Interview
  2.  

    Software Engineer Interview

    Anonymous Employee  in  Palo Alto, CA
    Anonymous Employee in Palo Alto, CA
    Application Details

    I interviewed through an employee referral. The process took 1+ week - interviewed at Facebook in April 2014.

    Interview Details

    Was referred by an employee working at Facebook. Was paired with a HR guy who facilitated the process via email. Did a phone interview with an engineer about a week after first contact. Did the technical interview and was told I would get a decision within the week. Didn't get a response after trying to follow up so I took it as a no.

    Interview Questions
    • The interview was pretty straightforward. The technical question had something to do with rearranging letters in a word, can't remember the details anymore.   Answer Question
    No Offer
    Neutral Experience
    Difficult Interview
  3.  

    Software Engineer Interview

    Anonymous Employee  in  Menlo Park, CA
    Anonymous Employee in Menlo Park, CA
    Application Details

    I interviewed through a recruiter. The process took 4 weeks - interviewed at Facebook in November 2013.

    Interview Details

    Interviewed in November 2013. Initially contacted by a recruiter through LinkedIn. Entire process took around 3 or 4 weeks. Two initial interviews followed by an onsite interview. The initial interviews went well, but I failed onsite I believe. The company is very chill overall; they had a keg in one of the rooms when I visited.

    Interview Questions
    • Asked to do a presentation on a specific topic for the entire team.   Answer Question
    No Offer
    Positive Experience
    Difficult Interview
  4. We want your feedback – Is this interview information helpful to you?  Yes | No
  5.  

    Software Engineer Interview

    Anonymous Employee
    Anonymous Employee
    Interview Details

    A recruiter set up a short chat and ask some behaviour questions, and bad things happen. She ask me some cliche questions like "why facebook" and I give my answer by talking about the technology fb using, which she didn't understand. I guess she expect me to be a fan of social network but my topic is always technology. Finally she ask if I am talking with other company. I give her a name of a company. But she never heard that. Hey, that's a middle size company in bay area just ipo 2yrs ago. She just can't understand what I am talking in the phone call. Not even one. Got rejection few days later.

    No Offer
    Negative Experience
    Easy Interview
  6. 3 people found this helpful  

    Software Engineer Interview

    Anonymous Employee
    Anonymous Employee
    Application Details

    I interviewed through a recruiter. The process took 3+ weeks - interviewed at Facebook in March 2014.

    Interview Details

    1 phone interview : merge sorted list, maximum path in tree
    3 round onsite : Regular expression, strStr, anagram, split sentence into words, talk about projects
    1 extra phone interview after onsite : talk about projects, count and say
    All the questions can be found in leetcode

    Interview Questions
    • Regular expression and strStr. I was not able to give KMP algorithm to strStr   View Answers (5)
    No Offer
    Neutral Experience
    Average Interview
  7.  

    Software Engineer Interview

    Anonymous Employee
    Anonymous Employee
    Application Details

    I interviewed online. The process took 2 months - interviewed at Facebook.

    Interview Details

    I applied online and was contacted by the recruiter and send me an invitation to solve the programming puzzle online. After it, I received the mail from recruiter and set up a technical phone interview.

    Interview Questions
    No Offer
  8. 2 people found this helpful  

    Software Engineer Interview

    Anonymous Employee  in  Menlo Park, CA
    Anonymous Employee in Menlo Park, CA
    Application Details

    I interviewed through a recruiter. The process took 3 weeks - interviewed at Facebook in March 2014.

    Interview Details

    I was contacted by a recruiter in early 2014. I was set up with an engineer for a phone interview. The first few questions were about my resume, simple stuff about projects I've worked on and prior experience. Then I was asked two technical questions, one about recursion and one about trees. I fully solved and optimized the tree problem but struggled a bit with the recursive problem. Overall it wasn't too difficult but make sure you prepare well before going in!

    Interview Questions
    • A recursive problem involving how many combinations you can make out of a set of numbers. Know your data structures, the problem used both hash tables and lists.   View Answer
    No Offer
    Positive Experience
    Difficult Interview
  9. 1 person found this helpful  

    Software Engineer Interview

    Anonymous Employee
    Anonymous Employee
    Interview Details

    Recruiter contacted me from LinkedIn profile and got me first round of interviews in NYC office

    Interview Questions
    • How do you find the kth smallest number in a binary search tree.   View Answers (3)
    No Offer
  10. 1 person found this helpful  

    Software Engineer Interview

    Anonymous Employee
    Anonymous Employee
    Application Details

    I interviewed through an employee referral. The process took 1 week - interviewed at Facebook in January 2014.

    Interview Details

    Phone interview and then on site. In the phone interview, they ask me to solve the 3 sum problem (check leetcode) and the bucket anagram problem. In the on site interview, 3 interviewers ask me three algorithm problems and also the behavior problems. Then there's a brief tour to the campus.

    Interview Questions
    • On site interview, they ask me regular expression match (check leetcode) and search for range (like, 1,2 3, 7,7,7, 9, 9, return how many 7's in the array) and also knowledge about the garbage collection, linked list, reverse linked list.   View Answer
    No Offer
    Positive Experience
    Difficult Interview

See What Facebook Employees Are Saying

OK to

 Current Administrative Assistant in Chicago, IL

Pros: “High pay worth low demands” Full Review

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.