Engaged Employer

# Facebook Software Engineer Interview Questions

Updated Oct 7, 2015
121 Interview Reviews

88%
8%
3%

34%
24%
14%
13
11
1

3.3
Average

Hard

Average

Easy

## Software Engineer Interview

Declined Offer
Neutral Experience
Difficult Interview

Application

I applied through an employee referral. The process took 2 weeks. I interviewed at Facebook (Palo Alto, CA) in October 2009.

Interview

Multiple interviews. Very heavy CS/discrete math based questions. They are definitely hiring only the smartest people! Also, long waits between interviews. Other than that, they were very professional and employees were open in sharing their experience while working at Facebook (lots of energy and enthusiasm in general, mostly because its a lot of young/college kids)

Interview Questions

• Given two events, each with a start and end time, implement a boolean check to see if they overlap.   4 Answers
• Reverse a string in-place using C.   2 Answers

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied through an employee referral. The process took 3 days. I interviewed at Facebook (Menlo Park, CA) in April 2012.

Interview

The recruiter called up and asked me if I was interested in the job opportunity. The process began with solving a programming problem on InterviewStreet for which I was given 90 minutes to solve. This was followed by a 60 minute telephonic interview. After clearing these two rounds, I was invited onsite and I had to go through 3 face-to-face interviews. The problems were hard algorithmic problems and you are expected to write clean code in the first go. The interviewers were really friendly and helpful. My advice would be that you have confidence in yourself and be as honest in an interview as possible. For practice, you should be well versed with standard algorithmic techniques like dynamic programming, greedy algorithms, solving linear recurrences in logarithmic time, recursion, tree traversals, etc.

Interview Questions

• You are given an integer N and an integer M. You are supposed to write a method void findBestCoinsThatMinimizeAverage(int N, int M) that prints the best collection of N coins that minimize the average number of minimum coins needed to generate values from 1 to M. So, if M = 100, and N = 4, then if we use the set {1, 5, 10, 25} to generate each value from 1 to 100, so that for each value the number of coins are minimized, i.e. 1 = 1 (1 coin), 2 = 1 + 1 (2 coins),..., 6 = 1 + 5 (2 coins), ..., 24 = 5 + 5 + 5 + 5 + 1 + 1 + 1 + 1 (8 coins), and we take the average of these coins, we would see that the average comes out to ~5.7. But if we instead use {1, 5, 18, 25}, the average would come out to be 3.7. We are to find that set of N coins, and print them, that produce the minimum average.   8 Answers

Negotiation

I was able to negotiate. If you have an offer, you can always negotiate. All the rules are meant to be broken but some are hard to break. It would be easy to ask for a higher relocation bonus but difficult to ask for 8 more paid leaves.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied through an employee referral. The process took 4+ weeks. I interviewed at Facebook (Menlo Park, CA) in May 2012.

Interview

I was contacted by recruiter via employee referral. Chose to go on site for initial interview. This was followed by onsite day of interviews a few weeks afterwards (I asked for some time to prepare for coding tests). The second set of interviews comprised of 2 coding tests, one design, one behavioral, lunch with hiring manager and one interview related to my technical specialization. Received offer within a week of final set of interviews.

Interview Questions

• Coding tests were the hardest part for me since I have been out of school for a long time now :) Prepare for questions related to trees, graphs, strings, dynamic programming and practice writing code on paper.   Answer Question
3.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied through an employee referral. The process took 2 weeks. I interviewed at Facebook (Palo Alto, CA) in January 2011.

Interview

Sourced through a friend who works there, really good communication and speed. I totally bombed an initial on-site but then was able to get another one. Studied up for it, did a lot better and then went on-site for a full day. Got to meet a lot of awesome engineers, guess I did okay since I got an offer and it was the best day of my life!

Interview Questions

Negotiation

None

4. Is this helpful? The community relies on everyone sharing – Add Anonymous Interview Review

5.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied online. The process took 2+ months. I interviewed at Facebook (Seattle, WA) in November 2011.

Interview

Sent in my resume and got a recruiter e-mail 2 days later. Had 2 initial on-site intervies in Seattle, then a full loop (4 interviews) in California, and 1 final interview. On my full loop one interviewer felt like I didn't do as well on the coding question and they asked me to do 1 more interview. Overall the recruiter kept in touch with me throughout the process.

Interview Questions

6.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied online. The process took 2+ months. I interviewed at Facebook (Palo Alto, CA) in July 2011.

Interview

Phone screen, Excel test, phone interview, skype interviews, 30 page assignment, flew out for on-site interviews, more phone interviews, flew out again for on-site interviews. They put me through the ringer before they hired me. But the questions were relevant and the people I met were great. This was back in their Palo Alto offices though.

Interview Questions

• Pre-IPO, they asked me to write a paper on the valuation of Facebook. They also asked me what I thought the greatest technological advancement was in the past 20 years.   Answer Question

Negotiation

They sold me on the equity. I didn't negotiate.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied online. The process took 2 weeks. I interviewed at Facebook (Menlo Park, CA) in September 2013.

Interview

Telephone chat with recruiter followed by an onsite interview. Onsite interview had five 45 minute interview sessions, and all of them were very technical (writing code on the whiteboard or talking about system design).

Interview Questions

Negotiation

The offer was very good so little negotiating was necessary.

8.

## Software Engineer Interview

Declined Offer
Positive Experience
Difficult Interview

Application

I applied through a recruiter. The process took a week. I interviewed at Facebook (Palo Alto, CA) in August 2013.

Interview

Process was extremely straight forward and everyone I dealt with was very friendly. I did a phone screen and then was flown to HQ to meet with engineers to have my skills tested.

Interview Questions

• Various programming questions   1 Answer

Reasons for Declining

I was in a unique situation where Facebook was also looking to acquire software I had made. I was hoping for more than just a salary/job offer, so ultimately those negotiations broke down and I wasn't interested in just a job.

9.

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied through an employee referral. The process took 2 weeks. I interviewed at Facebook (Menlo Park, CA) in August 2015.

Interview

Initial 45 minute screen: whiteboard coding problem, algorithmically simple, but with oddities. Full loop: 6 x 45-minute sessions: 2 coding, 2 design, 1 cultural/technical (tell a story about a difficult experience and how I overcame), 1 lunch (off-the-record chance to ask tons of questions about company culture)

Interview Questions

• Design a real-time type-ahead search-phrase predictor which presents the top-10 ranked search strings that begin with a given prefix.   Answer Question

## Software Engineer Interview

Accepted Offer
Positive Experience
Difficult Interview

Application

I applied through an employee referral. The process took 2+ weeks. I interviewed at Facebook (Pittsburgh, PA) in April 2015.

Interview

I was ask to answer a few question about my resume and followed two coding questions. For each question, the interviewer asked the time and space complexity and how to improve them. At the end, he asked me whether if I had questions for him or the company.

Interview Questions

• 1. Binary Tree level order traversal 2. Given a string and a pattern '.' Matches any single character. '*' Matches zero or more of the preceding element.), find the first substring matching this pattern.   4 Answers
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.