2024 Meta Engineer Interview Process— I Passed!
I did it! I have passed the Meta interview process and will join the company next month as a Software Engineer!
I have recently completed the Meta interview process — which includes the phone screening, virtual onsite, team matching, offer negotiations and finally signing the offer letter! Having gone through this process myself, I know it can be confusing, stressful, and intense. Especially in the current state of the tech industry, it is very common to encounter obstacles. Personally, in the Meta process I faced rejection, head count freezes, re-interview with role change, headcount clawback, and more!
While I was preparing for the interviews for the past couple of months, I searched endlessly for as much information as I could get on the Meta interview process. The more information I had, the better I could prepare myself. I remember how I wished there was a thorough guide to help navigate the interview process. Now that I am lucky enough to call myself a survivor of the Meta interview process, I want to provide that help to others. While this is no official guide, I hope my personal experience can be relatable and give you an idea of what to expect.
The interview process has so many complexities and nuances, many of which deserve a blog of its own, which is why I want to capture my interview experience in a series of blog posts. So follow along, and I hope I can help demystify the Meta Interview Process!
First, a bit about me
Why should you care about me? Because everyone has their own career journey and I’m writing this blog series from my perspective. What applied to me may not apply to everyone, but at least you’ll understand more of where I’m coming from.
- 5 Years of Experience at non-tech companies
- Previous experience as process engineer, data scientist, and AI engineer
- Masters in Computer Science from Georgia Tech OMSCS program
- Non-related Bachelors (Mechanical Engineering)
- I interviewed for an E4/IC4 position
As you can see, I don’t have a cookie-cutter software engineer background, and I have been making a career switch into the field. Perhaps in a separate post, I can tell my story of how a non-target candidate broke into big tech (let me know if there is interest!).
The Interview Process
I originally applied for a “Software Engineer, Machine Learning” role at Meta and went through the entire interview process. I performed well on all my interviews except the very last one, the ML system design, where I received a no-hire decision. However, since the hiring committee felt my performance on all the other interviews was strong, they gave me an option to switch to the “Software Engineer, Infrastructure” role and redo just the system design round. Therefore, I switched tracks and took some time to prepare for SWE system design. There are some slight differences between the two interview processes that I will elaborate later, but both were for the E4/IC4 level. (BTW E4 and IC4 are synonymous levels, standing for Engineer (E) and Individual Contributor (IC). It seems Meta tends to refer to engineers as IC now, so that’s the term I’ll use).
Because I essentially went through both the MLE and SWE interview processes, the process took many months, spanning 9 months total from January to September 2024. This is much longer than “normal”, but everyone has their own journey in tech.
Meta’s SWE Process
Meta does “pooled hiring”, which means candidates go through a general hiring process, and upon passing, they proceed to a “team matching” stage to find a suitable team. You don’t get hired unless you match with a team. In fact, many candidates found themselves passing all the interview rounds but get stuck in team match for many months (max 1 year before you have to re-interview). Generally, Meta does not hire for specific roles (unless you’re a higher level engineer with a specialization).
The Meta interview process involves the following steps:
1. Recruiter Chat
This is a relatively straight-forward phone call, but don’t go in without any prep either! This is the initial conversation with the recruiter, and they will be assessing your background, interests, and alignment with Meta’s values. This call will mostly be informational, and your technical skills will not be evaluated. Expect questions about your experience, why you’re interested in this role, and why you are a good fit for Meta.
Personal tip: Ask your own questions! Especially learn about the current hiring situation i.e. how long is the current hiring window expected to last? This will help you plan the rest of the interview process and know what to expect of the timeline.
Other questions like What teams have the most headcount, where are most of the roles located, etc. will also help you be prepared for later steps. Any and all information will help you in this process.
2. Technical Screen
For technical roles like MLE and SWE, you will complete a classic, Leetcode-style coding assessment to test your problem-solving skills and mastery of CS fundamentals (Data Structures and Algorithms). Like all other coding rounds, expect to have 45 minutes to solve 2 Leetcode-style questions. The coding exercise will be done in Coderpad. Note, this is not what people generally refer to as an “online assessment”. In other words, it is not at-your-own-pace or a “take-home assessment”. There will be an interviewer watching and guiding you along the problems.
Even for MLEs, the technical screen is a coding interview and does not have any machine learning component.
The technical screen is the only interview between the recruiter call and the Virtual Onsite interviews. Really, this is just Meta’s sanity check round to make sure candidates are capable of solving coding problems (and weeding out those who fail) before investing more time into a full-loop interview. Performance on this round does not impact hiring decision (from what I’ve heard), so the sole focus is just to pass and move onto the Virtual Onsite interviews!
3. Virtual Onsite
Meta conducts 4+ interviews focusing on both technical and behavioral aspects. For an IC4 engineering role, there will be 2 coding, 1 system design, and 1 behavioral interviews.
- Coding Interviews: Two additional coding assessments similar to the technical screen. A candidate should show good problem navigation, coding, verification, and communication skills.
- System Design Interview: Design a complex systems or product and analyze the tradeoffs within your design. This is the only round that differs for MLE vs SWE. MLEs will have a ML system design interview, while SWEs can choose between systems, product, and front end designs. A candidate should demonstrate problem navigation, solution design, technical excellence, and communication skills.
- Behavioral Interview: Evaluates your interpersonal skills to assess if candidate will thrive in Meta’s environment. A candidate should demonstrate clear signals in 5 categories: Resolving Conflict, Growing Continuously, Embracing Ambiguity, Driving Results, and Communicating effectively.
My Interview Timeline
- Applied to role via Meta’s website (January 25th)
- Recruiter reached out via email (January 26th)
- Recruiter Chat (February 8th)
- Technical Screen (February 26th)
- Virtual Onsite — Coding First Round + Behavioral (April 17th)
- Virtual Onsite — Coding Second Round (April 18th)
- Virtual Onsite — ML System Design (April 29th) — Failed
- Switch to Infrastructure Track (May 1st)
- Virtual Onsite — System Design (August 19th)
- Start of Team Matching (August 28th)
- Offer signed! (September 21st)
A Note on Timeline
Note that my interview timeline is considered very loooong! One thing to note about Meta’s interview process is that they are VERY accommodating to your timeline needs. If you feel like you need more time to prepare for an interview, it is okay to ask for it! In fact, I delayed for a month to prepare for the technical phone screen, I asked for seven weeks between technical screen and virtual onsite, and 3 months to prep for my final System Design round. I would not advise to delay as long as I did (unless you also feel super underprepared), but I just wanted to provide a data point.
Because you are not being hired for a specific role, you don’t have to worry about a specific role being filled up* (*caveated below). From the recruiter standpoint, of course they want to move you through the pipeline quickly, but they are incentivized by the metric of number of candidates hired, not how fast they get candidates hired. They’d rather you take adequate time to prepare and pass the interviews than rush through the process and fail. If you fail the interview process, the current policy is a 1 year cooldown period starting from the date of the no-hire decision (typically a few days after your last interview). In my opinion, since the cooldown period is a whole year, it is better to spend up to a few months for additional preparation rather than failing and hitting the cooldown period. Chances are you’ll find another job before the cooldown period is over, and you probably wouldn’t leave your new job so soon to re-apply for Meta when the cooldown ends. On the flip side, don’t delay for the sake of delaying. Know that you will never feel 100% ready. No matter how much you study, there will always be a large aspect of luck in the interviewing process. My advice is to start applying and taking interviews when you’ve done 75 Leetcode questions. 75 Questions is a sufficient starting point to help you grasp the fundamentals, and by starting the interview process, it will figuratively light a fire under your ass to keep practicing more questions.
- *The case when taking too much time on your interviews could hurt you is if headcount is drying up or there is an impending hiring freeze. In my opinion, this case is unfortunate and difficult to predict, so it’s not worth optimizing for.
Meta’s Hiring Waves
Let me provide personal insight on headcount. In 2024, headcount for most SWE roles ran out around end of April and into May. MLE headcount seemed to slow down as well, but never went to zero. This was exactly the time when I failed the MLE track and switched to SWE. Because of the headcount freeze, I was able to postpone my SWE system design interview by 3 months to better prepare and wait for headcount to re-open. According to my recruiter, SWE headcount re-opened up around August 16th, 2024 and lots of teams were hiring. My single data point takeaway is that there are 2 waves of hiring, one in the spring that ends in April and one in the fall that starts in mid August.
Conclusion
This is a very high level overview of my interview experience with Meta. There is so much nuance, details, and “what to expect” that I want to share in this series, so please clap if you found this helpful, comment what specific questions you want me to address, and hit the follow button to stay updated with new posts!





