Meta | E4 | Software Engineer | Passed
I am sharing my interview experience to help others.
Technical Screen:
Onsite: Coding 1:
Kth Largest Element in an Array I used the min heap (priority queue) solution. I also explained that I could sort the array and then just get the kth element from the end of it. I did not use the quicksort or mergesort solution.
Shortest Path in Binary Matrix I used a DFS approach and explained how I could have also used BFS.
Coding 2:
Merge k Sorted Lists I used continued iteration over the array of lists, moving the pointer of the smallest element to the next. I did this until every node in the array was pointing to null. O(Nk) complexity. I also explained I could use a min heap, but that would require extra log(k) space, though complexity could be improved a little by making it O(n log k).
Integer to English Words I did NOT code the solution for this. The interviewer wanted to see my approach. I explained that it would require a lot of pre-computation, and then explained my strategy. Coding this in under 45 minutes is difficult.
System/Product Design: Design the Facebook post privacy functionality. If I make a Facebook post, and I have 3 privacy options (Only Me, Friends Only, Public), design how you would determine visibility for any Facebook user (i.e., can a user see the post or not). I DID ask for clarification on System Design, but the interviewer did not seem to care.
Behavioral Round: I had a behavioral round, but I do not recall the questions; they were standard behavioral questions.
Result: I heard back from the recruiter one week later. I received an offer and will start in January.