I recently completed a phone screen interview for a Software Engineer position at Meta. The recruiter provided very positive feedback, but unfortunately, hiring is currently paused. They will resume the process with onsite interviews once the pause is lifted.
Mock Interview: 1 - Lowest Common Ancestor of a Binary Tree III 2 - Moving Average from Data Stream
Phone Screen Interview Questions:
1 - Valid Number (The solution did not need to account for numbers in the format 3e+7.)
2 - I was asked to implement a data structure with the following methods:
* put(): Takes a key and a value.
* get(): Returns the value associated with the key.
* remove(): Removes the value associated with the given key.
* last(): Returns the most recent key added with put() or accessed with get() that has not been removed.
The interviewer was friendly. We spent the first five minutes on introductions and the last five minutes on Q&A. I solved both questions in approximately 35 minutes. I explained my high-level thought process and the purpose of each line of code as I wrote the solutions. I believe this thorough explanation contributed to the positive feedback. I also provided the time and space complexity for each solution and explained my reasoning. I did not perform a dry run with examples; my coding explanations seemed sufficient. I found that engaging the interviewer while coding, making it a discussion rather than a test, was effective.