How the interviewer opens it
“Design a system that computes merchant payouts from transactions, fees, refunds, and reserves. It must execute scheduled settlements without paying the same obligation twice.”
The prompt is vague on purpose. The first minutes are for you. Reduce the prompt to the core features and agree on the numbers before you draw.
What to clarify first
- Merchants and currency
- Financial event volume
- Read and write mix
- Schedule and cutoff
- Financial rules
- Event delivery
- External payout provider
- Latency
- Correctness and durability
- Scope boundaries
The interviewer has the answers. In a SysRound round, Alex gives these answers, as a real interviewer does.
Scope of a strong answer
Core requirements
- Record transactions, fees, refunds, and reserve changes.
- Compute each merchant's eligible payout for a daily cutoff.
- Submit scheduled payouts without paying the same funds twice.
- Track payout results and reconcile provider records.
Usually out of scope
- Currency conversion
- Tax calculations
- Card payment processing
- Reserve risk decisions
- Construction of the external payout provider
What interviewers ask about
- Amounts available for payout
- A merchant's total balance differs from the amount eligible at a cutoff. Refunds and reserve changes can arrive after that cutoff.
- Repeated settlement runs
- Two runs can claim the same funds even when they use different transfer references. A unique transfer reference alone does not prevent this.
- Transfer outcomes
- The provider can move money before the system records success. A timeout does not prove that the transfer failed.
- Daily settlement deadline
- The system must process one million merchant decisions within two hours. Retries and isolated financial errors must not stop the whole run.
Common mistakes
- Uses one mutable merchant balance without financial history.
- Treats a daily run ID as protection against reuse of the same funds.
- Changes a payout amount after transfer submission.
- Creates a new provider reference after a timeout.
- Returns uncertain payout funds to the available balance.
- Ignores negative carry, reserve releases, or late refunds.
The bar by level
- Senior (L5/E5)
- Defines cutoff rules and negative carry. Atomically creates and funds each obligation. Handles concurrent runs, provider timeouts, repeated callbacks, reconciliation, and the batch deadline.
- Staff (L6+/E6+)
- States end-to-end financial invariants and their external dependencies. Designs safe regional recovery and correction procedures. Quantifies provider limits and audit storage. Explains when provider changes make the duplicate-payment guarantee impossible.