Facebook

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

Facebook Software Engineer Intern Interview Questions & Reviews

Updated May 22, 2014
All Interviews Received Offers

Getting an Interview  

34%
14%
7%

Interview Experience  

80%
10%
9%

Interview Difficulty  

Average Difficulty
102 candidate interviews Back to all interview questions
Relevance Date Difficulty
in
3 people found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Engineer Intern Interview

Software Engineer Intern
New York, NY

I applied through a recruiter and the process took 5 weeks - interviewed at Facebook in May 2014.

Interview Details – One phone interview and one onsite interview. The process is relatively quick because I contact the HR directly.
The interviewer and the HR are very very nice. Talking to them really makes me feel relaxed.
I had the onsite interview at Facebook New York office. The working environment there is just amazing. I think if you enjoy the job as a software engineer, you would love that.

Interview Question – No very difficult questions. Just take it easy and enjoy the process. Almost all of the question are from the <Cracking the Coding Interview>. A quick response and emphasize on the issue of efficiency are important.
I think Facebook love to ask questions about the tree structure and some practical questions because they are realistic problems. When you prepare and practice, do remember that efficiency is a really significant issue, much more important than simply giving an answer.
And I would like recommend another book <Programming pearls>. Maybe the book is not a hard one to read, but the thought of the author, why the author wants to improve some algorithm and how he solves problems are really fantastic. The questions are from realistic problems and the book is really worth reading several times. It benefits me a lot.
  Answer Question

Negotiation Details – I think it is a great opportunity for me. The interview and the HR are so nice. I would like to work there even without payment. So why should I negotiate ? :)


1 person found this helpful

Declined Offer

Neutral Experience

Software Engineering Intern Interview

Software Engineering Intern

Interviewed at Facebook

Interview Details – I applied through my school career services office and was scheduled for a phone screen. The phone screen consisted of two pretty easy questions. Afterwards, I was flown out to Menlo Park for a full day at Facebook's campus. The on-site was just one interview followed by a few hours of tours and free food.

Interview Question – Design a data structure that supports insert, delete min, delete max, get min, and get max, all in log(n) time.   View Answer


No Offer

Neutral Experience

Average Interview

Software Engineer Intern Interview

Software Engineer Intern
Palo Alto, CA

I applied online and the process took 4 weeks - interviewed at Facebook in April 2014.

Interview Details – Contacted me over email after submitting to Facebook U. I had an interview with an engineer a month after I submitted my resume. The recruiter was very friendly and kind throughout the entire process.

Interview Question – Fibonacci: recursive and iterative.   Answer Question


9 people found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Engineering Intern Interview

Software Engineering Intern

I applied through a recruiter and the process took 2 months - interviewed at Facebook in March 2014.

