✅ Facebook | E5 | Phone Screen + Virtual Onsite
Summary
I recently completed my virtual onsite interview with facebook for the Sr Software Engineer (E5) position. The process included a phone screen and several onsite rounds covering coding, system design, and behavioral aspects. I received positive feedback from my interviewers and am currently awaiting the final decision from the hiring committee.
Full Experience
Last week, I had my virtual onsite interview with facebook for the Sr Software Engineer (E5) position. The overall experience was great.
Phone Screen
This was a 45-minute round where the interviewer asked two coding questions. I focused on understanding the problem, clarifying any ambiguities, and then verbally explaining my solution along with its time and space complexity. Once the interviewer was satisfied, I quickly implemented the solution and performed a dry run with test cases, including corner cases, finally explaining the complexity of my written code.
Virtual Onsite
The virtual onsite consisted of four 45-minute rounds: two Coding Rounds (Ninja), one System Design Round (Pirate), and one Behavioral Round (Jedi).
Coding Round 1:
Similar to the phone screen, I was given two coding problems to solve, applying my structured approach of understanding, verbalizing, implementing, and verifying.
System Design Round:
I was asked to design the privacy settings at facebook. I spent approximately 40 minutes discussing the design, and used the remaining 5 minutes to ask questions about facebook's culture.
Coding Round 2:
This round also involved two coding questions, where I applied my standard approach for solving them.
Behavioral Round:
The interviewer started by asking me about myself, my current project, and significant accomplishments. I was also asked if I had ever managed conflicting priorities and if I had received constructive feedback from a colleague. For each behavioral question, I provided a supporting anecdote from my past experiences, ensuring my answers aligned with facebook's mission and core values. Interestingly, this round also included one coding question.
Two days after my virtual onsite, I received a call from the recruiter informing me that the feedback from my interviewers was good, and they are still waiting for the hiring committee to make the final decision.
Interview Questions (10)
Lowest Common Ancestor of a Binary Tree III
Given two nodes, node1 and node2, in a binary tree, where each node also has a pointer to its parent. Find their lowest common ancestor.
Dot Product of Two Sparse Vectors
Implement a method to compute the dot product of two sparse vectors.
Verifying an Alien Dictionary
Given a sequence of words and an alphabet ordering, determine if the words are sorted lexicographically in the alien language.
Kth Largest Element in an Array
Design Privacy Settings
I was asked to design the privacy settings system at facebook.
Merge Sorted Array
Merge two sorted arrays into one sorted array, where the first array has enough space to hold elements from both.
Convert Binary Search Tree to Sorted Doubly Linked List
Convert a Binary Search Tree (BST) into a sorted circular doubly-linked list in-place.
Managing Conflicting Priorities
Have you ever had to manage conflicting priorities? Describe the situation and how you handled it.
Receiving Constructive Feedback
Have you ever received constructive feedback from a colleague? How did you respond to it?
Diameter of Binary Tree
Preparation Tips
My general approach for answering coding questions involved:
- Thoroughly understanding the problem and asking clarifying questions.
- Verbally explaining my proposed solution, including the expected time and space complexity.
- Once the interviewer was satisfied with the verbal explanation, quickly implementing the solution.
- Performing a dry run with a few test cases, covering corner cases.
- Explaining the time and space complexity of the written solution.
For behavioral questions, I focused on providing supporting anecdotes from my experience and making sure my answers were in-line with facebook's mission and core values.