✅ Facebook | E5 | Phone Screen + Virtual Onsite

facebook logo
facebook
sr software engineer e5Ongoing
December 11, 20213 reads

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)

Q1
Lowest Common Ancestor of a Binary Tree III
Data Structures & Algorithms

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.

Q2
Dot Product of Two Sparse Vectors
Data Structures & Algorithms

Implement a method to compute the dot product of two sparse vectors.

Q3
Verifying an Alien Dictionary
Data Structures & Algorithms

Given a sequence of words and an alphabet ordering, determine if the words are sorted lexicographically in the alien language.

Q4
Kth Largest Element in an Array
Data Structures & Algorithms

Find the kth largest element in an unsorted array.

Q5
Design Privacy Settings
System Design

I was asked to design the privacy settings system at facebook.

Q6
Merge Sorted Array
Data Structures & Algorithms

Merge two sorted arrays into one sorted array, where the first array has enough space to hold elements from both.

Q7
Convert Binary Search Tree to Sorted Doubly Linked List
Data Structures & Algorithms

Convert a Binary Search Tree (BST) into a sorted circular doubly-linked list in-place.

Q8
Managing Conflicting Priorities
Behavioral

Have you ever had to manage conflicting priorities? Describe the situation and how you handled it.

Q9
Receiving Constructive Feedback
Behavioral

Have you ever received constructive feedback from a colleague? How did you respond to it?

Q10
Diameter of Binary Tree
Data Structures & Algorithms

Find the length of the diameter of a binary tree.

Preparation Tips

My general approach for answering coding questions involved:

  1. Thoroughly understanding the problem and asking clarifying questions.
  2. Verbally explaining my proposed solution, including the expected time and space complexity.
  3. Once the interviewer was satisfied with the verbal explanation, quickly implementing the solution.
  4. Performing a dry run with a few test cases, covering corner cases.
  5. 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.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!