Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Facebook NYC Onsite Interview Experience

  • Difficulty Level : Hard
  • Last Updated : 10 Sep, 2021

Round 1: Went through my work experience and resume, got asked a bunch of soft questions like what was my most impactful work project, how I’ve dealt with technical difficulties, who my least favorite manager ever was, etc. Then did a simple whiteboard code exercise. 

Whiteboard question: there’s some function that can “compress” strings like FACEBOOK -> F6K or FACEBOOK -> F2E2OK or INTERNATIONALIZATION -> I18N. The compression mechanism can delete arbitrarily many characters and replace them with the deleted character count. Write a function that takes a compressed string and a plaintext string and determines if the compressed string is valid for the plaintext string. 

Round 2: Two whiteboarding questions. 

Question 1: Write a function that takes a sorted list of integers and a target value k and counts the number of occurrences of k in the list. 

https://practice.geeksforgeeks.org/problems/number-of-occurrence2259/1

Question 2: Find the maximum path sum in a binary tree

Round 3: Systems design question asked to architect the backend for a photo system that has 100 PB of photo data and 500M active daily users. The interviewer went into a lot of detail expecting me to give exact numbers for CPU usage, memory usage, bandwidth numbers, exact hardware specs, etc.  This kind of tripped me up because there was a lot of mental math on numbers with big exponents and I didn’t know all of the numbers (e.g. disk bandwidth) as well as I could have. 

Round 4: Systems design question asked to architect a streaming video service like Hulu or Netflix. The system should enforce user subscriptions and limit logins to a fixed number of devices. This question differed from the previous one mostly in that we went into a lot more detail about how to manage things like authentication securely, how to architect a data pipeline on the backend, how caching should work, how to implement sharding, how to make the system HA, etc. So compared to the previous question, it was a bit more high level and less numbers oriented. 

Round 5: Three whiteboard coding questions. 

Question 1: Maximize profit for buying and selling stock given a series of price vectors (“Best Time To Buy And Sell Stock II” on Leetcode). 

Question 2: Given m sorted arrays, find the k-th smallest value

Question 3: Binary search in a sorted, rotated array
 

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!