/Dropbox-Interview-Prep

Preparation material for Dropbox interviews

Primary LanguagePython

Dropbox-Onsite-Interviews

A guide for the Dropbox onsite interview!

The Dropbox interview question bank is very small. The bank has been in a Chinese forum for many years now, and we would like to make it accessible to everyone so that everyone will have an equal opportunity to prepare for the Dropbox onsite interview!

https://1o24bbs.com/t/topic/1381

Backup link: https://web.archive.org/web/20210224003004/https://1o24bbs.com/t/topic/1381


Behavioral Questions:

Talk about an impactful project that you led.

  • Teams that you collaborated with.
  • Convincing others to take action.
  • A tough decision that you had to make during that project.

A critical piece of feedback that you received from someone and what you did after that.

An important piece of feedback that you gave to someone else.

A conflict that you had with someone else.

How do you contribute to diversity and inclusion?


We do not ask for references and we do not check for references.


Coding and System Design Tips

As always, you must talk your way through the problem and explain your reasoning. You should ALWAYS talk about performance (system performance for system design and time/space complexity for the coding problems) and talk about testing, even if the interviewer does not prompt you to.

Coding Question List:

  1. Id Allocator - Create a class that can allocate and release ids. The image in the packet is wrong. Please see this image.

This question is EXTREMELY popular and is asked in most onsite interviews, even if you're not a recent graduate.

Solution

  1. Download File / BitTorrent - Create a class that will receive pieces of a file and tell whether the file can be assembled from the pieces.

This question is mostly for new graduates/phone screens.

  1. Game of Life - Conway's Game of Life - Problem on LeetCode

This question is EXTREMELY popular for phone screens.

Solution

  1. Hit Counter - Design a class to count the hits received by a webpage

This question is mostly on phone screens.

Solution

  1. Web Crawler - Design a web crawler, first single-threaded, then multithreaded.

This question is EXTREMELY popular for onsite interviews.

Solution

  1. Token Bucket

This question is somewhat popular for onsite interviews. It has a multi-threaded component.

Solution

  1. Search the DOM

This question is somewhat popular for roles with a large frontend component.

Question

  1. Space Panorama

Create an API to read and write files and maintain access to the least-recently written file. Then scale it up to a pool of servers.

Solution

  1. Phone Number / Dictionary - Given a phone number, consider all the words that could be made on a T9 keypad. Return all of those words that can be found in a dictionary of specific words.

This question is sometimes asked to college students and sometimes asked in phone screens. It isn't asked a lot in onsites.

Solution

  1. Sharpness Value - This question is usually phrased like "find the minimum value along all maximal paths". It's a dynamic programming question.

Occasionally asked in phone screens. Might be asked in onsites for new hires.

Solution

  1. Find Byte Pattern in a File - Determine whether a pattern of bytes occurs in a file. You need to understand the Rabin-Karp style rolling hash to do well.

Somewhat frequently asked in onsite interviews. Might be asked in phone screens.

Solution

  1. Count and Say - LeetCode. Follow up - what if it's a stream of characters?

Asked to college interns.

Solution

  1. Number of Islands / Number of Connected Components - Find the number of connected components in a grid. Leetcode

Mainly asked to college interns.

Solution

  1. Combination Sum / Bottles of Soda / Coin Change - Find all distinct combinations of soda bottles that add up to a target amount of soda. LeetCode

Mainly asked to IC1 candidates.

Solution

  1. Find Duplicate Files - Given the root of a folder tree, find all the duplicate files and return a list of the collections of duplicate files. LeetCode

Somewhat popular in phone screens. Less common in onsites.

Solution