← Back to Directory

DRW interview notes, page 1 of 2

Large Enterprises

Screna has 18 DRW interview write-ups. The most reported round is the technical phone screen (14).

18 interview notes · updated Jul 2026

DRW·Data Scientist·Technical Phone Screen

Apr 2026
DRW data science interview had a pretty technical stats focus. The question I got was about rolling window standard deviation and the math behind it, which sounds straightforward until you're actually on the spot explaining Bessel's correction to someone who clearly knows the answer already.
  • How do population and sample standard deviation differ in the context of a finite rolling window? Walk through why the denominators are n versus n-1, how that choice changes rolling estimates, what you return when the window has only one element, which version you'd implement by default, and how you'd make it configurable and document it properly.

“This one had more layers than I expected.”

View Post

DRW·Data Scientist·Technical Phone Screen

Apr 2026
Interviewed for a Data Scientist role at DRW. Three questions across algorithms and system design territory. The candy distribution problem was a classic LeetCode but the tree data structure question caught me more off guard than I expected.
  • Distribute the minimum number of candies to a list of movies such that each gets at least one, and any movie rated higher than a neighbor must receive more candies than that neighbor.
  • You have an algorithm with a time complexity that's too slow for the input size. Redesign it using an appropriate tree data structure to speed up the operations.
  • Given two lists of software version release dates, sort each list and merge them into a single chronological release schedule.

“LeetCode 135.”

View Post

DRW·Data Scientist·Technical Phone Screen

May 2026
DRW data science interview threw a pretty meaty algorithmic problem at me around rolling statistics. The whole thing felt more like a quant/engineering hybrid than a typical DS screen, which I wasn't fully prepared for.
  • Given an array of numbers and a window size k, implement an O(n) algorithm to compute the rolling standard deviation across all contiguous windows. You should update statistics incrementally rather than recomputing each window from scratch, discuss numerical stability, and handle edge cases like k <= 0, k > n, k = 1, and NaN values. Write tests too.

“This one took me a minute to even parse.”

View Post

DRW·Data Scientist·Technical Phone Screen

May 2026
DRW data scientist interview that leaned heavily on probability and stats fundamentals, with a game theory curveball thrown in at the end. The math was dense and moved fast.
  • Given a finite Markov chain, how do you find its stationary distribution?
  • State and derive the expected values of the exponential distribution and the Poisson distribution.
  • For a non-singular square matrix A, express the sum of the eigenvalues of its inverse in terms of the eigenvalues of A, and explain the reasoning.
  • In a specific two-player game theory scenario, calculate the probability of a particular outcome.

“Knew the answer conceptually but fumbled the formal setup under pressure.”

View Post

DRW·Software Engineer·Online Assessment (OA)

May 2026
DRW gave me a 150-minute Codility-style OA with three independent coding problems. Each one had a different flavor: tournament simulation, robot grid coverage, and a digit-mask optimization thing. Felt like a solid filter round, not trivial but also not insane if you know your algorithms.
  • Given n players in a line with distinct skill values forming a permutation, simulate a knockout tournament where adjacent pairs compete each round and the higher-skilled player advances. Return an array b where b[i] is the total number of matches player i participates in.
  • For the tournament problem above, as a follow-up: instead of counting matches, return for each player the skill value of the opponent who eliminated them (and a sentinel for the champion). How does the simulation change?
  • You control a robot on an R x C grid with walls and floor cells. For five different floor-cell shape variants (rectangular border only, full rectangle, dumbbell, simple path, arbitrary connected region), construct an instruction string of up to 100,000 moves that visits all required cells without stepping on walls.
  • For the robot coverage problem, can you guarantee a covering walk strictly shorter than 2(V-1) moves in general, or is that bound tight? What grid configuration forces the maximum length?
  • Given an array of up to 200,000 integers, find two elements with no shared decimal digits (their digit sets are disjoint) that maximize the sum. Return the maximum sum or -1 if no valid pair exists.
  • Generalize the digit-disjoint pair problem to selecting k numbers that are pairwise digit-disjoint with maximum total sum. How does the approach change and what is the complexity?
  • If the digit-disjoint condition were relaxed to allow sharing at most one common digit, how would you adapt the mask-based approach?

“My first instinct was to track who beats whom explicitly, which got messy fast.”