Interview Details – I originally had applied to Facebook through their online portal. After a few weeks of no response I reached out to a recruiter at a Facebook event and she saw my resume. After I convinced her I was ready for the interviews, she set up my first phone interview of three total.
After the interviewer gave a fairly long intro of his bg I was asked several behavioral questions. I was asked why I picked Facebook, what is my field of interest, and had to discuss a project of mine.
At this point we reached the technical portion. He asked me the following question.
Q: Given a number n, return a number formed from the same digits of n that is the number right before n. Example: Given 1342, you must return the number 1324.
After this we spent a fairly lengthy period of time talking about coding habits, facebook, push cycles, and other production related questions I asked.
At the end of this interview I felt terrible, I thought I'd completely failed it because I only answered one question. I couldn't sleep all night, but then the next day itself I received an e-mail saying I'd passed to the second round. They asked if I wanted some time to brush up before going in for my final interview. I asked for a week and prepared.
My second interviewer called from a conference room due to which the sound quality was a bit off. We talked and she asked me a few similar questions to the first interviewer delving into my background, projects, and my schoolwork. Eventually we began the coding questions.
The first question was the LCA problem with no parent pointers. I immediately started analyzing the problem's base cases for recursion, determined an optimum algorithm that covered all cases, and wrote the solution before coding. After explaining it and running through test examples I began coding the solution. After coding it, I spent a fair amount of time proving my code works with the interviewer before she accepted it worked. We had approximately 15 minutes left at this point so he said we can begin another problem before ending five minutes early, a statement I was confused by.
The second question was to design a method to store really large numbers that exceed 64 bits, and then to write a method that can add two of these numbers. I began coding and had just finished the code when he said we ran out of time. He asked me about any questions I had and seemed to be in a hurry so I asked a few questions then the interview ended.
At this point I waited for approximately 2 weeks after I sent two emails to my recruiter asking about the feedback from the interview. I was asked to do a third phone interview with a product team member as the engineers had noted I was interested in product development. I was a bit confused but happy overall to still be in the running. We scheduled it for a few days later and I went in relaxed.
In the interview, I was asked why Facebook, a project of mine, which field I'm interested in and why, followed by a technical question. I coded in Java although she mentioned she hadn't used Java in a while so she didn't care as much about the syntax.
The first question was the classic anagram question. I described two solutions, one using a HashTable and one relying on bucketsort. I coded both methods and did a complexity analysis before she expanded the problem. Now rather than checking if two strings were anagrams, I had to group a list of strings by anagram grouping. I described how we could use a Hashtable to store the sorted string as a key, and have the original string be contained in the value as a linked lists. After writing the algorithm out in pseudocode she said I didn't have to implement it in Java and that she believed it would work. After a complexity analysis she then asked me this mix of behavioral technical questions.
What would you do if Mark Zuckerberg came to your desk and told you Facebook was slow and he wanted you to fix it.
She then asked me to describe a product I'd design if I worked at Facebook. I mentioned several related to data analytical tools for Facebook users on their own data. I mentioned the benefit to users before naming another idea involving querying newsfeed for posts related to the topics described in the query.
After this she asked me if I had any questions for her before she told me that my recruiter would get back to me within a week. I waited three days before I received an e-mail from my recruiter that she wanted to talk for a few minutes if I had time. I immediately responded I was free and she called me shortly after.
She then gave me my offer for an internship in Menlo Park, described the components of the compensation, and explained briefly the process involved with the internship. Afterwards she asked me if I had any questions. I was too blown away so I just said I'd email her once I think of questions before we ended the call. I accepted that night.

Interview Questions

  • Given a number n, find the largest number just smaller than n that can be formed using the same digits as n.   View Answer
  • Design a system to store large numbers and a function to add them.   View Answer
  • How would you make Facebook faster?   View Answers (2)
  • 1. Given two strings, determine whether they are anagrams.
    2. Given a list of strings, return a list of lists of strings, which represents the list grouping strings by whether they are anagrams of one another.
      Answer Question
  • LCA problem with no parent pointers. Given the root of a tree and pointers to two nodes contained in that tree, return the lowest common ancestor of the two nodes. IE, the common ancestor furthest from the root.   View Answer

Negotiation Details – There was no negotiation for me as I had no other offers. I have heard that if you have a competitive offer from a rival company then they are willing to negotiate a little bit.


1 person found this helpful

No Offer

Neutral Experience

Average Interview

Software Engineer Intern Interview

Software Engineer Intern

I applied through college or university - interviewed at Facebook in November 2012.

Interview Details – Submitted resume in Campus Recruiting. Got an phone interview and an online test. In the phone interview, the interviewer asked questions on my resume, and some projects I did. Then he asked a programming problem. Then the HR invited me to a online test. The online test is on interviewstreet.com. The problem is not very easy.

Interview Question – Compute square root of a integer, without using the built-in sqrt method.   View Answers (2)


Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Intern Interview

Software Engineer Intern

I applied through college or university and the process took 4+ weeks - interviewed at Facebook in February 2014.

