← Coinbase Interview Insights

Coinbase·Software Engineer·Onsite - System Design / Architecture·Intermediate

Intermediate
Apr 2026

Summary

Did a system design round at Coinbase for a software engineer role. The question was something I hadn't seen posted anywhere before, which threw me a bit. Interviewer turned out to be pretty chill and revealed afterward that the problem was based on something he actually built early in his time at the company.

Questions Asked (1)

Q1

Design a system to track cryptocurrency transactions across a ledger, similar to how a crypto transaction history would be stored and queried.

System DesignData ModelingTechnical Trade-offs
Author's notes

No prep material for this one since it wasn't circulating anywhere.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements: transaction volume, query patterns, consistency needs, and regulatory constraints. Then design a data model that captures transactions as immutable ledger entries, and propose a scalable storage and indexing strategy to support efficient queries. Discuss trade-offs between consistency, availability, and latency, and how to handle double-spending and idempotency.

Pro tip: Emphasize idempotency and exactly-once processing for transaction ingestion, as crypto systems must handle retries and network partitions without duplicating entries. Also, mention the importance of auditability and compliance (e.g., KYC/AML) in the design.

1. Clarify Requirements

Ask about expected transaction volume, read/write ratio, query patterns (e.g., by user, by block, by time), consistency requirements, and regulatory needs. Define functional and non-functional requirements.

2. Design Data Model

Propose a schema for transactions, blocks, addresses, and balances. Use an append-only ledger with unique transaction IDs and references to previous transactions to ensure immutability and traceability.

3. Choose Storage and Indexing

Select a database (e.g., relational for ACID, NoSQL for scale) and design indexes to support common queries. Consider partitioning by time or user, and caching for hot data.

4. Handle Scalability and Consistency

Discuss sharding, replication, and consensus mechanisms (e.g., Raft, Paxos) for distributed consistency. Address how to handle double-spending and ensure idempotent writes.

5. Address Trade-offs and Edge Cases

Compare SQL vs NoSQL, strong vs eventual consistency, and latency vs throughput. Discuss handling of forks, reorgs, and failed transactions, and how to ensure auditability.

Key Points to Mention

  • Immutable append-only ledger with cryptographic hashing for integrity
  • Idempotency keys and exactly-once processing to avoid duplicate transactions
  • Indexing strategies for efficient queries by address, time, and block height
  • Sharding and replication for scalability and high availability
  • Consistency models (ACID vs BASE) and their impact on double-spending prevention
  • Compliance and auditability requirements (e.g., KYC/AML, data retention)

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.