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

Updated Aug 19, 2014
Updated Aug 19, 2014
68 interviews

Interview Experience

Interview Experience

81%
9%
9%

Getting an Interview

Getting an Interview

53%
24%
14%

Interview Difficulty

3.6
Average

Interview Difficulty

Hard

Average

Easy

68 Candidate Interview Reviews Back to all interviews

Sort: Popular Date Difficulty

1 person found this helpful  

Software Engineer Interview

Anonymous Interview Candidate  in  Menlo Park, CA
Anonymous Interview Candidate in Menlo Park, CA
Application Details

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

Interview Details

I was hiring specifically for an iOS position. The recruiters start with Obj-C 5 multiple choice questions, which required some surprising depth. I won't get into specifics, but take time to understand memory management (even with arc), blocks, addresses and pointers.

After was a phone interview which mostly involved a collaborative coding question. The questions asked here were very typical algorithmic questions, the answers usually involved a hash to cache meta values to increase performance.

Protip: Be familiar with NSSet and NSOrderedSet. These data structures are more performant than NSArrays for some operations, and I found myself using them in almost every answer.

Then you have an onsite visit, with 4 additional interviews: 2 coding, 1 design, and 1 "culture fit" which, for me, was really another coding interview.

Your recruiter will contact during the next week or two afterwards to give you updates on your status. I believe there are three different meetings where your interviewing notes are reviewed and given consideration.

Interview Questions
  • What is something other people misunderstand about you?   View Answer
Negotiation Details
I went back and forth once between a competing company and received higher offers each time. Ask your recruiter for honest assessments of your interviews - if you did well FB will be much more willing to "one up" the competition.
Accepted Offer
Positive Experience
Average Interview

Other Interview Reviews for Facebook

  1. 1 person found this helpful  

    Software Engineer Interview

    Anonymous Interview Candidate  in  Menlo Park, CA
    Anonymous Interview Candidate in Menlo Park, CA
    Application Details

    I interviewed through an employee referral. The process took 4+ weeks - interviewed at Facebook in December 2013.

    Interview Details

    Internal Referral -> Phone Interview -> Onsite Loop -> Offer
    The process was quick, however I interviewed before the holidays and had to wait until afterwards to hear the results. Everyone is really friendly and helpful. HR always keeps you updated on the process.

    Interview Questions
    Negotiation Details
    Had a competing offer from another giant so I was able to negotiate.
    Accepted Offer
    Positive Experience
    Difficult Interview
  2.  

    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 days - interviewed at Facebook in June 2014.

    Interview Details

    I was contacted by the recruiter through linkedin. I had an initial call with the recruiter where I was asked about my interests and what I might be looking for. Recruiter explained me the entire process on how the interview goes. Usually they have an initial phone interview, where you have to write code through collabedit. After that in person interview.

    Phone interview was all about data structures. First the interviewer asked me what interests me about facebook, what is one thing about facebook I like. After that interviewer asked me to print a binary tree in level order. I did that. And then I was asked to print the tree in level order but using DFS. Interviewer was nice, was giving a lot of hints whenever I was stuck. Overall, a good experience.

    Interview Questions
    • Nothing difficult for someone who would be clear on data structures I guess.   Answer Question
    No Offer
    Positive Experience
    Difficult Interview
  3. 1 person found this helpful  

    Software Engineer Interview

    Anonymous Interview Candidate  in  Menlo Park, CA
    Anonymous Interview Candidate in Menlo Park, CA
    Application Details

    I interviewed through an employee referral. The process took 2 weeks - interviewed at Facebook in July 2014.

    Interview Details

    Introduced into the whole process via a referral, so I was able to move quickly to an onsite interview. This was easily the best interview experience I've had in a long time - recruiter was friendly and extremely responsive, and each of the interviews was engaged during the interview.

    Everything moved very quickly once I indicated that I felt prepared to interview.

    Interview Questions
    • Nothing terribly surprising - be prepared to talk through CS fundamentals, large scale design, and code code code.   Answer Question
    Accepted Offer
    Positive Experience
    Difficult Interview
  4. We want your feedback – Is this interview information helpful to you?  Yes | No
  5. 70 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
  6.  

    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
  7. 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
  8.  

    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 1 week - interviewed at Facebook in April 2012.

    Interview Details

    They found me at SO careers for some reason. First we had a HR with nothing really particular then an other skype/phone interview with real time coding. The guy was ok and friendly, answering all my questions. It was the usual American style interview with absolutely meaningless basic CS questions.

    Interview Questions
    • Why do you want to work at facebook? (I didn't really... :))   Answer Question
    No Offer
    Positive Experience
    Average Interview
  9.  

    Software Engineer Interview

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

    I interviewed online. The process took 6 weeks - interviewed at Facebook.

    Interview Details

    After uploading my resume and solving the puzzle I had requested, I got contacted by a recruiter through email. After two weeks, the recruiter interviewed me over the phone to learn about my interests.

    Then, in about two weeks, I had my phone interview. I was asked a question on comparing two general tree data structured. I answered the question and wrote the code correctly in the given space/time constraints.

    A week later I was contacted again and invited for on-site interview. However, the timing was not good and they said given my status (that I need an H1B), and current cap, they cannot move forward with the interview.

    The whole experience was smooth and exciting. I was just not quite lucky with the timeline.

    Interview Questions
    • You might be asked on how much you expect for compensation (by the recruiter). The coding question was alright. It was to compare two general trees and making sure they have the same elements.   Answer Question
    No Offer
    Neutral Experience
    Average Interview
  10. 9 people found this helpful  

    Software Engineer Interview

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

    I interviewed online. The process took 4+ weeks - interviewed at Facebook in August 2013.

    Interview Details

    The processes started with a very quick phone screening that went over my interests, why I wanted to work for Facebook, etc, which was followed up by one or two phone interviews in which I was asked to enter code into a browser and answer a few technical questions. They also asked a few questions about my resume. I took a flight to their on-site interview which included a gorgeous hotel and generous compensation for food, etc. The on-site interview was a few hours but it flew by. Some interviewers seemed experienced and others seemed like they didn't know what they were doing in the interview room. Everyone I interacted with (from phone screening to the actual interviews) seemed very organized and the entire interview process was extremely smooth. I greatly appreciated their coordination and team effort.

    Interview Questions
    • Most difficult questions were around systems design since the question was extremely broad, in which I was supposed to write/draw on a white board for 30-45 minutes explaining what the concept was about. Another unexpected question involved the trie data structure, it wasn't too hard, but I've never heard of it.   Answer Question
    Reasons for Declining

    I didn't want to commute from San Francisco every day and the culture seemed a bit off. Some interviewers were incredible to talk to, however others seemed very arrogant which isn't who I would want to work with.

    Declined Offer
    Positive Experience
    Difficult Interview

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.