Microsoft Data Scientist interview questions

28 Data Scientists have shared notes from their Microsoft interviews, with the questions they were asked in each round. That is 5% of the 597 Microsoft interview notes on Screna AI.

28 Data Scientist interview notes

Microsoft·Data Scientist·Technical Phone Screen

Jul 2026
Microsoft data scientist technical screen, heavy SQL focus with some tricky edge cases built into the schema. Three-part question that escalated from a delivery rate calculation to a scenario-based switching analysis. Felt like a reasonable challenge but part (c) was a curveball I wasn't fully ready for.
  • Given an Emails table and a Deliveries table, compute the proportion of emails delivered within 5 minutes of send time, grouped by provider and recipient domain, for emails sent in the last 7 days. Use the earliest delivered event, ignore spam_folder rows, and treat missing delivery records as undelivered. A bounce followed by a later delivery still counts if the delivered event falls within the 5-minute window.
  • Return all message IDs where the first observed delivery event was a bounce and a subsequent delivered event happened more than 5 minutes after the original send time. Include the lag in minutes between send time and the first delivered event.
  • For the ms.com domain over the same 7-day window, find the earliest calendar date where switching from Gmail to Outlook would have strictly improved deliverability. Base this on cumulative delivered-within-5-minutes rates up to and including each send date. Output the date and the cumulative rates that justify the switch.

“The spam_folder filter tripped me up first.”

View Post

Microsoft·Data Scientist·Onsite - Multi Round

Jul 2026
Microsoft Data Scientist interview that went deep on the full ML lifecycle, from problem framing all the way through post-launch monitoring. It was a lot to cover in one session and I felt like I was speed-running my entire career.
  • Walk me through an ML project you owned end-to-end: how did you frame the problem, define success metrics tied to business KPIs, and get alignment across PM, Engineering, and Legal?
  • How did you handle data sourcing and privacy constraints in that project?
  • How did you choose your model and evaluate it both offline and online? What did your experiment design look like?
  • Tell me about a time a PM strongly pushed back on your recommendation. How did you change their mind, and what was the measurable outcome?
  • Describe a failure in an ML project: what broke, what did you change, and how did you make the process more reproducible afterward?
  • How do you approach fairness and ethical considerations in a model when you're under real time pressure to ship?

“This is the kind of question that sounds manageable until you realize they want specifics on every single handoff.”

View Post

Microsoft·Data Scientist·Onsite - Behavioral / Leadership

Jul 2026
Microsoft Data Scientist onsite focused heavily on a single deep behavioral question about owning an ML project from scratch. The whole thing was structured around ambiguity and leadership, less about coding and more about whether you can actually run something end to end.
  • Walk me through a time you led an ML project end to end where the requirements were unclear. How did you define the problem, choose your approach, align stakeholders, and measure success?

“This question is doing a lot of work at once and I underestimated that going in.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jul 2026
Microsoft Data Scientist interview focused heavily on KNN fundamentals, which sounds basic until you're actually in the room trying to explain curse of dimensionality without sounding like you memorized a textbook. Pretty technical throughout, no behavioral fluff.
  • Walk me through how KNN works for both classification and regression tasks.
  • What are the main hyperparameters in KNN and how do they affect model behavior? Things like K, distance metric, and neighbor weighting.
  • What preprocessing steps matter most for KNN and why?
  • What are KNN's biggest weaknesses, and how does it behave under class imbalance, high dimensionality, or large datasets?
  • How would you choose K and evaluate the model in a way that prevents overfitting?
  • How could dimensionality reduction like PCA help KNN, and are there cases where it would actually hurt?

“Started fine on classification, majority vote among neighbors, clean enough.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Microsoft Data Scientist interview split into a heavy concepts section and a coding section. The concepts part covered CNNs vs RNNs in real depth and the coding part was a full K-means implementation from scratch. Felt more like a grad school exam than a typical industry loop.
  • Compare CNNs and RNNs for processing images versus variable-length text. Cover inductive biases like translation equivariance and temporal ordering, parameter sharing, how receptive fields grow, and which architecture handles long-range dependencies better.
  • For LSTMs specifically: write out the gate equations, explain how the cell state helps avoid vanishing gradients, and compute the output shapes for a batch of 32, sequence length 100, and 64 features with hidden size 128, both unidirectional and bidirectional.
  • Implement K-means from scratch including k-means++ initialization, vectorized assignment and update steps, and a convergence check based on objective decrease.
  • Walk through the time and memory complexity of K-means, how you'd handle empty clusters, why feature scaling matters, and how you'd choose k using methods like silhouette score, elbow method, or BIC.
  • Prove that the K-means objective is non-increasing across iterations, then propose a mini-batch variant and describe when you'd prefer it over standard K-means.

