← Back to Directory

Stripe interview notes, page 10 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·Onsite - Behavioral / Leadership

May 2026
Interviewed for an EM role at Stripe and got hit with a people management scenario that I wasn't fully prepared for. Short post but the question stuck with me.
  • How would you communicate a layoff to the employees who are being let go?

“I fumbled this a bit.”

View Post

Stripe·Software Engineer·Onsite - System Design / Architecture

May 2026
Stripe system design round for a software engineer role, pretty deep on access control. They wanted both a working implementation and a real discussion about complexity tradeoffs, which I wasn't fully expecting going in.
  • Design and implement a role-based access control system that supports creating users, roles, and permissions; assigning permissions to roles; assigning one or more roles to users; and checking whether a user has a given permission.
  • Extend the system to support role hierarchy, where a role can inherit permissions from a parent role.
  • Further extend the system to support resource-scoped permissions, for example a permission like 'edit' that applies only to a specific resource id.
  • Walk through your data structure choices and explain how you keep permission checks O(1) amortized across all the extensions.

“I started with the obvious stuff, hashmaps keyed by user id pointing to sets of role ids, roles pointing to sets of permission strings.”

View Post

Stripe·Software Engineer·Onsite - System Design / Architecture

May 2026
Stripe EM interview with a system design question about building a bookkeeping service. Pretty open-ended, which I wasn't fully prepared for.
  • Design a bookkeeping service.

“Spent the first few minutes just trying to scope it down because bookkeeping can mean a hundred different things.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe technical phone screen for a software engineering role, focused on extending a fraud detection pipeline with business rule logic. Two parts total, with the second part being where things got interesting design-wise.
  • You have a fraud detection pipeline that already validates row-level integrity on CSV transaction data. How would you add configurable business risk-control rules, specifically an amount range check and a blocked payment method check, and return per-transaction statuses including which rules were triggered?
  • How would you design the configuration loading so that per-merchant settings override global defaults for these risk rules?
  • Why must integrity validation run before the business risk rules, and how does that ordering affect your implementation?

“This is where I spent most of my mental energy.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding screen for a software engineer role, one question about extending a CSV join utility. Pretty focused problem, not a lot of back and forth.
  • You're given a function that joins two CSV-like datasets on a key field, defaulting to a left join. Extend it so that a boolean flag controls whether unmatched rows are skipped entirely or kept with empty values for the missing columns.

“The left join part was fine, I had that logic pretty quick.”

View Post

Stripe·Software Engineer·Online Assessment (OA)

May 2026
Got an OA for a new grad SWE role at Stripe, finished it pretty fast, passed all test cases, and somehow got a callback for the tech screen. The OA itself was a multi-part sequential problem with parsing and conditions baked in.
  • Solve a multi-part sequential coding problem that involves string parsing and conditional logic across several stages.

“Jumped into it within an hour of getting the link, probably not my smartest move but I was anxious.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding round for a software engineer position, focused on extending a load balancer simulation. The problem started simple enough but the SHUTDOWN requirement added real complexity around state cleanup and I had to think carefully about keeping everything consistent.
  • You're given a connection load balancer with round-robin assignment, per-target capacity limits, and basic connect/disconnect operations. Extend it to support a SHUTDOWN command that takes a target offline, evicts all its current connections in insertion order, and permanently removes it from future round-robin assignments. How do you handle the state cleanup?

“The base system wasn't bad to reason through but SHUTDOWN is where it gets messy.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding interview, looked like a follow-up to a previous scheduling/email problem. The twist with mid-cycle plan changes made it way harder than it seemed at first glance.
  • You have a list of users with billing plans and a separate list of plan changes that take effect on specific dates. On the day a user switches plans, send an 'Updated' email. For all emails after that point, the new plan name should be referenced. How do you extend your existing email scheduling logic to handle this?

“My first instinct was to just patch the user object when I hit a change date, but that blew up the structure I'd built in the previous part.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe SWE interview with a coding round focused on building a small invoice processing system from scratch. More design-heavy than I expected for a coding screen, lots of edge case discussion baked in.
  • Design and implement a basic invoice system with line items (description, quantity, unit price, tax rate), computed totals (subtotal, tax, total), and a payment status that updates as payments are recorded.
  • How would you handle rounding errors when computing tax across multiple line items?
  • What input validation would you add to the invoice creation and payment recording APIs?
  • Should overpayments be rejected outright or handled some other way? Walk through your reasoning.

“The core model felt straightforward until I started thinking about where to compute the totals.”

View Post

Stripe·Software Engineer·Technical Phone Screen

May 2026
Stripe coding screen, looked like a straightforward OOP extension problem but the state management piece tripped me up more than I expected.
  • You're given an existing AccountScheduler class with a constructor and an is_available method. Add an acquire method that locks an account for a given duration starting at time t, returning false if the account is already locked.

“Seemed simple at first, just set a value in a dict and return true or false.”

View Post