My Meta process began under a lot of pressure. Microsoft laid me off, and I gave myself 60 days to get a new job lined up. Because of that deadline I kept my prep tight and disciplined. I didn't wander around and I didn't grind blindly. I just picked things and executed.
What my prep looked like
Data structures and algorithms
Over the years I had done about 450 LeetCode problems. For Meta I went back through a hand-picked list of questions tagged with the company, and I started from the fundamentals instead of jumping straight to hard problems.
I talked through ideas with ChatGPT, treating it like a study partner, which helped me understand things faster and made the concepts stick.
What did not work for me was grinding LeetCode with no plan. With a deadline like mine it gave me close to nothing.
System design
I sampled a few YouTube channels first, but the quality was all over the place. I then paid for a subscription to an online system design video series, because its material was the best organized and matched what I expected Meta to ask. That became the base of my system design prep.
I also tried ChatGPT's voice mode as a mock interviewer. It wasn't tough enough for me, since it lost context quickly and the feedback was too cheerful.
The thing that really worked was doing sample design problems as structured mock interviews with friends in real life.
Behavioral
I wrote out concrete stories about ownership, getting things done when things were unclear, working with other people, and dealing with setbacks, the layoff included. I rehearsed them in front of my wife, trimmed out extra details, and made each story shorter and sharper.
The actual interviews
Phone screen: one LeetCode hard and one LeetCode medium.
Two coding rounds at the onsite: between them I got three mediums and one hard.
System design: the prompt was to design Messenger. I took the structure from the WhatsApp walkthrough in the course I'd been studying and adjusted it for a messaging product. The interviewer seemed happy with the design overall and with how I handled scale.
One odd thing: he didn't want me going into WebSockets and kept steering me toward ordinary web APIs rather than long-lived connections. It felt a bit strange, but I went along with it.
Behavioral: the usual questions about things I'd done, decisions I'd made and what impact they had, plus a little talk about my resume. It was easy and felt like a normal conversation.
Discussion
Loading comments…