“This question is broader than it sounds.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Microsoft data scientist interview with a coding question that was more of an algorithms exercise than anything ML-related. One question, but they wanted the whole package: working code, complexity analysis, edge case tests, and proof the operation was in-place.
  • Write a function that reverses a Python list in-place, with O(n) time and O(1) extra space. No slicing, no built-in reverse helpers. Show it works for empty lists, single-element lists, and a specific six-element example, and include a test that confirms the list object id doesn't change.

“The two-pointer swap is pretty standard but I spent an embarrassing amount of time second-guessing whether swapping with a temp variable counted as 'extra space.' It doesn't, obviously.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Microsoft data scientist interview focused almost entirely on model evaluation, which sounds straightforward until you're actually in it trying to explain the difference between PR-AUC and ROC-AUC without sounding like you memorized a textbook. A lot of ground covered in what felt like a single technical screen.
  • Walk through how you'd use a confusion matrix to compute precision, recall, specificity, false positive rate, false negative rate, ROC-AUC, and PR-AUC for a binary classification model.
  • What's the difference between a Type I and a Type II error?
  • How does your choice of evaluation metric change depending on the use case, for example spam filtering versus medical screening versus fraud detection versus ad click prediction?
  • Why can accuracy be a misleading metric when your dataset has a significant class imbalance?
  • How do decision thresholds, shifts in class prevalence over time, and probability calibration each affect how you evaluate a model in production?
  • If false positives and false negatives carry different business costs, how would you decide where to set the operating threshold for your model?

“This took longer than I expected.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Microsoft data scientist interview with a deep dive into precision-recall curves, including implementation and edge cases. Pretty technical for what I expected, but not unreasonable if you've worked with imbalanced datasets before.
  • Define precision and recall in the context of binary classification.
  • How would you compute a precision-recall curve by sweeping a decision threshold over predicted scores?
  • Implement a function that returns the thresholds, precision, and recall arrays for a PR curve given true labels and predicted scores.
  • What are some edge cases or pitfalls to watch out for when computing a precision-recall curve?
  • How would you compute Average Precision or AUPRC, and what does the baseline represent for a PR curve?

“Straightforward to start but I could tell they wanted more than just the formulas.”

View Post

Microsoft·Data Scientist·Onsite - Behavioral / Leadership

Jun 2026
Behavioral round for a PhD intern data science role at Microsoft. One question, but they went deep on it with multiple follow-ups that I wasn't fully prepared for.
  • Tell me about a time you had a conflict with a teammate on a research or ML project. Walk through the context, what the conflict was actually about, what you did, and what you learned.

“I had a decent story ready but the follow-ups are where it got uncomfortable.”

View Post

Microsoft·Data Scientist·Technical Phone Screen

Jun 2026
Three pretty dense coding problems for a Data Scientist role at Microsoft. The questions leaned heavily algorithmic, which I wasn't fully expecting. Left feeling okay about two of them and genuinely shaky on the third.
  • Given a sorted integer array and a value k, modify the array in-place so each distinct element appears at most k times. Return the new valid length. Must run in O(n) time with O(1) extra space.
  • Find the shortest substring of s that contains all characters of t (with correct frequencies). If there's a tie, return the leftmost. Must run in O(|s| + |t|) time and handle Unicode code points correctly.
  • Implement a sanitize function that trims whitespace, collapses internal whitespace runs into a single space, and replaces every maximal run of ASCII digits with a single '#' token. Do it in a single O(n) pass with O(1) extra space. Discuss multi-byte Unicode and surrogate pair pitfalls.

“Two-pointer setup is the right instinct but I kept second-guessing my write index.”

View Post