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.
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.
Grateful doesn't even begin to describe how I feel about landing this role. The interview loop was smooth and friendly. They kicked things off with a technical round where I faced a DSA question about verifying an alien dictionary. Lucky for me, the time I'd spent on PracHub paid off, as it had the same type of problem just days before. After that, I had a system design discussion and a behavioral interview. Everything felt very collaborative, and by the end, I received an offer that I was thrilled to accept.
Interview questions [1]
Question 1
Given a list of words written in an alien language and the order of letters in that language's alphabet, determine whether the words are sorted lexicographically (Verifying an Alien Dictionary). Walk through the comparison approach using a character-to-index map, the O(C) time complexity where C is total characters, and how you'd extend it to handle words with mixed-case letters or words containing characters outside the given alphabet.
I applied online. I interviewed at Meta (Menlo Park, CA)
Interview
It's honestly striaght from leetcode tagged
There are no surprises if you do tagged you would be good and do well.
System design is much harder. Would recommend using hello interview.
Interview questions [1]
Question 1
Design Twitter and consider if it was suddenly an extremely low latency env