Interviewed with Meta, process went like this (signed NDA so can't give specific details)
Recruiter reached out in early February, scheduled phone interview for late Feb. Was asked two relatively easy and chill interviewer, super nice guy that even stayed after the interview time to answer questions.
Scheduled onsite for April, had to reschedule due to some other things that came up, and they added a coding round to my onsite after the reschedule, so from 2 to 3 (lol)
Onsite (all interviews were 45 mins):
- Product Design interview, pretty standard question overall and I thought I'd be underprepared for this but ended up killing it imo. Was asked to explain DB (choice & schema), APIs I'd implement, high level diagram.
- Behavioral, kinda more difficult than expected. Some typical questions but he really grilled me on every detail for some reason, trying to understand exactly how my previous projects/companies worked. Had to give high-level info on that. One or two questions I was a bit unprepared for as well, I'd recommend actually reviewing for this no matter how confident you might be
- Coding Round 1: Asked two hards, one tagged (low freq) & one not tagged. This was hard as hell but the interviewer was kind and they understood I knew how to solve both problems, just struggled with implementation.
- Coding Round 2: Asked similar to one easy tagged, and one hard tagged. Easy one wasn't a prob, gave a naive + optimal solution in 10-15 mins. Then spent rest of the time on the hard, had the approach and walked through my code but there was a bug in my code that I had to spend time fixing
- Coding Round 3: Asked one hard tagged (high freq) & similar but harder medium (medium freq). Solved the first one but it was definitely a little messy getting to the solution, second one had the approach & coded solution, had a bug that I was able to fix and ended right on the final minute.
Overall, I underperformed in the coding rounds so there's probably a 1% chance of me getting an offer. I didn't struggle finding the optimal solutions mostly but just didn't feel like I had enough mins to code a proper solution. Interviewers mentioned I did well & was clear with my communication and breaking down the problem, but I'd imagine they were looking for the proper solution coded as well with less bugs. Would recommend a few things:
- do the tagged problems over & over until you can understand how to code the solution
- split your interviews up over two days (so you don't get tired & so you don't get tilted from a bad interview, my first coding round was hard af and definitely had me a little rocked. Was also fasting so this didn't help either lol)
- study for the Product/Sys design but don't spend too much time diving too deep into details (unless interviewing for a higher level). Maybe I got lucky though
- prepare properly for the behavioral because it's not easy enough to wing imo
Also be confident! I got told by like three people to be more confident so that's another piece of advice.
Good luck to all and I'll keep grinding - Google & other companies interviews still left for me so lots to look forward to!