Facebook | Onsite Reject | Sep 2020

I recently went through an entire onsite loop and would like to share my experience. I won’t share exact questions but give a high level idea.

Background:
I’m a Senior SWE at Silicon Valley based startup and have around 5 years experience.

Process:
In Mid August, an in-house recruiter from FB reached out to me wondering if I’d be interested in FB/Instagram/Whatsapp.

I was already in prep mode as I already had other interviews lined up so we decided to schedule phone screen after couple weeks. Recruiter was explicit that they expect candidates to write code for 2 medium questions.

Phone Screen:
FB tagged easy, FB tagged medium
I coded the easy one fairly quickly and medium one almost 90%. I had solved both but had a small bug with medium one that I was not able to fix until the end. Interviewer was helpful and provided hints.

Next day, recruiter reached out saying the interview went well except for verification where I struggled some. I was connected with a different recruiter. Since I already had an offer, we expedited the process and scheduled onsite a week after (early this week).

TIP: I used to rely on leetcode and my approach was kindof trial and error. Learned that I need to walk through the code for correctness before submitting on Leetcode. Also, think about edge cases.

Onsite:
Coding 1:
FB tagged easy, FB tagged hard
Interviewer was a bit late so I was only able to code an easy one. Hard was related to the easy one and I had read about that recently so we only discussed the approach. I made sure to walk through the code. We discussed an edge case - it was not an issue per se but in retrospect, I think the interviewer was not happy with how I implemented it.

Coding 2:
Non LC question. Honestly, I didn’t expect such question and I was really confused about it. Even searching online, I can only find couple posts without any solution so I'm not sure whether it should be easy/medium/hard. This question took entire interview.
It was a simple question but I had to think about input and output, etc. I strongly believe this is the interview that costed me as it was my worst performance.

System Design:
Fairly common interview question (think like distributed data structure) - I answered fairly well based on my knowledge (load balancer, nosql/rdbms/redis, etc.). But I realized at the end that the interviewer was looking for something else. This might have costed me as well since I was applying for Senior SWE.
Tip: Watch videos, keep reading and design just for fun. No other way to improve. I bought a physical whiteboard and couple days before the interview, I’d just design Google/Amazon/FB, etc. Really fun actually.

Behavior 1:
Had a great conversation with another engineer. We didn’t have any time to write code.

Behavior 2:
Also had a great conversation with another engineer. We had some time so I was asked a easish medium question. I had solved similar question quite a few times so I solved it pretty quickly. I walked through the code and it looked fine at that time but I recalled after that I missed a null check/edge case.

Overall, I had a great experience - nice/engaged engineers, friendly recruiters. Still bummed that I didnt get it and will need to wait for a year before I can try again.
That said, I take solace in the fact that I was able to atleast go onsite ( I failed Google phone screen a couple weeks back as well). Also, I’m fortunate that I already work for a SV tech company and had another offer which I feel is pretty intense for new grad.

Leetcoding is fun, I bought premium for a month and suggest others buying it as well ( I do it just so I can support the company that has helped me land my current job as well).

Comments (6)