View Post

DRW·Machine Learning Engineer·Technical Phone Screen

May 2026
DRW ML Engineer interview with a meaty quantitative coding problem centered on portfolio optimization. The whole thing felt more like a quant research exercise than a standard ML screen, which I wasn't fully expecting.
  • Given a pandas DataFrame of daily asset returns and an annualized risk-free rate, implement a simulation-based portfolio optimizer in Python that generates N random long-only portfolios, computes annualized return, volatility, and Sharpe ratio for each, handles missing values and uneven asset histories, identifies the max-Sharpe portfolio, and returns all simulation results sorted by Sharpe. Use NumPy/pandas vectorization where possible and include docstrings with complexity notes.

“This was the whole interview basically.”

View Post

DRW·Machine Learning Engineer·Technical Phone Screen

May 2026
DRW ML Engineer interview that was essentially a single applied coding problem. The whole thing centered on building a sklearn pipeline for imbalanced classification, which sounds manageable until you're actually in it trying to remember whether SMOTE goes before or after the scaler.
  • Using scikit-learn and imbalanced-learn, build an end-to-end classification pipeline that handles severe class imbalance. It should include standard preprocessing, a resampling step, a classifier, and report precision, recall, and F1 on a held-out test set.

“The resampling placement tripped me up more than I expected.”

View Post

DRW·Machine Learning Engineer·Technical Phone Screen

May 2026
DRW ML engineer interview, looked like a written concept dump covering a pretty wide swath of ML fundamentals. No behavioral stuff, just pure theory questions back to back. Felt more like a grad school exam than a job interview.
  • What do the eigenvectors of a covariance matrix represent, and how do they connect to principal components and explained variance?
  • Define Gini impurity, show how to compute it for a node, and explain how it drives split selection in decision trees.
  • Write out the Bellman equation in both its policy evaluation form and its optimality form for V* and Q*, and explain how it fits into policy evaluation and improvement.
  • What is dropout, how does it behave differently during training versus inference, and why does it function as a regularizer?
  • What is gradient clipping, when should you use it, and how do residual connections in networks like ResNet address the vanishing gradient problem?
  • Why are deep learning loss landscapes typically non-convex, and what does that mean practically for optimization, particularly around local minima versus saddle points?
  • Describe scaled dot-product attention and multi-head attention in transformers, and explain why scaling by 1 over the square root of the key dimension matters.

“PCA always looks clean on paper but I always second-guess myself on the 'why eigenvectors' part under pressure.”

View Post

DRW·Machine Learning Engineer·Take-home Assignment

Jun 2026
DRW ML Engineer take-home, basically a full imbalanced classification pipeline build from scratch. Pretty involved for a single assignment but the scope made sense given the role.
  • Build an end-to-end binary classification pipeline for an imbalanced dataset using scikit-learn and imbalanced-learn, including preprocessing, resampling, and a classifier of your choice.
  • Compare using class_weight adjustments versus explicit resampling techniques for handling class imbalance, and justify your approach.
  • Tune hyperparameters using stratified k-fold cross-validation with ROC-AUC as the primary metric, and also report PR-AUC.
  • Produce evaluation artifacts including a confusion matrix at a chosen threshold, ROC and PR curves, a calibration curve, and demonstrate threshold tuning to hit a precision target of at least 0.9 while optimizing recall or F1.
  • Ensure the code is reproducible with fixed random seeds and well-documented throughout.

“The scope of this thing was bigger than I expected.”

View Post

DRW·Software Engineer·Online Assessment (OA)

Jun 2026
Three algorithmic problems for a DRW software engineer role. The problems escalated nicely in difficulty and felt more like a competitive programming set than a typical interview. No behavioral stuff, just pure problem solving.
  • Given an integer N (up to 200,000), construct any string of lowercase letters with length N such that every letter appearing in the string appears an odd number of times.
  • Given two digit strings S and T of equal length, you can swap S[i] with T[i] at any subset of indices. Among all subsets that minimize the absolute difference between the two resulting integers, find the one that uses the fewest swaps. Return that minimum swap count.
  • Given N patients each with exactly two possible slot assignments (A[k] and B[k]), and S total slots where each slot can hold at most one patient, determine whether a valid assignment exists.

“This one's more of a warm-up.”

View Post