← Back to Directory

Box interview notes, page 2 of 2

Large Enterprises

Screna has 19 Box interview write-ups. The most reported round is the system design round (8).

19 interview notes · updated Jul 2026

Box·Machine Learning Engineer·Technical Phone Screen

May 2026
Interviewed for an MLE role at Box and the coding portion was an object-oriented design problem around file storage and lookup. Pretty straightforward as far as these things go.
  • Design a file storage and lookup system using object-oriented principles.

“Not the most grueling OOD problem I've seen.”

View Post

Box·Software Engineer·Onsite - System Design / Architecture

May 2026
Box SWE interview focused on system design, specifically building a rate limiter from scratch. The follow-ups got pretty deep into concurrency and distributed systems, which I wasn't fully ready for.
  • Design and implement a Leaky Bucket rate limiter with an allow(request) method that returns whether the request should be admitted or rejected.
  • How would you make the rate limiter thread-safe? Walk through different locking strategies including a single mutex, fine-grained locks, and atomic operations with compare-and-swap.
  • How would you scale this rate limiter across multiple app servers that all need to share the same rate-limit budget for a given user or API key?
  • What are the tradeoffs between the Leaky Bucket algorithm and other rate limiting approaches like Token Bucket, Fixed Window, and Sliding Window?
  • Under very high request throughput, the lock on your rate limiter becomes a bottleneck. How do you address that?

“I got the basic structure down pretty quickly, fixed capacity bucket, constant drain rate, reject on overflow.”

View Post

Box·Software Engineer·Onsite - System Design / Architecture

May 2026
Box system design round, basically one big scenario question about debugging a production outage with only SSH access, then pivoting to how you'd build something better. Not a lot of back-and-forth, more like they wanted to see how far you'd run with it.
  • A production service is down and you only have SSH access to the host. The log files are massive. Walk through how you'd find the relevant errors or narrow down the time window, and what specific commands or strategies you'd use.
  • If this kind of incident keeps happening, how would you design a centralized logging and search system, and what trade-offs would you think through?

“I started with grep and tail and they were clearly waiting for more.”

View Post

Box·Product Manager·Hiring Manager Screen

Jun 2026
Interviewed at Box for a product role and got hit with a classic metrics investigation question. Not a lot of fluff, just one meaty scenario to work through.
  • New user adoption is declining. How would you think about this, and what steps would you take?

“I started with clarifying the metric itself, like are we talking activation rate, signups, or something else entirely.”

View Post

Box·Machine Learning Engineer·Onsite - System Design / Architecture

Jun 2026
One system design round at Box for an MLE role, heavy on follow-ups. The core problem was interesting enough but the follow-up questions kept coming and I wasn't fully prepared for how deep they wanted to go.
  • Given an existing keyword-based search index, users are finding relevant results but they're ranked way too low. How would you redesign or improve the system to surface better results?

“This one had legs.”

View Post

Box·Software Engineer·Technical Phone Screen

Jun 2026
Box coding interview for a software engineer role, focused entirely on implementing a leaky bucket rate limiter from scratch. The problem escalated from a basic single-threaded implementation to thread-safe concurrency, plus writing tests along the way.
  • Implement a leaky bucket rate limiter class with a capacity and a leak rate, starting with a single-threaded version. The allow_request() method should return true if the bucket has room after accounting for leakage, false if it's full.
  • Write tests covering normal behavior, boundary conditions, and time-based leakage for your rate limiter implementation.
  • Extend your implementation to be thread-safe when multiple threads call allow_request() concurrently, reusing as much of the original code as possible.

“The core logic tripped me up more than I expected.”

View Post

Box·Software Engineer·Technical Phone Screen

Jun 2026
Box technical phone screen for a software engineer role, one meaty design question that took up most of the time. The problem was interesting but I definitely underestimated how many edge cases were hiding in it.
  • Design and implement a single-machine in-memory key-value store that supports transactions, including nested transactions. It should support SET, GET, UNSET, BEGIN, COMMIT, and ROLLBACK operations, where nested BEGINs layer changes on top of each other, ROLLBACK discards only the most recent transaction's changes, and COMMIT flattens everything into the base store.

“I went straight to a stack of hashmaps and felt pretty good about it for the first five minutes.”

View Post

Box·Software Engineer·Onsite - Coding / Algorithms

Jun 2026
Box SWE interview that covered a pretty wide range: systems troubleshooting, bit manipulation, concurrency bugs, and a meaty distributed word-count problem with follow-ups. Felt more like a sampler platter than a focused session.
  • You can only SSH into a failing machine and the log file is enormous. How do you pinpoint the issue fast?
  • Given an integer and a specific bit position, flip that bit.
  • Here's some multithreaded code that uses locks. Find the deadlock and fix it.
  • Count word frequencies across all files in a directory tree (including nested subdirectories) and return the top-K most frequent words. Follow-up: what if the data is too large to fit in memory?

“This one felt more like a sysadmin pop quiz than a coding problem.”

View Post

Box·Software Engineer·Technical Phone Screen

Jun 2026
Box SWE interview that went deep on concurrency. One meaty problem about deadlocks in multithreaded code, and they really wanted you to get into the weeds on prevention strategies, not just name them.
  • You're given a multithreaded code snippet that acquires multiple locks and occasionally deadlocks. Walk through the exact deadlock scenario, then propose concrete code changes to prevent it. Cover approaches like consistent lock ordering, try-lock with backoff, timeouts, and lock granularity changes, and talk through the trade-offs of each.

“This one took longer than I expected.”

View Post