Meta Phone Screen + On site Loop | Full Experience | Rejected
Summary
I had a phone screen and an onsite loop with Meta for a role requiring 2 years of experience. After preparing for about two months, I was ultimately rejected due to my performance in Coding 2 and System Design rounds, but found it a positive learning experience.
Full Experience
2 YOE
Giving back to the community. Recruiter reach out around Jan and scheduled phone interview in end of Feb. I spent about a total of 2 months (1 for phone screening and 1 for on site) to prepare for the interview, around 1 hours before and after my full time job.
Phone Screen:
- Qn 1: 408. Valid Word Abbreviation (No Variant)
- Qn 2: Codebook question, where you are given a hashmap of random code and you can come up with the different permutations of it. I believe it is a variant and I can't find any similar question on LC. Solution proposed: Backtracking.
I could not solve Qn 2 at all but I proposed and coded up a backtracking solution which was close to the ideal solution. Heard back in under 1 hr from the recruiter and was shocked that I was moved on to the next round.
On site:
Behavioural:
Standard behavioural questions, interviewer asked a lot of questions - Why META was asked.
System Design (Product)
Design Leetcode
Follow Hellointerview format and was drilled hard on API design and deep dives on caching. Feedback was negative as I could not answer some of the interviewer's questions such as why redis was chosen and any alternative solution to redis sorted sets.
Coding 1:
- Qn 1: 236. Lowest Common Ancestor of a Binary Tree (No Variant)
- Qn 2: 347. Top K Frequent Elements (No Variant)
Solved both optimally and was asked further questions to provide more testcases and different approachs to the questions (i.e use BFS for Q1 and use heap for Qn 2).
Coding 2:
- Qn 1: Given three Array, find the k element. Proposed helper function to merge two array at one time. Was asked to merge all three array at a go and use heap. I could not come up with a heap solution at all. I was asked to come up with another solution if there is Nth of array instead of 3. Was able to come up with a solution similar to 23. Merge k Sorted Lists. Question is quite similar to this.
- Qn 2: 1004. Max Consecutive Ones III (Variant) The question is similar to the first variant question in this
I had to come up with the solution quickly qn 2 as I have used up too much time trying to solve qn 1.
Outcome:
Rejected 2 days after the onsite interview due to coding 2 and product design round. I was unfortunate to face too many variant questions in the whole interview process but it was overall a positive interview experience. As this is my first time interview with Meta and I have definitely learned a lot from this process. Will definitely try again after 1 year of cooldown.
Interview Questions (8)
Valid Word Abbreviation
Given a word and an abbreviation, determine if the word matches the abbreviation. This is LeetCode 408.
Codebook Permutations
Given a hashmap of random codes, generate different permutations of these codes. The candidate believes it's a variant of a problem and proposed a backtracking solution.
Why Meta?
Standard behavioral question: Why are you interested in working at Meta?
Design LeetCode
Design the LeetCode platform, with deep dives on API design and caching. I was drilled hard on API design and deep dives on caching, and asked about choices like Redis and alternative solutions to Redis sorted sets.
Lowest Common Ancestor of a Binary Tree
Find the lowest common ancestor (LCA) of two given nodes in a binary tree. This is LeetCode 236.
Top K Frequent Elements
Given an integer array nums and an integer k, return the k most frequent elements. This is LeetCode 347.
Find K-th Element from Three/N Sorted Arrays
Given three (or N) sorted arrays, find the k-th element. The problem is quite similar to LeetCode 23. Merge k Sorted Lists.
Max Consecutive Ones III (Variant)
Given a binary array nums and an integer k, return the maximum number of consecutive 1's in the array if you can flip at most k 0's. This is a variant of LeetCode 1004.
Preparation Tips
I spent about a total of 2 months (1 for phone screening and 1 for on site) to prepare for the interview, around 1 hours before and after my full time job.
Huge shoutout to Coding with Miner, your videos are extremely useful in my preparation.