The recruiter reached out via LinkedIn. I was then scheduled for a phone interview.
One week after the phone interview, I went on-site for five 45-minute one-on-one interviews. The first interview dedicated 25 minutes to behavioral questions (e.g., challenges, conflicts, etc.). Including the first one, three interviews involved whiteboard coding algorithm questions. The other two interviews focused on system design.
The algorithm questions could be found on LeetCode and CareerCup. The system design questions focused on distributed systems.
Practice was key. Although I had about three weeks to prepare for the interviews, as a father of two toddlers, I could only manage a couple of hours here and there. It's pretty hard to study when another pair of little hands are also banging on the keyboard at the same time. With limited time, I focused more on the algorithm questions and did well on the coding rounds.
However, a week after the on-site, HR informed me of the decision to reject my application due to poor performance on the design round. I didn't think I did badly on the design round, but with a large candidate pool, they could be very selective in hiring. It's a devastating feeling to see your fate controlled by some 20-year-olds. Still, I feel that with more practice on system design questions, it's not impossible to get there.
The following metrics were computed from 359 interview experiences for the Meta Software Engineer role in Menlo Park, California.
Meta's interview process for their Software Engineer roles in Menlo Park, California is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Meta's Software Engineer interview process in Menlo Park, California.