Interview Details – Reached out recruiter on campus career fair. Got campus interview and later on-site interview. Since I had another pending offer deadline before the on-site interview date, they rescheduled the on-site interview via phone (which is a pity). The on campus interview (45min) only had one question on whiteboard I made it smoothly. The phone interview, however had two questions in 45min. I spent 30 mins on the first one and didn't finished the second question, but the interviewer was super nice! He gave me some hints on the second one and discussed with me about the question when I knew I already ran out of time. He even answered my question patiently. I had a pending offer deadline and requested a quick feedback, and two days later I got the offer! That was awesome since I didn't expect to get it at first.

Interview Question – The phone interview was kind hard and none of them appeared one leetcode etc. But do not stress out since engineers are friendly and helpful.   Answer Question

Negotiation Details – No negotiation. They were super nice people.


Accepted Offer

Positive Experience

Difficult Interview

Software Engineer Intern Interview

Software Engineer Intern

I applied through college or university and the process took 1 week - interviewed at Facebook.

Interview Details – Two interviews, back to back, 30 minutes each. They were reasonably difficult, but nothing too difficult. Given the time constraint, it can be very hard to through all the questions. Post-interview however, the recruiter took us out to dinner.

Interview Question – Typical types of tree questions, such as finding the maximum tree length, closest path to various sets of nodes, along with being able to detect levels of all nodes as efficiently as possible.   Answer Question

Negotiation Details – No negotiation for internships


1 person found this helpful

No Offer

Positive Experience

Difficult Interview

Software Engineer Intern Interview

Software Engineer Intern
Seattle, WA

I applied online and the process took 2 weeks - interviewed at Facebook in February 2014.

Interview Details – Originally applied as a Production Engineer Intern, but the recruiter thought I was a better fit for SE. Interview consisted of the usual personal question and a coding problem in collabedit. It's a twist on the classic palindrome question. After following up about 5 or 6 days later, I was rejected.

Interview Question – Check if two strings (including caps, whitespace, punctuation) are palindromes without doing any preprocessing. I wrote my code in Java.   View Answer


1 person found this helpful

Accepted Offer

Positive Experience

Average Interview

Software Engineer Intern Interview

Software Engineer Intern
Menlo Park, CA

I applied through college or university and the process took 4 weeks - interviewed at Facebook in October 2013.

Interview Details – I spoke to an engineer at a university career fair and gave them my resume. I was contacted the next day for an on-campus 45-minute interview. The interviewer was nice and got straight to the technical questions. He asked two. The first was easy, and I spent the rest of the time on the second. He gave me hints as I struggled along.

I was told we would receive feedback in the next week. I got an email a week later about flying to their Menlo Park, CA HQ for an on-site interview and tours/talks. The schedule consisted of one 45 minute interview, and the rest of the day was lunch, a tour, and two tech talks. It was very relaxing! The interviewer asked me one technical question and built it up a bit, and then he asked me about the most recent bug I encountered.

It took them three weeks to get back to me, which made me think I didn't get the job, but I got the offer in the end!

They were really nice and really wanted to get to know you as a person, not just whether you know your algorithms. They also really cared about showing their interest in hiring you, which was a plus and not something you get at a lot of big tech companies.

I had a great experience!

Interview Questions

  • Given a library of numbers to corresponding letters (1 = a, 2 = b, 3 = c, etc.) and a string made up of digits, return how many different ways those digits can be translated to letters.
    ex: “1111”: “aaaa” “kaa” “aka” “aak” “kk” => 5 different ways
      View Answers (2)
  • Print out the nodes of a binary tree level by level.   Answer Question


No Offer

Neutral Experience

Average Interview

Software Engineer Intern Interview

Software Engineer Intern

I applied through college or university and interviewed at Facebook.

Interview Details – I was interview for a internship position. The interview was on-campus and was relatively easy.

Interview Question – Ordinary technical interview   Answer Question

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.