Facebook Front End Engineer Interview Questions | Glassdoor

Facebook Front End Engineer Interview Questions

Updated Nov 27, 2017
26 Interview Reviews

Experience

Experience
84%
4%
12%

Getting an Interview

Getting an Interview
44%
28%
20%
8

Difficulty

3.3
Average

Difficulty

Hard
Average
Easy

26 Candidate Interview ReviewsBack to all Interviews

Filter

Sort: PopularDateDifficulty

Filter

Sort: PopularDateDifficulty

Helpful (8)  

Front End Engineer Interview

Anonymous Employee
Accepted Offer
Positive Experience
Average Interview

Application

I applied through an employee referral. I interviewed at Facebook.

Interview

I applied for a Front End Engineer Intern position through a referral. A recruiter got back to me in about 3 weeks with a 30-minute phone screening. I had two additional 45-minute video+CoderPad sessions before receiving an offer.

Interview Questions

  • Explain the concept of ES6 Promises to a 5-year-old.   Answer Question
  • What are the advantages of using ES6 maps over objects? What about using ES6 sets over arrays?   Answer Question

Other Interview Reviews for Facebook

  1. Helpful (3)  

    Front End Engineer Interview

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

    Application

    I applied through a recruiter. The process took 2 weeks. I interviewed at Facebook (Menlo Park, CA) in August 2017.

    Interview

    Skype interview

    Interview Questions

    • Given input:

      // could be potentially more than 3 keys in the object above
      items = [
      {color: 'red', type: 'tv', age: 18},
      {color: 'silver', type: 'phone', age: 20}
      ...
      ]

      excludes = [
      {k: 'color', v: 'silver'},
      {k: 'type', v: 'tv'},
      ....
      ]
      function excludeItems(items, excludes) {
         excludes.forEach(pair => {
            items = items.filter(item => item[pair.k] === item[pair.v]);
         });
         return items;
      }

      1. Describe what this function is doing...
      2. What is wrong with that function ?
      3. How would you optimize it ?   2 Answers

  2. Helpful (13)  

    Front End Engineer Interview

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

    Application

    I applied through a recruiter. The process took 2+ months. I interviewed at Facebook (Menlo Park, CA) in October 2016.

    Interview

    I applied through a recruiter who contacted me in September. She was nice and we booked a Phone/Screen coding interview.

    They are using CoderPad for these. This first interview consisted of 3 questions, they all seemed pretty easy and then the interviewer asked for edge cases, a bit more challenging but nothing impossible. The interviewer was really nice and encouraging.

    After that, I had another Phone/Screen interview which was basically the same. There was a basic question which was to code an observer pattern. It wasn't too hard but much more challenging than the first one, especially when the interviewer ask about some edge cases. Again the interviewer was really nice and encouraging and giving you clues when he saw I was blocked.

    I finally got to the last step, the onsite interview, and it was a bit different in my opinion. First, the process took a lot of time, I had a chat with a recruiter but I didn't know if I would have the interview in London or in Menlo Park. It took almost a month before I had the interview organised. I finally flew from London to Menlo Park for the onsite interview, the organisation was pretty easy though, everything is arranged by Facebook, I flew 2 days before the interview and returned the evening after the interview.

    The onsite interview consisted of 4x45 min interview, 2 coding interviews on a whiteboard, 1 conversation interview and 1 architecture interview. I felt like one of the coding interview was much harder than any other interview I had with Facebook and it was also much harder to get things right on a whiteboard, and I was absolutely terrible at this one. The other coding interview was more like the phone/screen interview, not too hard but a bit more challenging when I got to the edge cases, it made me wonder if I've just been very unlucky for the first coding interviews that I had a much harder one, but well that's part of the game. I can see that people were asked to code the array flatten in a iterative and recursive way for the first phone/screen interview, but I did it in a recursive way only, so I guess I got lucky in other interviews.

    In those interviews you will be mostly asked algorithms questions: iterative and recursive patterns, complexity (big O notation) and data structures. Don't hesitate to ask questions and to talk about the problem before even starting to code, that's very important especially that on a white board it's much harder to amend code (you can't copy paste or add line breaks everywhere), it's very important to know what you're going to do before writing anything, rather than writing as you think, like I did. Also the interviewers were very nice and encouraging even though I was terrible, they kept giving me clues and ways to think. I also was super stressed and slept around 3h the night before because of the jetlag, which didn't help.

    Besides those coding interviews that were the challenging part for me, the conversation interview was more about getting to know me and classic interview questions (Why Facebook? Why Front End? Tell about a project you had and how you solved it? Tell about a conflict you had at work and how you dealt with it?), for this one the recruiter told me about all these questions before so I had everything prepared.
    The architecture interview was more about how you would approach a front end problem and how you would structure your code, whether it's about HTML, CSS or Javascript. This one didn't seem to be too hard, if you have enough experience with layouts and front end issues, it shouldn't be fine.

    After that one, I came back to London in the evening, a recruiter called me on Skype 2 days later and told me the team didn't want to go forward. I was kind of expecting it since I haven't been good in the coding interviews, still I was very disappointed and frustrated that I went all the way to Menlo Park, visited the Facebook HQ and that I eventually failed... But still the recruiter was very nice and keen to give me any feedback, I was just so disappointed that I didn't ask anything.

    In the end I'd say it was a very positive experience, all the people I've been in touch with were very kind and encouraging, the interviews seemed reasonable and looked like things I should be able to solve if I was a top coder. I have to wait more than 1 year to try again and I might do it, I hope I can have the onsite interview in London this time.

    Interview Questions

    • Given 2 identical DOM trees (but not equal) and one element of the first DOM tree, how would you find this element in the second DOM tree?   3 Answers
    • Write an array flatten function.   1 Answer
    • Write an emitter class:
      /*
      emitter = new Emitter();

      // 1. Support subscribing to events.
      sub = emitter.subscribe('event_name', callback);
      sub2 = emitter.subscribe('event_name', callback2);

      // 2. Support emitting events.
      // This particular example should lead to the `callback` above being invoked with `foo` and `bar` as parameters.
      emitter.emit('event_name', foo, bar);

      // 3. Support unsubscribing existing subscriptions by releasing them.
      sub.release(); // `sub` is the reference returned by `subscribe` above

      */   3 Answers

    Facebook Response

    Dec 15, 2016 – Your Friends at Facebook

    Thanks for sharing your feedback. We're happy to hear that your interview experience was positive and our interview team was impactful. Please stay connected with us through our talent communities... More

  3.  

    Front End Engineer Interview

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

    Application

    I applied through a recruiter. The process took 2+ months. I interviewed at Facebook (Menlo Park, CA) in November 2016.

    Interview

    This process consisted of an initial Skype chat (with a couple of technical questions at the end), then two technical screening Skype / CoderPad interviews, then an on-site interview. The on-site interview itself consisted of one behavioural interview, then two technical coding interviews, then one design / architecture interview. I was guided through the process by recruiters and a co-ordinator.

    Interview Questions

    • Can you write a function that deeply flattens an array?   4 Answers

  4.  

    Front End Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Positive Experience
    Average Interview

    Application

    I applied through a recruiter. The process took a week. I interviewed at Facebook in October 2016.

    Interview

    1 HR Phone Call followed by a Video Call interview. The interview process was very pleasant and I can't say enough about how amazing the recruiter was that helped me through the process. I feel like I needed to brush up more on Javascript fundamentals, best practices with CSS, and being more careful with iteration and recursion concepts.

    Interview Questions

    • I was asked basic Javascript concepts for the phone interview. For the video call I was asked to flatten an array recursively and iteratively in Javascript as well as to do some HTML and CSS design given a picture by the interviewer.   Answer Question

  5. Helpful (12)  

    Front End Engineer Interview

    Anonymous Employee in Seattle, WA
    Accepted Offer
    Positive Experience
    Difficult Interview

    Application

    I applied online. The process took 4+ months. I interviewed at Facebook (Seattle, WA) in August 2016.

    Interview

    I've interviewed with lots of big companies and overall have had mostly terrible experiences. Facebook was different, in a very good way. You can tell that a lot of thought and care have gone into their recruiting process.

    I saw that they were hiring for front end engineers in Seattle, so I applied on a whim and sort of forgot about it after a while. A couple months later, a recruiter reached out to me and we had an initial phone conversation. This was a very initial screen that was mostly non-technical with the exception of some quick and simple JavaScript pop-quiz questions at the end (== vs ===, describe event delegation, etc).

    Next step was a technical phone screen. This was pretty fast-paced as the interviewer was trying to squeeze in as much as possible in a short amount of time while leaving time at the end to field my questions. He did a very good job at keeping things moving and on track, asking me some general questions about my background and then some simple coding exercises to test my knowledge of HTML and CSS, and consequences of going with different design choices. Then a simple JavaScript tree problem.

    Next were the in person interviews. This is the part I thought they did exceptionally well compared with other companies. The whole process was extremely transparent and I was given lots of information and resources ahead of time so that I knew what to expect. It consisted of 2 coding (ninja) interviews, a design (pirate) interview, and a behavioral (jedi) interview, all about 45 minutes each. Between interviews a lunch was scheduled with another engineer, who is not part of the feedback loop, giving me plenty of opportunities to ask my questions about company and culture, as well as get a tour of the office.

    Overall, the questions seemed very relevant to the position. The interviewers were also super friendly and helpful along the way, and seemed to genuinely want you to succeed. No over-bearing egos set out to prove how much smarter than you they were, or trying to trip you up with trick questions or irrelevant questions (I've been asked physics questions before for front-end roles, sigh).

    Great experience.

    Interview Questions

    • (Phone) Given two identical DOM tree structures, A and B, and a node from A, find the corresponding node in B.   Answer Question

    Negotiation

    It sounds like the recruiter tries to negotiate on your behalf to get the highest offer up front. If you have a competing offer you may be able to push back and get a little more. In my case, I wasn't able to negotiate up on base salary, but was able to get more equity (they even gave me a little more than I had asked for).


  6.  

    Front End Engineer Interview

    Anonymous Employee in Menlo Park, CA
    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 July 2016.

    Interview

    The process was both smooth and quick. I applied by referral, and had a phone interview within a couple weeks. After that went well, I went on to an onsite. The onsite was just 4 parts, plus lunch. The coding challenges were both fun and relevant to me as a front end engineer. And the people were really friendly and welcoming. I even felt like the interview could have been longer without it being a problem.

    Interview Questions

    • Name a difficult challenge you faced while working on a project.   Answer Question

    Facebook Response

    Sep 6, 2016 – Your Friends at Facebook

    Thanks for sharing feedback on your interview experience. We're glad to hear that your process was very smooth & quick. Welcome to Facebook!


  7. Helpful (19)  

    Front End Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Positive Experience
    Average Interview

    Application

    I applied through a recruiter. The process took a week. I interviewed at Facebook in April 2016.

    Interview

    Initial HR screen which included some basic front end questions: .call vs .apply,

    Followup with a phone call + online coding screening with questions bellow. 40 minutes long followed by 20 minutes of questions. Interviewer was very enthusiastic and very welcoming, didn't feel any kind of negativity. Flopped on the easy questions so knew that I wasn't getting the on-site invite but interviewer was still very happy to answer company related questions and go into detail.

    Interview Questions

    • Given a picture, how would you hide/show a child picture on hovering on this parent?   3 Answers
    • How would you ensure clicking on this picture would go to a specific link?   4 Answers
    • How would you ensure the child is positioned in the top right of the parent picture?   1 Answer
    • Given an array, return it's flattened structure(skip objects)   7 Answers

    Facebook Response

    Jun 6, 2016 – Your Friends at Facebook

    Thanks for sharing your feedback. We're happy to hear that your interview experience was supportive. Please stay connected with us through our talent communities! Facebook Careers on... More

  8. Helpful (7)  

    Front End Engineer Interview

    Anonymous Interview Candidate in Folsom, CA
    No Offer
    Negative Experience
    Difficult Interview

    Application

    I applied online. The process took 3 weeks. I interviewed at Facebook (Folsom, CA) in November 2015.

    Interview

    The interviewer called me on my Skype. We used an interactive coding website. First part was about my resume (3-4 minutes), then the coding part (40 minutes), then questions from me to the recruiter (3-4 minutes).

    Interview Questions

    • If you have 500 revisions of a program, write a program that will find and return the FIRST bad revision given a isBad(revision i) function.   3 Answers
    • Tell me a difficult problem you had to solve.   Answer Question

  9. Helpful (26)  

    Front End Engineer Interview

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

    Application

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

    Interview

    Initial Chat - 3 basic JS questions ---> difference between == and === , difference between block and inline and I forgot the third

    Calendar challenge (as the others have said there's a challenge). I too think this was the most difficult.

    Then on-site. I heard a lot of good things about their interview process on-site, but I felt like mine wasn't that great. I had 3 interviews back-to-back without breaks. I didn't get a tour or a meal...

    I also received no feedback, just that my whiteboard code wasn't clean (Um you should be quick, if you fail 1 interview you fail .. period). My recruiter was great. You can tell she tried. They called me a few days later telling me I didn't meet the requirements.

    BIGGEST TIP: Go through all the questions on Glassdoor and CareerCup, code on paper not on your laptop! Trust your code will come out cleaner on a whiteboard this way.

    Interview Questions

    • Given two identical DOM trees (not the same one), and a node from one of them find the node in the other one.   6 Answers
    • Flatten array. This array can have multiple types: {}, [], "", undefined, null, 123 are all valid types inside the array.   3 Answers
    • Given a grid of characters output a decoded message. The message for the following would be IROCKA. (diagonally down right and diagonally up right if you can't go further .. you continue doing this)

      I B C A L K A
      D R F C A E A
      G H O E L A D   5 Answers
    • Basic JavaScript async stuff (you should know event bubbling, debounce (its variant)... know how to code it). It would be a good idea to be aware of JS closure as well.   Answer Question
    • Poll Widget question (just know your positioning, relative, static etc know the differences inside out). You might want to know specificity as well.   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.