Box Software Engineer interview questions

14 Software Engineers have shared notes from their Box interviews, with the questions they were asked in each round. That is 74% of the 19 Box interview notes on Screna AI.

14 Software Engineer interview notes

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

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 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·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·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·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 for a software engineer role. The whole thing was basically one long question about word frequency at scale, which sounds simple but they kept pushing with follow-ups until I was knee-deep in distributed systems territory.
  • Given a filesystem path with nested subdirectories and files, how would you find the top K most frequent words across all files? Walk through an in-memory solution and its time/space complexity.
  • If the corpus is too large to fit in memory, what approaches would you use to scale this system? Think about external sorting, partitioning, and MapReduce-style designs.
  • What if you need an approximate answer instead of exact counts? How would you use something like a Count-Min Sketch or a Space-Saving algorithm, and what are the trade-offs in accuracy, latency, and storage?

“I started with a heap-based approach, traverse the directory tree, tokenize each file, dump counts into a hash map, then use a min-heap of size K to track the top results.”

View Post

Box·Software Engineer·Technical Phone Screen

May 2026
Box software engineer interview with a bit manipulation problem. Pretty straightforward session, just one coding question with a follow-up on complexity.
  • Given a non-negative integer and a zero-based bit position, return the result of flipping only the bit at that position. Walk through your approach and the time and space complexity.

“XOR with a left-shifted 1 is the clean answer here.”

View Post

Box·Software Engineer·Onsite - System Design / Architecture

May 2026
Box system design round for a software engineering role. The whole thing was one long question about rate limiting, which sounds narrow but they kept pulling threads until there was a lot to cover.
  • Implement a leaky-bucket rate limiter that enforces a maximum average request rate with a fixed drain rate. Write unit tests covering steady-state behavior, burst handling, and boundary conditions. Then discuss concurrency safety and how you'd extend this to a distributed setting with shared state, covering consistency and failure modes.

“This started manageable and then just kept expanding.”

View Post

Box·Software Engineer·Hiring Manager Screen

May 2026
Interviewed at Box for a product marketing role, just the one question I can remember but it was a meaty one that took me a second to get my footing on.
  • How do you measure success in product marketing?

“I fumbled the opening a bit, went straight to pipeline metrics and the interviewer kind of just waited.”

View Post