I had been out of work for a year and a half. Once I got properly serious about the search, I fired off about 100 applications and basically got silence. A few startups got in touch, but nothing picked up speed. Then someone referred me at Meta and a recruiter asked to set up a call.
One choice early on, I believe, defined everything that followed. I turned the startup conversations down and committed myself to this one loop, instead of dividing my energy among companies I felt so-so about. With a pregnant wife, no job and no other serious interviews in the pipeline, there was nothing to hedge with. The first thing I did was push the first technical interview back as far as the recruiter would allow, so I would have the longest possible runway before the timer started.
The opening two months were brutal. Python was new to me, so I learned it from nothing, because it is so much handier in interviews than the language I had used until then. Studying was my full-time occupation, roughly six days per week. At first LeetCode was maddening and I felt stuck, but I kept grinding and gradually saw steady gains. I also spent money on a mock interview service and sat two practice sessions per week.
The thing that paid off most was figuring out how Meta runs its loop in particular, rather than preparing in a generic way. I dug into what every round is designed to measure and drilled for each of them. System design was my worst area by a wide margin, so it swallowed the largest share of my time. Coding is probably where I overdid it, yet I still made sure it never went stale while I hammered system design, behavioral and AI coding in addition.
Mocks were easily the most valuable thing I did. In total I got through about 40 of them, some from the paid service and some with employees of the company who offered their time. Every weakness in how I handle talking under pressure showed up. Solutions I believed were tidy came apart as soon as I had to explain them live, and I had the chance to correct that while it was still only practice.
The screening interview went smoothly for me. It was a nice feeling, though frankly nobody was shocked at that stage. After that came the actual rounds. From start to finish the whole thing ran about 3.5 months and something like 600-700 hours of effort. As far as I was concerned it was a full-time job with extra overtime, and I kept looking after my health at the same time, since otherwise I would not have lasted.
Afterward my feelings were mixed. A few rounds I was confident about, but others I couldn't gauge at all. My brain kept spinning on whether I should have answered X instead of Y. I tried to drop it. I had put in all I could, so I could live with either result.
Then the recruiter phoned with word that I had passed. I nearly teared up on the call, and it seemed unreal. The timing was lucky as well: the news landed just before friends came over for our baby shower, so the baby was not the only thing to celebrate.
I was placed on a great team and began the month after. No parental leave came with the job, but the dates still worked out so that I was at home for the baby's first 2.5 months. I had been on the verge of becoming a stay-at-home dad against my will, and now I could support my child and push my career ahead. It was surreal.
If you are in a similar position, this is what I would recommend. Buy yourself runway at the very beginning. Find out how your target company structures its interviews rather than doing general prep. Take a ridiculous number of mocks, ideally with people who work at that company. Weight your hours toward whatever you are worst at. Coding probably got more than it needed from me, and I would happily spend those hours again.
Timeline:
- Day 1: Referral received
- Day 9: Recruiter got in touch
- Day 23: Spoke with the recruiter
- Day 42: The first screening interview
- Day 115: Interview round one
- Day 118: Interview round two
- Day 121: Learned that I had passed
- Day 202: Team match confirmed
- Day 205: Offer signed
Discussion
Loading comments…