PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/Coinbase

Design crypto trading system

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design a trading gateway that reconciles synchronous client APIs with asynchronous downstream exchange behavior, emphasizing distributed systems concepts such as state machines, correctness under failure, idempotency, and scalable traffic handling.

  • hard
  • Coinbase
  • System Design
  • Software Engineer

Design crypto trading system

Company: Coinbase

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

##### Question Design a cryptocurrency trading system that connects to third-party exchanges through a (logically) asynchronous synchronous API. Detail the full state-transition diagram for an order (e.g., NEW → PARTIALLY_FILLED → FILLED / CANCELED / EXPIRED). Explain how the system detects and recovers from third-party exchange timeouts or failures. Describe strategies (queueing, autoscaling, back-pressure, etc.) to handle spiky traffic and protect downstream dependencies.

Quick Answer: This question evaluates a candidate's ability to design a trading gateway that reconciles synchronous client APIs with asynchronous downstream exchange behavior, emphasizing distributed systems concepts such as state machines, correctness under failure, idempotency, and scalable traffic handling.

Related Interview Questions

  • Design Crypto Order Routing - Coinbase (hard)
  • Design a crypto trading web frontend - Coinbase (hard)
  • Design query pagination for large datasets - Coinbase (medium)
  • Design a food delivery system - Coinbase (medium)
  • Design real-time crypto prices homepage - Coinbase (hard)
Coinbase logo
Coinbase
Aug 4, 2025, 10:55 AM
Software Engineer
Onsite
System Design
9
0

System Design: Crypto Trading Gateway via Logically Asynchronous, Synchronous APIs

Context

You are designing a trading gateway that brokers client orders to multiple third-party crypto exchanges. The external exchanges expose synchronous HTTP endpoints for order submission/cancel (request–response), but trade execution and order updates are delivered asynchronously (e.g., via WebSocket streams or polling). The system must present a clean client-facing API, ensure correctness under failures, and scale through volatile, spiky market conditions.

Requirements

Design the system and cover:

  1. High-level architecture and request flow for placing and canceling orders using a synchronous client API while handling asynchronous downstream behavior.
  2. A complete order state machine and state-transition diagram (e.g., NEW → PARTIALLY_FILLED → FILLED / CANCELED / EXPIRED), including intermediate and failure states.
  3. How to detect and recover from third-party exchange timeouts or failures, including idempotency, retries, reconciliation, and circuit breaking.
  4. Strategies to handle spiky traffic and protect downstream dependencies (queueing, autoscaling, back-pressure, prioritization, rate limiting).

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Coinbase•More Software Engineer•Coinbase Software Engineer•Coinbase System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.