- Published on
Meta | E5 | Offer | Menlo Park
- Author
- Shared Anonymously
EDIT: I noticed there has been some interest in other details from my interview experience, hence I have added a bunch of details for questions posted in comments and otherwise. Hope this helps people in the same boat as I was a few weeks ago.
Hey all, giving back to the community as this forum has helped me a lot in my preparations.
Background
YOE: 16 years of experience - 8 years consulting, 8 years at FAANG+.
LeetCode stats: Didn't really track, must be under 200. I only solved blind 75, NeetCode 150, Meta top 50 in last 6 months and relying on luck as it plays a major factor in these types of interviews.
I got reached out by a Meta recruiter and scheduled a phone interview.
Approach to prepare
I have grinded LeetCode before, twice (once in 2017 and then in 2019). Things have changed significantly since.
This time around though, I had to improvise. Time was my friend and enemy at the same time as I was juggling a new-born, day job and LeetCode grind all at once.
I used to pick one topic from blind 75 / Neetcode 150 per week. Directly start with watching the problem video solution on NeetCode Youtube channel, then I'd implement its Java version on Leetcode. (I really didn't have time to let-me-attempt-first-and-then-look-at-solution)
Phone interview
- https://leetcode.com/problems/powx-n/description/
- https://leetcode.com/problems/minimum-remove-to-make-valid-parentheses/description/
Coding interview 1:
-
Merge 3 sorted arrays (given with duplicates) by removing duplicates.
I came up with a function to merge 2 sorted arrays and called it twice. IMO, I took longer than expected (until the interviewer said 10 mins left, let's do a second question) I think I did ok-ish in the question. -
https://leetcode.com/problems/binary-tree-vertical-order-traversal/description/
This is the most asked question at Meta in last 6 months. I was able to explain approach, complexities and code it in under 7 mins. I'd like to believe it compensated for the first question performance.
Coding interview 2:
-
https://leetcode.com/problems/remove-duplicates-from-sorted-array/description/
Straight forward question. I was able to explain approach, time and space complexities and we moved on to second question in 7 mins. -
https://leetcode.com/problems/making-a-large-island/description/
We discussed the approach for 10-15 mins. Interviewer was super helpful in providing hints and guiding me at the same time tackle me with trick questions. He was looking for pre-computed areas in matrix (Honestly I couldn't come up with the logic during interview, I saw it after interview and did a facepalm). Nevertheless, I was able to code a solution with inverted approach - look for0
, convert it to1
and calculateislandArea
by keeping track ofmaxArea
for result.
This approach works but it isn't efficient and it times out on leetcode. Interviewer seemed happy with the solution.
I knew that behavioral and system design rounds will decide E5 vs E6, so I invested my time equally to prepare for these 2 rounds well.
Behavioral
All the questions were of the theme, "Tell me about a time when..." and they were mostly about guaging how did I handle conflict, ambiguity, uncertainity and setbacks.
Tip:
-
If you prepare your answers keeping Amazon LPs as reference point, create a matrix of "most challenging, hardest bug, conflicts and learning" for each company that your worked for, for each LP (sounds easy but it will take a lot of time the first time) then you should be good with any of the behavioral interview at any FAANG+ companies. (Netflix might be an exception as their culture memo is very different than rest). Do this once and thank me later.
-
Know 2 or 3 features/projects in great details, explain it to yourself, reherse them over and over again when you take shower/drive/walk/workout until you feel confident on answering anything relating to that work.
System Design
- Design Top 10 songs for each user on Spotify
I implemented something on the lines of https://www.hellointerview.com/learn/system-design/answer-keys/top-k
I have to admit, www.hellointerview.com is a relatively newer resource out there for System Design prep but it has got great quality content. Highly recommend. (This post is not sponsored by them - I took 2 paid mock interviews with them and it really helped me focus on my weak points as the interviewers are from FAANG+)
Note:
One advise I'd like to give is that don't overwhelm yourself with so many resources out there nowadays for tech interview preparations. I did the same mistake and course corrected myself upon realizing it.
Resources I used:
- Blind 75, Neetcode 150, Leetcode premium, Youtube premium
- www.neetcode.io
- www.hellointerview.com for System Design
Good luck to who is reading this. You got this!
PS: If you came this far to read, I can sense that you must be in a "grind mode" and I completely empathize with you as I was in the same boat. Managing a newborn, office work and grinding leetcode, all at once wasn't easy for me. I spent about 3 hours on avg for 3 months (10 pm - 1 am) including weekends and truth be told, I hated every.bit.of.it. But I understand this is what you got to do to get into FAANG+ companies, so no complains there. I am sharing this detail just to assure you, the reader, that control the controllable and leave rest up to your luck. Good luck.