I applied online. The process took 1 week. I interviewed at Meta (Menlo Park, CA) in Dec 2015
Interview
Applied online and got first information call after 1 week.
First technical phone screening involving first SQL screen and 2nd programming round back to back for 30 minutes each.
Sql questions were avg- tough and same was the case with programming (they allow you to choose your preferred programming language to code).
Interview questions [1]
Question 1
1)- programmingl find the max no from the given set of elements in an array (without using max function)
2)- Find the minimum absolute difference between the set of elements of an array.
I applied online. The process took 4 weeks. I interviewed at Meta (Singapura) in Nov 2015
Interview
I interviewed with Facebook position Data Engineer for Singapore office. The whole process took 4 weeks, mainly for waiting for the result. It took me 2.5 weeks just to receive the Thanks but no thanks email!
Technical bar for this position is very low, questions are easy especially on SQL. However, they are looking for a person also can work with BI team so there are some requirements on the non-technical side, e.g product sense. Do prepare to be interviewed by "manager" people who doesnt asset based on technical skills but your manner and personality. I was quite surprised when one of them asked me why I have 8 years of experience but already worked for 7 companies. It is teally offensive and I couldnt believe a company like Facebook asked me that question!
In general, it as a bad experience for me, especially the waiting part!
I applied online. The process took 4 weeks. I interviewed at Meta (Menlo Park, CA) in Oct 2015
Interview
The process started with my submission of a resume. Several months later, I was invited to a phone interview with a recruiter. After that, there was a 45 minute technical phone interview that covered a basic palindrome detection coding exercise that I solved in Python. Several days afterwards, I was invited to a second 45 minute phone interview that focused on performing a merge-sort with pure SQL. Finally, I was invited to fly out to Menlo Park and interview on-site for an interview loop.
The phone interviews went relatively smoothly, both interviewers were incredibly kind and professional. The on-site interview was an amazing experience, but was a night and day difference from the difficulty of the phone interviews. Although substantial in subject, each interviewer was again kind and professional and I got the honest feeling they wanted me to succeed.
It was the first interview I've ever had where I didn't feel attacked interrogated and felt at complete ease. Facebook has done a wonderful job at cultivating a supportive and encouraging culture which shone through during the entire interview process.
That all said, my best advice for those interview is to not let the colloquial atmosphere lull you into a sense of ease. While the interviews are warm and helpful, their ultimate goal was to choose prime candidates. Be yourself, be honest, but never "let your guard down" and choose your words carefully. Every response is measured!
Some technical notes on how to prepare (and consequently things I think I fell below the grade on!):
1. Be able to effortlessly calculate Big O for any given algorithm.
2. Be ready to use both built-in solutions for your chosen programming language and custom. For example, splitting a string by spaces "by hand" and using a built-in.
3. Switch gears between iterative and recursive. It may not matter what is the most efficient route, but the interviewer may want to see if you're able to solve the problem with either approach.
4. Ask for your boundaries. Can you use more than one technology? Can you offload some of the work to the DB? Can you use built-ins?
5. Understand the fundamentals for everything you say. For example, know when to approach query optimization with an index and when to solve it with summary tables.
6. Triple check with your Uber drive to make sure they know the right building to go to ;)
Interview questions [5]
Question 1
Create DDL (table and foreign keys) for several tables in a provided ERD. ERD contains at least one many to many relationship.
Given full authority to "make it work", import a large data set with duplicates into a warehouse while meeting the requirements of a business intelligence designer for query speed.