

Updated by Meta candidates

Software Engineer, Product Interview Experience
I think I was one of the first people to take Meta’s AI round, and the models I had were really bad, like ChatGPT mini. I tried asking for test cases and it would just spit out something completely wrong.
Interview process
I got into Meta through a referral, and the recruiter reached out quickly. The process was recruiter chat, then a pre-onsite package with CodeSignal, a live technical screen, and a weird multiple-choice engineering philosophy questionnaire, and then about a month later the onsite with DSA, system design, behavioral, and the AI-enabled coding round. Honestly, Meta gave me the best prep materials of any company I interviewed with: a long prep PDF, portal videos, mock system design resources, and even a practice environment for the AI round. Most of the coding questions were exactly the kind of stuff people tell you to study in the Meta-tagged LeetCode list, so I never felt like they were hiding the ball. I didn't get the offer, and I think the system design round was what sank me because I expected distributed systems and got an API-design style chess problem that I handled in a really unorganized way.
- Recruiter screen
- Online assessment
- Phone interview
- Final round
Interview tips
I'd tell a friend to actually trust how open-book this process is and use every prep thing they give you, because Meta is unusually transparent. I would 100 percent do mock interviews, especially for system design, because just reading and watching videos was not enough for me. In the coding rounds, I would start by writing test cases and asking constraint questions, because they care about how you think before you code and they do want you to catch issues in a dry run. Also, if you get the AI round, don't blindly trust the model output. If you use AI, be ready to explain every line it gave you in plain English.
Company culture
My read was that Meta is extremely optimized and standardized right now. They felt more transparent than any other company I talked to, and I genuinely got the impression they want candidates to succeed because they hand you a ton of prep material instead of making you guess. At the same time, they seem very focused on speed and on whether your engineering instincts match their environment, which is probably why that questionnaire exists before the onsite. The interviewers themselves didn't feel adversarial to me. Even the AI round felt collaborative, like they wanted to see how I worked with the codebase and whether I could sanity-check AI instead of copy-pasting blindly.
Questions asked
Overview
The onsite was four interviews: one DSA round, one system design, one behavioral, and the new AI-enabled coding round. The AI round was collaborative and interesting, the behavioral was very transactional, and the system design was the one that really threw me.
Question types asked
Specific questions asked
Solve this maze traversal problem and use the AI tools however you normally would.
What does this new code do?
The problem was basically BFS on a maze with obstacles, and it was level-based so each level added more requirements. I tried using the provided model for things like summarizing the codebase and making sample test cases, but the models I had were bad enough that they gave wrong answers. At one point I had AI add a variable into my BFS and I checked it quickly, and the interviewer stopped me and asked what the new code did. I explained exactly what changed and why, and after that I kept AI usage minimal and solved it mostly myself.
Let's not think about distributed design. Just focus on the API design.
How would you handle undoing a move in the backend?
This was the round that caught me off guard. I had prepared for distributed systems, and instead he immediately narrowed it to API design, which threw me. I went down the path of storing moves so you could replay the game later, almost like watching it back, and then he asked about undoing a move. I struggled because I hadn't seen that pattern before, but eventually I got to the idea of storing an undo move to support replay and reversal. My real problem was that I was unorganized in how I presented things, so even when I got somewhere reasonable I don't think I projected confidence.
Find a minimum element, basically a variation of the peak element problem.
I solved it as a binary search variant where I keep moving down the slope until I reach a minimum. Compared to the system design round, this one felt much more in line with what I had prepared for.
Solve a sliding window problem based on character frequencies inside a window.
I remember this one as a character-frequency sliding window question where you track counts in a window and return something based on the window with the most distinct characters. I got to the one-pass solution for it.
Can you give a stronger example?
The behavioral felt very transactional. It was basically question, answer, next question, with very little probing. The biggest theme I remember was around juggling multiple projects, and I had to explain that in my current job I was mostly working on one main project with systems inside it, so there was probably some cultural mismatch there. They ended the round after about 30 minutes and said they had enough signal.
Get full access with a membership, or share your experience to try it free.
