I applied through an employee referral. The process took 2 months. I interviewed at Meta (Kirkland, WA) in Aug 2015
Interview
Asked a friend to refer me. Was contacted by a recruiter within two days. Quickly scheduled a tech-screen (essentially mini-ninja interview). After that came the on-site loop.
2 ninja, 2 pirate and 1 jedi interviews. Can't share specific questions, but plenty of other people did already. Unlike Google (interviewed with them also), Facebook seems to have a smaller question pool as one of the system design questions I got I've also seen on Glassdoor before.
I recommend going through the information recruiters provide for interview preparation. Since Google and Facebook use very similar processes, "Stevey's Blog Rants: Get that job at Google" post is also quite relevant and useful. Know your data-structures, algorithms, practice solving problems for a few weeks and you should be in good shape.
For system design questions, you will be asked to design Facebook-scale systems. Think data way beyond the scope of one machine, billions of items, thousands of requests per second. Hands on experience with such systems is of course "the king". In the absence of that - study distributed NoSQL systems, MapReduce and similar things and you should be in good shape.
Overall I was very happy with the on-site interviews and the level of support Facebook recruiters and engineers provided me. This was probably the best interview experience that I've had.
Having a competing offer handy will surely help you negotiate better compensation. Facebook seems to have an awesome culture. Deciding to reject their very generous offer for another one wasn't an easy call. One really can't go wrong by joining Facebook.
Facebook is the only company that I know that provides interview feedback. Regardless whether you pass or not I recommend asking for it as it will help you get better.
Interview questions [1]
Question 1
Data-structures, sorting, Big-O notation, large system design.
Took about a month altogether, which felt longer given the intensity of the process. Kicked off with a technical screening, followed by two rigorous coding interviews. The DSA question on binary tree vertical order traversal hit me hard at first, but then I recognized the prompt instantly — I had just worked through something similar on PracHub. The final round was focused on system design, and while I ended up receiving an offer, I ultimately declined it. Overall, a challenging experience that definitely sharpened my skills.
1 leetcode med, 1 leetcode hard. make sure you know your DSA and leetcode questions. I wasn't able to get an offer bc i didnt complete the second question. Got a reply 2 days later saying they would move on
Overall, the process took a little over two weeks, which felt a bit longer than I anticipated. After a quick screening, I went through two technical rounds focusing on coding and DSA concepts. One of the questions was a classic palindrome check; mid-way through, I realized it was something I had practiced on PracHub just days earlier. The final step was a casual behavioral interview. I was relieved to get an offer shortly after, which I happily accepted.
Interview questions [1]
Question 1
Given a string, determine if it is a valid palindrome considering only alphanumeric characters and ignoring case.