Meta L4 interview experience

Jyothi Sumer Goud Maduru
6 min readFeb 18, 2024

Edit 1: I have added my Microsoft interview experience here. I hope the current post along with other one will help you better.

Introduction

Today after 3 years of my first thought of writing a blog, I got the content, time, courage and energy to write one. I have recently appeared for an interview at Meta and I wanted to document my experience and learning here and share it with others hoping it would help them in some way.

Background

I completed my undergraduate in Electrical and Electronics engineering from Sri Venkateswara University College of Engineering in 2015. While all my classmates are preparing to peruse their career in the field we studied, I have no plans for my future. Only thing I wanted to do is to go out of my hometown and enjoy my life. I gave an interview at TCS with zero knowledge in coding. But I got it because I was decently good in Math and studying in one of the top colleges.

I joined a team that works for Tapestry who uses IBM Sterling OMS for their Order Management. I was new to Tech industry and I had no clue what I will be doing. I somehow pulled it off for 2 years and came to US for my Master’s. I joined Computer Engineering first and then converted to Computer science in my last semester. I couldn’t get a job after my Master’s, so I joined TCS back. I recently gave my interview at Meta for L4 position.

Here is my complete experience.

Application

I have applied for over 15 positions at Meta, some of which are referrals. I have few friends working at Meta luckily, so I asked them to refer me. Finally I got an email saying they are interested in my application and wanted to move forward.

Mock interview

Meta offers a mock interview with one of their employees. They try to keep it as close as possible to a real interview, except they will give you an honest feedback at the end which you don’t get in any actual interview.

Interview started and she introduced herself very briefly. She started explaining how this mock interview will be structured. Interview duration will be 45 minutes. In a real interview they will ask 2 questions within 40 minutes and last 5 minutes are set aside for interviewee to ask questions. But in mock interview they will end the interview within 35 minutes and leave last 10 minutes to discuss the feedback.

First question was based on arrays which includes a 2 pointer approach. This is a leetcode easy question. I have already solved this question and an easy one too, but I was too stressed and it took me some time to come up with the solution. She gave me a hint in the middle but I ignored her as I was thinking too much. I finally gave the solution and did a dry run of my code. She moved to second question which was related to BFS and DFS. This is a leetcode medium question. Again, this question is the one I have solved multiple times. So it was easy for me.

Feedback: She told me that I have ignored the hint she gave and asked me to be more attentive in the interview. When doing a dry run of the code, I took an example interviewer gave me. She advised me to pick an edge case or a better example to do a dry run.

Screening Round

This round is similar to the mock interview. Got two leetcode medium questions and I was able to solve both of them without any issues. This time I didn’t make the mistakes I have done in the mock interview. At the end she told me I have performed well. After a week I got an email saying they wanted to move forward to the next interview rounds.

Full Screen interview

This part consists of a total of 4 rounds. 2 coding, 1 system design/product design and 1 behavioral interview. For Software Engineer — product role you will have a product round and for Software Engineer — Infrastructure role, you will have a system design round.

System design round will focus on scaling the application while Product design will be more focused on designing the APIs for the application. There are very few resources for product design, so I opted for System Design round. Initially I was moved forward with Software Engineer — product role, but since I asked for System design round, they moved me to Software Engineer — Infrastructure role.

We have an option to have all 4 interview rounds in one day or we can split them into 2 days. I have split them into 2 days.

First round:

This is a coding round. The first question was related to binary tree, it is a slight variation of the question I have solved earlier. I misunderstood the question as my brain was thinking in the direction of the question I have solved earlier. I explained and wrote the solution and when explaining the solution I realized the question was different. Anyway I just had to make a small change and complete the solution. Second question was a standard one and I didn’t make any mistakes.

I have done decently well in this round, but I made this mistake of not correctly understanding the question and jumping into the solution.

Second round:

Interviewer thought it was a behavioral round but it is supposed to be a coding round. He checked again and said he got confused as there are so many interviews going on. First question is related to backtracking. I was stressed out and I wasn’t thinking straight. Instead of explaining the solution first I said I will start coding then explain my approach while solving it. This is a big bummer, never do that. Anyway I wrote the code and half way though explaining the code I thought I made a mistake, but interviewer said my code is correct. I realized it and continued my explanation. Again a bummer(my brain just didn’t work). For the second question, I solved it but but chose wrong variable names. He asked me to change the variable names and even suggested what I should choose. Again a bummer. Also when he asked me to write all possible test cases, I missed one. I realized it after completing the interview.

All the mistakes I have made in this interview round are not something I would do usually, but I don’t know why I have done that.

Third round:

This is a behavioral interview. Before starting the interview, he said it wouldn’t take entire duration of the interview. Nothing much to say here, questions were very general and we spoke for about 30 mins. At the end I asked him few questions and this discussion went for about 10 mins.

Fourth round:

This a system design round. The question is a very generic one. I started with functional requirements, non-functional requirements, API design and finally architecture. Everything went well except when he asked me about the internals of time-series database, I said I don’t know the complete internals of it and gave some high level details.

Result

After a grueling 2 weeks, recruiter called me and said they are not moving forward with me. He said I haven’t performed up to the expectations of an L4 engineer. He declined to tell any details on my performance in each individual rounds. Now there is a 1 year cooldown period in Meta.

Conclusion

Here is my preparation and some things I figured out during this processes.

Coding:

Meta interviews focus on speed. You are expected to come up with the solution, explain it to interviewer, code it and dry run the code within 15–20 mins.

I solved top 100 facebook tagged leetcode questions. I solved each of the question at least twice. In an interview

  1. Make sure to choose right variable names
  2. Make sure to explain your approach clearly
  3. Come up with a clean code
  4. Pick the right test case to do a dry run
  5. Listen to the interviewer carefully

System design:

I read System design interview book by Alex Xu and Sahn Lam — both vol 1 and vol 2. I also ready first few chapters of Designing Data Intensive Applications book and lots of youtube videos. Took lots of notes while studying, drew the architectural diagrams for commonly asked questions on white paper.

Behavioral:

If you have a friend, discuss your answers with them and use ChatGPT to give you some sample answers and tailor it according to your experience if needed.

Thank you

This is my first blog and I intend to write more in future. Please shoot me with questions or suggestion, I am more than happy to reply back to you. Hope this helps you in some way. See you soon.

--

--