Goldman Sachs System Design Interview: What the Bar Actually Tests
- Both LLD and HLD are tested at Goldman Sachs, often in the same Superday, unlike most tech companies that run only one design format
- Finance constraints change the architecture: correctness beats availability, audit trails are mandatory, and floating-point numbers are always wrong for money
- LLD prompts focus on order book and matching engine modeling, SQL schema design, and concurrency primitives like Java's
synchronizedandjava.util.concurrent - HLD prompts are finance-scoped: real-time trading platforms, risk monitoring pipelines, and multi-region payment infrastructure appear far more than generic social feeds
- The bar rises sharply by level: Analysts focus on LLD, Associates need both, VPs defend trade-offs quantitatively, and EDs reason about cross-team and compliance dependencies
- The four fatal mistakes are designing for uptime over correctness, skipping the audit trail, using floats for money, and treating regulatory compliance as a footnote
You rehearsed "design a URL shortener." You can whiteboard a rate limiter in your sleep. You have a Notion doc titled "System Design Patterns" with eighteen tabs open.
Then Goldman Sachs gives you "design an order book for a single stock with limit and market orders." Somewhere between reading that prompt and realizing you have no idea what time-in-force means, your prep spreadsheet becomes a museum exhibit.
This guide covers the actual round structure, the two design flavors Goldman tests, the finance-specific constraints that change how you reason, and what separates a passing answer from a hire at each level.
HLD and LLD Both Show Up. Prepare for Both.
Most companies run one design round. You draw some boxes, mention Kafka, call it a day. Goldman Sachs asks for both high-level design (HLD) and low-level design (LLD), sometimes in the same 45-minute session.
LLD at Goldman means class hierarchies, SQL schemas, and concurrency under pressure. A typical prompt: "Design an order book for a single stock with limit and market orders." You are expected to define Order, OrderBook, MatchingEngine, and Trade classes, handle partial fills and cancellations, and reason about time-in-force rules (GTC, IOC, FOK) without pausing to ask what those acronyms mean. If you cannot move fluently between a class diagram and a database schema in the same breath, you will stall.
HLD moves to the distributed systems layer. Data ingestion pipelines, real-time risk monitoring, multi-region payment infrastructure. Latency, throughput, consistency, and failure handling all land inside a single 45-minute window.
These are two very different muscle groups. Training one and hoping it covers the other is a plan that does not survive first contact with the prompt.
The Superday Is Five Interviews on One Day. Yes, All Five.
The Goldman Sachs final round is a virtual Superday: three to five back-to-back interviews on the same day, each 45 to 60 minutes. For engineering roles, the typical distribution:
| Round | Focus |
|---|---|
| DSA / Coding | LeetCode medium-range problems, CoderPad |
| LLD / Design Principles | Class design, SQL schema, concurrency |
| System Design (HLD) | Distributed systems, scalability, trade-offs |
| Behavioral | Values, collaboration, past decisions |
| Optional Coding | Additional CoderPad round at some levels |
Goldman uses a consensus hiring model. A single strong objection from any interviewer can block an offer. You can clear four rounds brilliantly and coast into round five, and you are done. The "I already got through the hard parts" instinct is not a strategy. It is a cautionary tale that other candidates are happy to watch you live out.
The Finance Lens Changes Everything
Most prep resources treat Goldman like any other big tech design round. That is wrong, and the candidates who walk in with that assumption find out the hard way.
A standard system design answer optimizes for availability and eventual consistency. In a social app, being briefly wrong is fine. Nobody files a compliance report because a tweet showed up twice. In a trading system, being briefly wrong costs real money, and there will be paperwork.
The Goldman design interview tests financial systems at scale, and those two things have very different constraints from a consumer tech design round.
Four constraints that every Goldman design needs to address:
- Correctness over availability. Losing a few trades is worse than being briefly unavailable. When in doubt, fail closed.
- Auditability. Every state change must be traceable. Append-only event logs (Kafka or a write-ahead log) are almost always the right foundation here.
- Low latency with financial accuracy. You cannot sacrifice decimal precision for speed. Floats are wrong. Fixed-point arithmetic or
Decimaltypes are right. - Regulatory boundaries. Data residency, KYC, AML, and multi-region compliance requirements shape where you store and process data. Interviewers will probe whether you factor these in or handwave past them.
That third point deserves a moment. IEEE 754 floating-point numbers are a perfectly reasonable way to represent approximately $3.40. Nobody at Goldman wants approximately $3.40. They want exactly $3.40, and they want that guarantee to hold for the ten-millionth transaction exactly as much as the first. Always use fixed-point arithmetic, BigDecimal in Java, or Decimal in Python. Interviewers catch this in the first five minutes. It is the kind of mistake that reads as someone who has never shipped code that touches money.
What Gets Asked in LLD
LLD rounds test object modeling, schema design, and concurrency.
Object modeling prompts are finance-domain adjacent. Common examples:
- Design an order book with limit and market orders
- Design a banking system with accounts, customers, and credit cards
- Design a utility payment interface
- Design a calculator using the Strategy Pattern
The interviewer picks one component and asks you to go deep. They want to see how you model state transitions, enforce invariants through class design, and choose between inheritance and composition deliberately. "I would add a base class for Order types" is not an answer. Showing the class hierarchy, explaining why you chose composition for the matching strategy, and walking through what happens to a partially-filled GTC order at market close is an answer.
Schema design comes up as a follow-on. After classes, you translate to SQL tables and write queries. Goldman runs heavily on relational databases, so normalized schemas, appropriate indexes, and locking semantics are expected knowledge.
Concurrency is tested explicitly. Goldman is a Java shop. If you have been living in TypeScript for the last year, now is a good time to revisit Java memory model basics, synchronized blocks, and the java.util.concurrent package. Deadlock scenarios and shared-state race conditions come up regularly. The question is not whether you have memorized the API. The question is whether you can reason about what breaks under concurrent access before it breaks.
What Gets Asked in HLD
High-level design rounds follow the classic distributed systems format, with a Goldman twist.
Common prompts from recent interview reports:
- Design a real-time trading platform
- Design a risk monitoring system that processes data from multiple exchanges
- Design a market data ingestion pipeline for millions of events per second
- Design a payment system with global operations and multi-region requirements
- Design a notification system or caching layer
That last category still appears. Even general prompts get scoped into financial contexts: alerting traders on position changes, caching risk calculations across desks. There is no refuge in neutral territory.
What a strong HLD answer includes at Goldman:
- Requirements clarification up front. State throughput, latency targets, consistency model, and read/write balance before touching the architecture.
- An event-driven core. Kafka or a durable log backbone provides the auditability trail that financial systems require and that the interviewer will ask about if you skip it.
- Explicit consistency decisions. Which operations need strong consistency (account balances, trade execution) versus eventual consistency (analytics dashboards, reporting)?
- Failure handling that reflects financial risk. If a downstream risk check times out, you block and alert. You do not proceed optimistically and sort it out later.
- Monitoring, observability, and circuit breakers. The follow-up question about what happens when something breaks is already written on the interviewer's notes. Have the answer ready.
How the Bar Shifts by Level
Goldman uses a title ladder of Analyst, Associate, Vice President (VP), Executive Director (ED), and Managing Director (MD). The system design expectation rises meaningfully at each step.
| Level | System Design Expectation |
|---|---|
| Analyst (new grad) | LLD focused. Basic class design and SQL. HLD is light. |
| Associate (2-5 YOE) | Both HLD and LLD. Finance-specific prompts. Concurrency required. |
| VP (5-10 YOE) | End-to-end distributed design. Trade-offs defended quantitatively. Failure modes and compliance expected. |
| ED / MD (10+ YOE) | System-of-systems thinking. Operational story, cross-team dependencies, cost. |
At the Analyst level, the LLD round matters more than HLD. A new grad who cannot produce a clean class hierarchy for an order book will struggle even if their HLD is reasonable. Goldman is not expecting you to have designed global payment infrastructure at 22. They are checking whether you can think in objects and schemas.
At the Associate level, both dimensions are evaluated. Candidates who only studied HLD and show up unable to write SQL or define a class invariant are rejected here regularly. The pattern is visible enough that it has its own name in recruiting circles.
At VP and above, the question is whether you can design something Goldman would actually ship. Cost, compliance, operational overhead, and cross-team dependencies are part of the conversation, not a footnote you mention on your way to the door.
Four Mistakes That Kill Goldman System Design Answers
Designing for uptime instead of correctness. "We use eventual consistency everywhere for availability" is the right instinct for a social app and exactly the wrong instinct for a trading system. Know when durability and correctness have to win, and say so before the interviewer has to prompt you.
Skipping the audit trail. Every Goldman system needs traceability. If you design a payment service without explaining how you would reconstruct what happened to a specific transaction, you have missed a core requirement. This is not a nice-to-have. It is legally mandated, and the interviewer knows that.
Using floats for money. IEEE 754 floating-point numbers introduce rounding errors that look fine in tests and surface in production when they compound across millions of transactions. Storing monetary values as floats is the design equivalent of showing up to the interview with "I google everything" on your resume. Use fixed-point arithmetic, BigDecimal in Java, or Decimal in Python. Always.
Treating the compliance layer as a footnote. Data residency, KYC checks, and AML screening are not things you mention at the end because you ran out of other things to say. If your system processes client money across regions, these constraints shape the architecture from the ground up. Name them early or explain later why you missed them.
How to Prepare for the Goldman Sachs System Design Interview
Get comfortable with finance-domain vocabulary before the interview. You do not need to be a quant. You need to know what an order book is, how a matching engine works, what a risk limit means, and why settlement matters, before the prompt appears. Being able to engage with the domain from minute one reads as preparation. Not knowing these terms reads as the opposite.
Practice LLD and HLD together. Most system design courses stop at boxes and arrows. Goldman wants you to move from component diagram to class diagram to SQL schema in the same session. Practice the full arc on a single prompt, not in isolated sessions.
Study the trade-off between consistency and latency in financial systems. The CAP theorem is relevant here, but the more useful frame is: what does a wrong answer cost? In a trading system, a wrong answer costs real money. Let your architecture decisions reflect that.
Mock voice-based practice closes the gap faster than silent problem-solving. Explaining your design out loud, defending trade-offs when challenged, and staying coherent while drawing and talking simultaneously are skills you have to train, not instincts you happen to have. SpaceComplexity runs realistic mock interviews for exactly this, with rubric-based feedback on communication and technical depth.
Build a repertoire of five to seven finance-adjacent patterns:
- Order book and matching engine
- Event sourcing with Kafka for audit trails
- CQRS (Command Query Responsibility Segregation) for read/write separation
- Saga pattern for distributed transactions
- Circuit breaker pattern for risk-sensitive downstream calls
- Multi-region data replication with compliance boundaries
Knowing the names is not enough. You need to be able to sketch the implementation and explain what breaks if you apply them in the wrong context. The interviewer will find out if you cannot.
For more on the full Goldman Sachs interview loop, including DSA and behavioral rounds, see the Goldman Sachs software engineer interview guide and the Goldman Sachs behavioral interview questions guide. For other firms with a similar system design bar, the Citadel system design interview guide and the Two Sigma system design interview guide cover the quant-adjacent design space.
Further Reading
- Goldman Sachs Engineering, official overview of the engineering organization
- Goldman Sachs Interview Experience (Glassdoor), candidate reports across levels and roles
- Goldman Sachs Associate Interview Experience (LeetCode), recent first-hand account with specific round details
- CQRS Pattern (Martin Fowler), the read/write separation pattern that appears in financial system design
- Event Sourcing (Martin Fowler), foundational pattern for auditability in financial systems