What to Expect in the Revolut System Design Interview
Revolut evaluates system design in two places. First, most engineering candidates present their take-home project in an architecture review of about 45 to 60 minutes. Second, senior candidates get design discussions about money systems: ledgers, payments, and currency exchange. In both formats the priority is correctness before scale. Money must never be lost, duplicated, or invented, even when servers fail.
The Two Formats
The take-home review starts from your own submission. Candidates report a project such as a small currency exchange API, built in about four to eight hours. In the review, a senior engineer asks why you chose your design, how it survives ten times the load, and where it fails. The dedicated design round is closer to a classic system design interview. You get a problem from Revolut's own domain and design it on a shared board.
What Revolut Asks About
The questions map to the product. Revolut runs multi-currency accounts, card payments, currency exchange, savings, and trading across many countries. That produces recurring themes:
- Ledgers. A ledger is an append-only record of every money movement. Interviewers expect the ledger as the source of truth, with faster read copies built from it.
- Idempotency. Idempotency means a request applied twice has the same effect as once. Payment retries make this mandatory.
- Partial failure. A transfer can fail after money left one account and before it arrived in another. Expect questions about retries, rollbacks, and compensating actions.
- Real-time rates. Exchange rates change constantly. Systems must serve fresh rates fast without showing two users different truths.
- Regulatory checks. Money movement passes compliance checks that can delay or stop a transaction. Your design needs a place for them.
A Signature Question: Design a Currency Exchange System
Here is a high-level pass at the most Revolut-shaped question.
Requirements. Users hold balances in several currencies. They see a live rate, confirm an exchange, and both balances update. Rates must be fresh within about a second. The exchange must be exact and auditable.
Rate ingestion. A rate service pulls prices from market data providers. It publishes them to a cache with a short time to live (TTL, the number of seconds a cached value stays valid). The app reads rates from this cache, not from the provider.
Quotes. When a user starts an exchange, the quote service locks a rate for a short window, for example 30 seconds. The quote gets an identifier, and the confirmation must reference it. This prevents the displayed rate and the executed rate from differing.
Execution. Confirmation writes one atomic transaction to the ledger: debit currency A, credit currency B, record the rate and fee. Atomic means both entries commit together or not at all. The request carries an idempotency key, so a retried confirmation cannot execute twice.
Reconciliation. A daily job compares ledger totals against provider statements and flags differences. Reconciliation is the routine comparison of two records of the same money. Interviewers reward candidates who add this without being asked.
Failure modes. Name the failure cases before the interviewer does:
- The rate provider is down. Serve the cached rate with a wider margin, or pause new quotes.
- The ledger write times out. Retry with the same idempotency key, so a double execution is impossible.
- A quote expires before confirmation. Issue a new quote. Never execute against a stale rate.
- Two confirmations arrive for one quote. The idempotency key makes the second one a no-op.
How to Prepare
- Learn the money-system building blocks. Ledgers, idempotency, sagas, and reconciliation appear in most fintech designs. Grokking the System Design Interview teaches the base method, and Grokking the Advanced System Design Interview goes deeper into consistency and failure handling.
- Practice defending a small project. The review of your take-home is a design interview about your own code. What is the Revolut interview process like? shows where it sits in the loop.
- Rehearse the correctness questions. For any design, answer three questions before the interviewer asks. What happens on retry? What happens on partial failure? How would an auditor check this?
- Match your stories to your designs. If you present a ledger design, have a behavioral story about correctness too. Top Revolut behavioral interview questions lists what else is asked.

GET YOUR FREE
Coding Questions Catalog

$123

$197

$72