← Back to Directory

Stripe interview notes, page 9 of 35

Large Enterprises

Most of these Stripe write-ups come from Software Engineers (295), then Product Managers (22) and Data Scientists (20). The most reported rounds are the technical phone screen (206), the system design round (39), the behavioral / leadership round (22) and the product sense round (20).

342 interview notes · updated Oct 2026

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding screen for a software engineer role. One problem, simulation-style, felt more like a design-your-own-logic question than a pure algorithms grind. Straightforward premise but a few edge cases that'll bite you if you're not careful.
  • Given a list of transactions where each entry moves an amount from one user to another, process them in order with an overdraft rule: if applying a transaction would bring the sender's balance below zero, reject it and track it separately. After processing everything, return the rejected transactions and all users with a non-zero final balance. All balances start at zero.

“My first instinct was to reach for something fancy and I wasted a couple minutes thinking about it before realizing this is just a hashmap and a loop.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe SWE screening with a KYC validation coding problem. Pretty focused on string handling and filtering logic, nothing too wild but the dual-rule constraint tripped me up a bit.
  • Given a list of records (each record is a list of field values), validate each record against two rules: column 5 must be at most 50 characters long, and column 2 must not contain any substring from a provided forbidden words list (case-sensitive). Return only the records that pass both rules.

“I jumped straight to iterating over records and forgot for a second that the columns are 1-indexed, so my first pass was off by one.”

View Post

Stripe·Software Engineer·Onsite - System Design / Architecture

May 2026
Stripe system design round focused on building out a server health-tracking system from scratch. The REGISTER operation was the starting point, and the whole thing hinged on getting the data model and contract right before anything else could work.
  • Design and implement a REGISTER operation for a server health-tracking system. Define what arguments it accepts, what it returns on success versus duplicate registration, and how the stored data supports future operations like status updates and queries.

“The duplicate case is where I stumbled a bit.”

View Post

Stripe·Software Engineer·Online Assessment (OA)

May 2026
Stripe SWE coding round, one problem about building a mini datacenter routing system with command parsing and input validation. Pretty self-contained but the edge cases were sneaky.
  • Implement two commands for a datacenter routing system: REGISTER (with strict validation on lat/lon range, positive capacity, and unique name) and SET_HEALTHY (to toggle a flag on existing datacenters). Print OK or ERROR for each command based on whether it succeeds.

“The validation rules look obvious on paper but I initially forgot that capacity zero should also fail, not just negatives.”

View Post

Stripe·Software Engineer·Recruiter / HR Screen

May 2026
Recruiter screen at Stripe for a software engineer role. Pretty much just a comp alignment conversation.
  • What are your compensation expectations across base, bonus, equity, and benefits? And if our range came in well below your current total comp, would you still want to move forward, and why?

“Two questions in one, which I wasn't ready for.”

View Post

Stripe·Software Engineer·Onsite - Coding / Algorithms

May 2026
Stripe SWE interview that was basically a single sprawling coding problem about payment card validation, broken into four progressively nastier sub-parts. The last two parts (wildcards and corrupted cards) are where things get genuinely hard and I don't think I fully nailed either.
  • Design and implement a payment card validation system that handles VISA cards (16 digits starting with 4) using the Luhn checksum algorithm.
  • Extend the validator to support multiple card networks: VISA, Mastercard (16 digits, prefixes 51-55), and Amex (15 digits, prefixes 34 or 37). Return appropriate error codes for unknown networks or failed checksums.
  • Handle redacted card numbers containing 1 to 5 wildcard characters ('*'). For each network, count how many valid completions exist and output the counts sorted alphabetically by network name.
  • Handle corrupted card numbers ending in '?' where exactly one error was introduced: either a single digit was changed, or two adjacent digits were swapped. Enumerate all valid original card numbers with their network names, sorted numerically.

“Warmup part, and I actually fumbled the Luhn implementation on the first try because I mixed up which digits get doubled.”

View Post

Stripe·Machine Learning Engineer·Technical Phone Screen

May 2026
Stripe ML Engineer interview with a multi-task regression design question. The problem was well-scoped but had enough moving parts that it's easy to look shallow if you only hit the obvious points.
  • You're training a single model with a shared backbone and two regression heads. One target is always non-positive (e.g. ranging from -10,000 to 0) and the other is always non-negative (e.g. 0 to 50). How do you design the preprocessing and training objective? Walk through how you'd normalize each target, handle the sign constraint, combine the losses, and reverse the transforms at inference.

“This looked like a normalization question on the surface and I nearly treated it that way.”

View Post

Stripe·Software Engineer·Take-home Assignment

May 2026
Stripe's integration round for this SWE role was a three-part bike map service build, incremental and design-heavy. Each part stacked on the last, which felt reasonable until part three when the graph routing and real-time stuff hit at the same time.
  • Load bike station data from a provided source and expose a basic lookup endpoint. Walk through your design decisions as you build.
  • Extend the service to support filtering or simple routing between stations.
  • Add richer logic to the service: shortest path across the station graph, station availability, and real-time data updates. How do you approach layering this onto what you've already built?

“Pretty straightforward to start.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding round for a software engineer role. The problem was a load balancer simulation with some state management twists. Not the hardest thing I've done but there were a few edge cases that tripped me up mid-way.
  • You're given a connection load balancer that assigns connections to servers via round-robin. Extend it to support a DISCONNECT operation that removes a connection, decrements the target server's connection count, and handles edge cases like disconnecting an unknown ID or reconnecting after a disconnect.

“The base round-robin part was fine, I had that sketched out quickly.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding screen for a software engineer role, basically one problem the whole time: text wrapping. Sounds trivial until you're actually coding it under pressure and the interviewer starts asking about edge cases you didn't think about.
  • Given a long string and a maximum line width L, implement a function that breaks the text into lines. You need to handle two variants: one that cuts hard at exactly L characters regardless of word boundaries, and one that breaks at the last whitespace before the limit. Also handle edge cases like single words longer than L and trailing whitespace.

“I went straight for the word-aware version because it felt more 'real' and I thought it would impress them.”

View Post