The Interview Loop
Recruiter Screen (30 min)
Standard fit check, behavioral questions, and resume overview.
Technical Loop (3-4 Rounds)
Deep dive into domain knowledge, coding, and system design.
Interview Question Bank
Data Engineer
•
Behavioral
•
easy
Why do you want to work at Coinbase, and what are your thoughts on the future of decentralized finance (DeFi) from a data perspective?
#Domain Interest
#Crypto
#Company Mission
Data Engineer
•
Behavioral
•
medium
Tell me about a time you had to 'act like an owner' and take responsibility for a failing data pipeline that wasn't originally yours.
#Ownership
#Troubleshooting
#Accountability
Data Engineer
•
Behavioral
•
medium
Describe a situation where you disagreed with a product manager or stakeholder about a data architecture decision. How did you resolve it?
#Conflict Resolution
#Communication
#Stakeholder Management
Data Engineer
•
Behavioral
•
medium
Tell me about a time you had to learn a new technology or framework very quickly to deliver a critical project.
#Adaptability
#Continuous Learning
#Execution
Data Engineer
•
Behavioral
•
medium
Tell me about a time you took ownership of a failing or highly unstable data pipeline and turned it around. What was your approach?
#Ownership
#Problem Solving
#Resilience
Data Engineer
•
Behavioral
•
medium
Describe a situation where you had to disagree with a senior engineer or manager about a technical architecture choice. How did you handle it?
#Conflict Resolution
#Communication
#Data-Driven Decisions
Data Engineer
•
Behavioral
•
medium
Coinbase values clear communication. Give an example of how you explained a complex data engineering concept to a non-technical stakeholder.
#Communication
#Stakeholder Management
Data Engineer
•
Behavioral
•
medium
Tell me about a time you had to learn a new technology completely from scratch to deliver a project on a tight deadline.
#Continuous Learning
#Adaptability
#Execution
Data Engineer
•
Behavioral
•
medium
Describe a time you identified a major data quality issue in production. How did you handle it and prevent it from happening again?
#Data Quality
#Proactiveness
#Process Improvement
Data Engineer
•
Behavioral
•
hard
Tell me about a time you made a mistake that impacted production data or systems. What was the aftermath and what did you learn?
#Accountability
#Post-mortems
#Growth Mindset
Data Engineer
•
Behavioral
•
medium
Give an example of a time you simplified a complex data process or architecture. What was the impact?
#Simplification
#Efficiency
#Engineering Excellence
Data Engineer
•
Behavioral
•
medium
Tell me about a time you discovered a critical data discrepancy that impacted business reporting. How did you communicate and fix it?
#Integrity
#Communication
#Incident Management
Data Engineer
•
Behavioral
•
medium
Describe a project where you had to balance shipping quickly versus building a perfect, highly scalable solution.
#Trade-offs
#Execution
#Pragmatism
Data Engineer
•
Behavioral
•
medium
Tell me about a time you received critical feedback from a peer or manager. How did you handle it?
#Self-Awareness
#Growth Mindset
#Feedback
Data Engineer
•
Behavioral
•
medium
How do you prioritize addressing technical debt versus building new feature requests in a data engineering sprint?
#Prioritization
#Stakeholder Management
#Agile
Data Engineer
•
Behavioral
•
medium
Describe a time you mentored a junior engineer through a difficult technical challenge. What was your approach?
#Mentorship
#Team Building
#Empathy
Data Engineer
•
Behavioral
•
medium
How do you prioritize addressing technical debt versus building new data features requested by the product team?
#Prioritization
#Technical Debt
#Product Alignment
Data Engineer
•
Behavioral
•
easy
Give an example of a time you stepped outside your defined role as a Data Engineer to help the team or company succeed.
#Teamwork
#Initiative
#Cross-functional
Data Engineer
•
Coding
•
hard
Design a class to keep track of the top K most traded cryptocurrencies in a sliding window of the last 1 hour.
#Heaps
#Sliding Window
#Hash Maps
Data Engineer
•
Coding
•
medium
Given a table of user logins and a table of trades, write a query to find the percentage of users who made a trade within 1 hour of logging in.
#SQL
#Joins
#Date Math
Data Engineer
•
Coding
•
easy
Write a function to validate if a given string is a valid Ethereum address (starts with 0x, followed by 40 hexadecimal characters).
#Python
#Regex
#Strings
Data Engineer
•
Coding
•
medium
Find the top K most frequently traded assets in a rolling window of N minutes from a stream of trade events.
#Python
#Sliding Window
#Heaps
#Queues
Data Engineer
•
Coding
•
hard
Write a script to detect cycles in a directed graph representing cryptocurrency wallet transfers to flag potential money laundering.
#Python
#Graphs
#DFS
Data Engineer
•
Coding
•
hard
Given a continuous stream of order book updates (bids and asks), write a class to maintain and efficiently query the current best bid and best ask.
#Python
#Heaps
#Data Structures
Data Engineer
•
Coding
•
hard
Implement a rate limiter for an internal API endpoint that pulls real-time Bitcoin prices, allowing a maximum of N requests per M seconds per IP address.
#Python
#Concurrency
#Data Structures
Data Engineer
•
Coding
•
medium
Given a list of user login sessions with start and end timestamps, merge overlapping intervals to calculate the total active time for a user.
#Python
#Arrays
#Sorting
Data Engineer
•
Coding
•
medium
Write a function to flatten a deeply nested JSON object representing a blockchain transaction payload into a single-level dictionary.
#Python
#JSON
#Recursion
Data Engineer
•
Coding
•
medium
Parse a log file of cryptocurrency trades and calculate the VWAP (Volume Weighted Average Price) for a specific asset over a given time period.
#Python
#Data Processing
#Math
Data Engineer
•
Coding
•
medium
Write a SQL query to identify 'whale' wallets that have transferred more than $1,000,000 in aggregate volume in a single calendar day.
#SQL
#Aggregations
#GROUP BY
Data Engineer
•
Coding
•
medium
Write a SQL query to find the 7-day rolling average of daily transaction volume per user.
#SQL
#Window Functions
#Time-series
Data Engineer
•
Coding
•
easy
Write a Python function to parse a massive JSON log file of crypto trades and return the total trading volume per currency pair.
#JSON Parsing
#Dictionaries
#File I/O
Data Engineer
•
Coding
•
medium
Implement a rate limiter for a crypto price API that allows a maximum of 100 requests per minute per user.
#Data Structures
#Queues
#System Clocks
Data Engineer
•
Coding
•
medium
Given a list of user login session intervals [start_time, end_time], write a function to merge all overlapping sessions.
#Arrays
#Sorting
#Intervals
Data Engineer
•
Coding
•
easy
Write a Python function to validate if a given string is a valid Bitcoin address based on specific prefix and length constraints.
#String Manipulation
#Regex
#Validation
Data Engineer
•
Coding
•
medium
Write a recursive function to flatten a deeply nested dictionary representing a complex blockchain transaction payload into a single-level dictionary.
#Recursion
#Dictionaries
#Data Transformation
Data Engineer
•
Coding
•
medium
Write a Python script using Pandas to backfill missing daily price data for a crypto asset using linear interpolation.
#Pandas
#Data Cleaning
#Interpolation
Data Engineer
•
Coding
•
hard
Implement a function to detect cycles in a directed graph representing crypto wallet transfers, to help flag potential money laundering.
#Graphs
#DFS
#Cycle Detection
Data Engineer
•
Coding
•
medium
Write a query to calculate the cumulative balance of a wallet address given a ledger of debit and credit transactions.
#SQL
#Window Functions
#Running Totals
Data Engineer
•
Coding
•
hard
Write a SQL query to find the maximum consecutive days a user has made at least one trade (trading streak).
#SQL
#Gaps and Islands
#Window Functions
Data Engineer
•
System Design
•
hard
Design a real-time data pipeline to ingest and process blockchain node data (e.g., Ethereum blocks) into a data warehouse for analytics.
#Streaming
#Kafka
#Data Lake
#Architecture
Data Engineer
•
System Design
•
hard
Design a system to ingest, process, and serve real-time exchange rates for 10,000+ crypto pairs to internal microservices.
#Pub/Sub
#Caching
#Redis
#Microservices
Data Engineer
•
System Design
•
medium
How would you migrate a legacy daily batch pipeline to a streaming architecture using Kafka and Flink?
#Kafka
#Flink
#Migration
#Architecture
Data Engineer
•
System Design
•
medium
Design a data pipeline to sync user account balances from a highly transactional PostgreSQL database to Snowflake.
#CDC
#Debezium
#Snowflake
#Data Replication
Data Engineer
•
System Design
•
medium
How do you ensure data quality and anomaly detection in a pipeline that ingests third-party market data?
#Data Quality
#Anomaly Detection
#Observability
Data Engineer
•
System Design
•
hard
Design a metrics aggregation system for Coinbase Wallet telemetry data (e.g., button clicks, screen views) handling millions of events per second.
#High Throughput
#OLAP
#Druid/ClickHouse
#Telemetry
Data Engineer
•
System Design
•
hard
Explain how you would migrate a massive legacy Redshift database to Snowflake with zero downtime for downstream analytics consumers.
#Cloud Migration
#Dual Writes
#Data Validation
Data Engineer
•
System Design
•
medium
Design a system to ingest exchange rate data from 10 different external crypto exchanges and calculate a consolidated, volume-weighted global price.
#API Integration
#Data Aggregation
#Fault Tolerance
Data Engineer
•
System Design
•
medium
How do you handle schema evolution in a data lake storing raw JSON payloads from various rapidly updating blockchain networks?
#Schema Registry
#Data Lake
#Parquet/Avro
Data Engineer
•
System Design
•
hard
Design a streaming pipeline using Kafka and Flink to detect fraudulent login attempts based on IP geolocation and velocity.
#Stream Processing
#Flink
#Fraud Detection
#Stateful Processing
Data Engineer
•
System Design
•
hard
Design a data warehouse architecture for Coinbase's compliance team to run daily Anti-Money Laundering (AML) reports on petabytes of data.
#Data Warehousing
#Batch Processing
#Security
#Snowflake
Data Engineer
•
System Design
•
hard
How would you design a system to calculate and serve real-time crypto portfolio balances to millions of concurrent users?
#Caching
#Event Sourcing
#High Availability
#Redis
Data Engineer
•
System Design
•
medium
Design an Airflow DAG architecture to handle dependencies between fiat deposits, crypto trades, and daily financial reconciliation.
#Airflow
#Orchestration
#DAG Design
#Idempotency
Data Engineer
•
System Design
•
hard
Design a real-time ETL pipeline to ingest, validate, and store transaction data from multiple blockchain nodes (Bitcoin, Ethereum, Solana).
#Streaming
#Kafka
#Data Lake
#Architecture
Data Engineer
•
System Design
•
hard
Design a system to detect anomalous trading patterns (potential wash trading) in near real-time.
#Real-time
#Flink
#Fraud Detection
#Event Processing
Data Engineer
•
System Design
•
medium
How would you design a scalable ETL pipeline to aggregate daily trading fees across millions of users and multiple assets?
#Batch Processing
#Airflow
#Spark
#ETL
Data Engineer
•
System Design
•
hard
Design a data lakehouse architecture for Coinbase's compliance team to run ad-hoc queries on petabytes of historical transaction data.
#Iceberg/Hudi
#Snowflake
#Storage
#Data Governance
Data Engineer
•
System Design
•
medium
Explain how you would handle late-arriving data in a daily batch pipeline calculating user portfolio balances.
#Data Engineering
#Airflow
#Idempotency
#Backfilling
Data Engineer
•
Technical
•
hard
Design a relational data model for a new NFT marketplace. Then, write a query to find the highest-grossing NFT collection of the week.
#Schema Design
#Foreign Keys
#Joins
Data Engineer
•
Technical
•
medium
Write a SQL query to calculate the 7-day moving average of trading volume for each cryptocurrency asset on the platform.
#Window Functions
#Time Series
#Aggregations
Data Engineer
•
Technical
•
medium
Given a 'transactions' table, write a query to find the top 3 users by total transaction volume for each month.
#CTEs
#Ranking Functions
#Date Truncation
Data Engineer
•
Technical
•
hard
Write a SQL query to identify potential 'wash trading'—instances where a user buys and sells the same asset to themselves within a 1-minute window.
#Self Joins
#Time Intervals
#Fraud Detection
Data Engineer
•
Technical
•
hard
Given a table of user login and logout timestamps, write a query to find the maximum number of concurrent active user sessions on the exchange.
#Cumulative Sum
#Event Sourcing
#Advanced SQL
Data Engineer
•
Technical
•
medium
Calculate the Daily Active Users (DAU) and the month-over-month retention rate for the Coinbase Pro platform.
#Cohort Analysis
#Retention
#Aggregations
Data Engineer
•
Technical
•
medium
Given a table of order book snapshots (bids and asks), write a query to calculate the bid-ask spread for BTC-USD at the end of every hour.
#Window Functions
#Filtering
#Financial Data
Data Engineer
•
Technical
•
easy
Write a SQL query to find the first and last transaction timestamp, along with the respective amounts, for every wallet address.
#Aggregations
#Window Functions
Data Engineer
•
Technical
•
hard
How would you handle late-arriving blockchain transaction data in a daily aggregate table? Write a SQL MERGE statement to update the aggregates.
#Idempotency
#MERGE/UPSERT
#Data Warehousing
Data Engineer
•
Technical
•
medium
Write a query to identify users who made a fiat deposit but did not execute any crypto trades within 24 hours of that deposit.
#Left Joins
#Time Intervals
#Funnel Analysis
Data Engineer
•
Technical
•
medium
Design a relational data model for a cryptocurrency exchange order book, including tables for users, orders, and executions.
#Schema Design
#RDBMS
#Normalization
Data Engineer
•
Technical
•
hard
Design a dimensional model (star schema) for tracking NFT mints and secondary market sales for Coinbase NFT.
#Star Schema
#Data Warehouse
#Fact/Dimension Tables
Data Engineer
•
Technical
•
medium
How would you handle slowly changing dimensions (SCD Type 2) for user KYC (Know Your Customer) status changes in a data warehouse?
#SCD
#Data Warehouse
#ETL
Machine Learning Engineer
•
Behavioral
•
hard
Tell me about a time you identified a security or privacy risk in an ML dataset. How did you handle it?
#Data Privacy
#PII
#Security
Machine Learning Engineer
•
Behavioral
•
medium
Describe a time you simplified a complex ML pipeline to improve maintainability and reduce technical debt.
#Refactoring
#Simplicity
#Technical Debt
Machine Learning Engineer
•
Behavioral
•
easy
Why Coinbase? And why specifically Machine Learning in the crypto space?
#Motivation
#Crypto Domain Knowledge
Machine Learning Engineer
•
Behavioral
•
medium
Tell me about a time you disagreed with a Product Manager regarding a model's readiness for production.
#Communication
#Stakeholder Management
Machine Learning Engineer
•
Behavioral
•
medium
Tell me about a time you had to pivot a machine learning project because the initial approach failed. How did you communicate this to stakeholders?
#Communication
#Adaptability
#Clear Communication
Machine Learning Engineer
•
Behavioral
•
medium
Tell me about a time you acted like an owner to resolve a critical production issue in an ML pipeline.
#Ownership
#Incident Management
#Debugging
Machine Learning Engineer
•
Coding
•
medium
Given an array of integers representing the daily trading volume of an asset, return the top K most frequent trading volumes.
#Heaps
#Hash Map
#Sorting
Machine Learning Engineer
•
Coding
•
hard
Given a stream of prices, design a data structure that supports inserting a price, and calculating the median price in O(log N) or better.
#Heaps
#Data Stream
Machine Learning Engineer
•
Coding
•
medium
Find the Lowest Common Ancestor (LCA) of two nodes in a Binary Tree. (Context: Merkle Trees in blockchain).
#Trees
#Recursion
Machine Learning Engineer
•
Coding
•
hard
Given an array of historical prices for a cryptocurrency, write an algorithm to find the maximum profit you can achieve with at most two transactions.
#Dynamic Programming
#Arrays
Machine Learning Engineer
•
Coding
•
medium
Write a SQL query to find all users who made more than 5 transactions within any rolling 10-minute window.
#Window Functions
#Time Series Data
Machine Learning Engineer
•
Coding
•
medium
Given a list of trading intervals [start_time, end_time], merge all overlapping intervals.
#Sorting
#Arrays
Machine Learning Engineer
•
Coding
•
hard
Given a stream of cryptocurrency orders (buy/sell, price, quantity), design a data structure to maintain the order book and efficiently match incoming orders.
#Heaps
#Design
#Trading Systems
Machine Learning Engineer
•
Coding
•
medium
Given a string representing a sequence of crypto ticker symbols, find the length of the longest substring without repeating characters.
#Sliding Window
#Hash Map
#Strings
Machine Learning Engineer
•
Coding
•
medium
Write a SQL query to calculate the 7-day rolling average trading volume for each cryptocurrency asset.
#Window Functions
#Aggregations
Machine Learning Engineer
•
Coding
•
medium
Write a function to detect if a cycle exists in a directed graph representing blockchain transactions between wallets.
#Graphs
#DFS
#Topological Sort
Machine Learning Engineer
•
Coding
•
easy
Write a SQL query to find the user with the highest total transaction volume in the last 30 days, excluding internal transfers.
#Joins
#Aggregations
#Filtering
Machine Learning Engineer
•
System Design
•
medium
Design a system to automatically route incoming customer support tickets to the correct department using LLMs.
#NLP
#LLMs
#Classification
Machine Learning Engineer
•
System Design
•
medium
Design a system to predict Ethereum gas fees in real-time to help users optimize their transaction timing.
#Time Series Forecasting
#Real-time ML
#Regression
Machine Learning Engineer
•
System Design
•
hard
Design a system to detect account takeovers (ATO) based on user login behavior and device telemetry.
#Security
#Anomaly Detection
#Real-time ML
Machine Learning Engineer
•
System Design
•
hard
Design an anomaly detection system for identifying vulnerabilities or exploits in newly deployed smart contracts.
#Anomaly Detection
#Security
#Blockchain
Machine Learning Engineer
•
System Design
•
medium
Design a personalized news and asset recommendation feed for the Coinbase app homepage.
#Recommender Systems
#Two-Tower Models
#Ranking
Machine Learning Engineer
•
System Design
•
hard
Design a KYC (Know Your Customer) document verification pipeline using Computer Vision and NLP.
#Computer Vision
#OCR
#Pipeline Design
Machine Learning Engineer
•
System Design
•
hard
Design a real-time machine learning system to detect fraudulent fiat-to-crypto deposits.
#Fraud Detection
#Streaming Architecture
#Feature Store
Machine Learning Engineer
•
System Design
•
hard
Design an ML feature store for Coinbase. How would you ensure consistency between offline training data and online inference data?
#Feature Store
#Data Engineering
#Consistency
Machine Learning Engineer
•
System Design
•
medium
Design a rate limiter for Coinbase's public API to prevent abuse from high-frequency trading bots.
#Rate Limiting
#Distributed Systems
#Redis
Machine Learning Engineer
•
Technical
•
medium
How do you handle extreme class imbalance when training an Anti-Money Laundering (AML) classification model?
#Imbalanced Data
#Loss Functions
#Sampling
Machine Learning Engineer
•
Technical
•
hard
Explain how Graph Neural Networks (GNNs) work and how you would apply them to detect malicious actors on the Ethereum blockchain.
#GNN
#Blockchain
#Anomaly Detection
Machine Learning Engineer
•
Technical
•
medium
How would you detect and mitigate concept drift in a model predicting crypto market volatility?
#Concept Drift
#Model Monitoring
#Time Series
Machine Learning Engineer
•
Technical
•
easy
What metrics would you use to evaluate a model predicting whether a user will churn from the Coinbase One subscription?
#Evaluation Metrics
#Churn Prediction
Machine Learning Engineer
•
Technical
•
easy
Explain the difference between XGBoost and Random Forest. Why might you choose one over the other for tabular financial data?
#Tree Models
#Ensemble Methods
Machine Learning Engineer
•
Technical
•
hard
How do you optimize a PyTorch model for low-latency real-time inference in a microservices architecture?
#Model Optimization
#PyTorch
#Inference
Machine Learning Engineer
•
Technical
•
medium
How would you design an embedding generation pipeline for crypto assets based on user trading behavior?
#Embeddings
#Representation Learning
#Word2Vec
Machine Learning Engineer
•
Technical
•
medium
What are the trade-offs between using a generative LLM versus a traditional BERT-based model for classifying transaction descriptions?
#LLMs
#BERT
#Classification
Machine Learning Engineer
•
Technical
•
medium
How do you handle missing or delayed data in a real-time ML pipeline (e.g., delayed blockchain confirmations)?
#Data Engineering
#Streaming
#Robustness
Software Engineer
•
Behavioral
•
medium
Describe a situation where you had to communicate a highly complex technical issue to a non-technical stakeholder.
#Clear Communication
#Empathy
#Stakeholder Management
Software Engineer
•
Behavioral
•
medium
Tell me about a time you had to give difficult, constructive feedback to a peer or a manager.
#Feedback
#Communication
#Empathy
Software Engineer
•
Behavioral
•
medium
Tell me about a time you simplified a complex process, architecture, or piece of code. What was the impact?
#Simplification
#Code Quality
#Efficiency
Software Engineer
•
Behavioral
•
easy
How do you prioritize your tasks when multiple projects seem to be high priority and deadlines are conflicting?
#Time Management
#Prioritization
#Communication
Software Engineer
•
Behavioral
•
medium
Describe a production incident you caused or were heavily involved in resolving. What was the post-mortem?
#Accountability
#System Reliability
#Learning from Failure
Software Engineer
•
Behavioral
•
medium
Tell me about a time you had to learn a new technology or domain completely from scratch under a tight deadline.
#Continuous Learning
#Adaptability
#Problem Solving
Software Engineer
•
Behavioral
•
medium
Describe a time you had a disagreement with a colleague or manager on a technical design. How did you resolve it?
#Clear Communication
#Conflict Resolution
#Collaboration
Software Engineer
•
Behavioral
•
medium
Tell me about a time you had to 'Act Like an Owner' and take over a failing project or a project without clear leadership.
#Ownership
#Leadership
#Initiative
Software Engineer
•
Behavioral
•
hard
Imagine you are on call and multiple critical systems (e.g., user logins and crypto withdrawals) start failing simultaneously. How do you prioritize and handle the situation?
#Incident Management
#Prioritization
#Under Pressure
Software Engineer
•
Behavioral
•
hard
Describe a situation where you had to make a critical architectural decision with incomplete information or high ambiguity.
#Ambiguity
#Decision Making
#Risk Management
Software Engineer
•
Behavioral
•
medium
Tell me about a technical project you worked on that failed or didn't meet expectations. What did you learn from it?
#Resilience
#Growth Mindset
#Accountability
Software Engineer
•
Behavioral
•
medium
Give an example of a time you simplified a complex technical process or architecture. What was the impact?
#Simplification
#Process Improvement
#Execution
Software Engineer
•
Behavioral
•
easy
Tell me about a time you had to learn a new technology or programming language completely from scratch under a tight deadline.
#Adaptability
#Continuous Learning
Software Engineer
•
Behavioral
•
medium
One of our core values is 'Act Like an Owner'. Describe a time you took ownership of a project or problem that was technically outside your job description.
#Ownership
#Leadership
#Initiative
Software Engineer
•
Behavioral
•
medium
Coinbase values 'Clear Communication'. Tell me about a time you had a significant technical disagreement with a colleague. How did you resolve it?
#Conflict Resolution
#Communication
#Collaboration
Software Engineer
•
Coding
•
medium
Parse a real-time stream of trade executions and calculate the Volume Weighted Average Price (VWAP) over a rolling 5-minute window.
#Sliding Window
#Queues
#Stream Processing
Software Engineer
•
Coding
•
medium
Implement a function to verify a transaction's inclusion in a Merkle Tree given the transaction hash, the Merkle Root, and the proof path.
#Trees
#Hashing
#Cryptography
Software Engineer
•
Coding
•
medium
Given a list of server downtime intervals (start_time, end_time), merge all overlapping intervals to find the total downtime.
#Sorting
#Intervals
#Arrays
Software Engineer
•
Coding
•
hard
Design an alert system that triggers when a specific coin's price drops by more than X percent within a Y minute rolling window.
#Sliding Window
#Monotonic Queue
#Time Series
Software Engineer
•
Coding
•
medium
Implement a text editor core engine that supports typing text, deleting text, and undo/redo functionality.
#Stacks
#Design Patterns
#Command Pattern
Software Engineer
•
Coding
•
easy
Write a function to validate if a given string is a valid Bitcoin or Ethereum address based on specific length and character set rules.
#Strings
#Regular Expressions
#Validation
Software Engineer
•
Coding
•
medium
Implement an LRU (Least Recently Used) Cache to store the most recently queried cryptocurrency prices.
#Linked Lists
#Hash Maps
#Caching
Software Engineer
•
Coding
•
medium
Implement a pagination system for a REST API that returns a user's transaction history, supporting cursor-based pagination.
#API
#Data Manipulation
#Sorting
Software Engineer
•
Coding
•
easy
Given an array of historical prices for a cryptocurrency, find the maximum profit you can achieve from a single buy and sell transaction.
#Arrays
#Dynamic Programming
#Two Pointers
Software Engineer
•
Coding
•
medium
Write a thread-safe class to manage a user's cryptocurrency wallet balance, supporting concurrent deposits and withdrawals.
#Concurrency
#Mutex
#Locks
#Race Conditions
Software Engineer
•
Coding
•
medium
Implement a Connect 4 game. Provide a method to drop a token into a column and a method to check if a player has won.
#2D Arrays
#Matrix
#Game Logic
#Pair Programming
Software Engineer
•
Coding
•
hard
Design an in-memory Key-Value store that supports nested transactions with BEGIN, COMMIT, and ROLLBACK operations.
#Data Structures
#State Management
#Stacks
#Hash Maps
Software Engineer
•
Coding
•
medium
Implement a Rate Limiter using the Token Bucket algorithm to restrict the number of API requests a user can make to a trading endpoint.
#Concurrency
#System Design Implementation
#Object-Oriented Design
Software Engineer
•
Coding
•
medium
Given a list of cryptocurrency exchange rates (e.g., BTC-USD, ETH-BTC), write a function to find the best conversion rate between two specific currencies.
#Graphs
#BFS
#Dijkstra's Algorithm
#Math
Software Engineer
•
Coding
•
hard
Implement an in-memory limit order book. It should support adding a buy/sell order, canceling an order, and executing trades when buy and sell prices match.
#Data Structures
#Priority Queue
#TreeMap
#Trading Systems
Software Engineer
•
Coding
•
hard
Implement an in-memory order book matching engine for a single trading pair (e.g., BTC-USD). It should support adding limit buy/sell orders and market orders, and execute trades when prices cross.
#Data Structures
#Priority Queues
#OOP
Software Engineer
•
Coding
•
medium
Given a list of cryptocurrency exchange rates (e.g., BTC-USD = 60000, ETH-BTC = 0.05), write a function to find the best conversion rate between any two given currencies.
#Graphs
#BFS/DFS
#Shortest Path
Software Engineer
•
Coding
•
hard
Implement an in-memory Key-Value store that supports nested transactions with BEGIN, COMMIT, and ROLLBACK operations.
#Data Structures
#State Management
#Stacks
Software Engineer
•
Coding
•
medium
Design and implement a sliding window rate limiter for our public API to prevent abuse.
#Concurrency
#Queues
#System Design
Software Engineer
•
Coding
•
easy
Given a user's current crypto portfolio balances and a target percentage allocation, write a function to calculate the minimum number of buy/sell trades required to rebalance the portfolio.
#Arrays
#Math
#Logic
Software Engineer
•
Coding
•
medium
Write a function to merge K sorted streams of order book data into a single sorted stream.
#Heaps
#Pointers
#Sorting
Software Engineer
•
Coding
•
medium
Write a program that connects to a mock WebSocket streaming JSON trade data, parses the messages, and maintains a rolling 1-minute average price for Ethereum.
#Streaming
#JSON Parsing
#Queues
Software Engineer
•
Coding
•
medium
Implement an API wrapper that fetches a user's entire transaction history from a paginated endpoint, automatically handling rate limits and retries.
#API Integration
#Pagination
#Error Handling
Software Engineer
•
Coding
•
medium
Design a simple blockchain data structure in code. Implement blocks, cryptographic hashing (SHA-256), and a function to validate the integrity of the chain.
#Cryptography
#Hashing
#Linked Lists
Software Engineer
•
Coding
•
medium
Implement an LRU (Least Recently Used) Cache to store recent API responses for crypto price queries.
#Linked Lists
#Hash Maps
#Data Structures
Software Engineer
•
Coding
•
hard
Given an array of historical prices for a crypto asset, find the maximum profit you can achieve with at most two transactions (buy and sell).
#Dynamic Programming
#Arrays
Software Engineer
•
Coding
•
medium
Write a parser for a simplified version of the FIX (Financial Information eXchange) protocol. Convert a raw FIX string into a structured dictionary/map.
#Strings
#Parsing
#Hash Maps
Software Engineer
•
System Design
•
hard
Design a cryptocurrency exchange matching engine capable of handling millions of orders per second.
#High Throughput
#Low Latency
#Event Sourcing
#Microservices
Software Engineer
•
System Design
•
medium
Design a notification system to send price alerts (Push, SMS, Email) to millions of users with low latency.
#Asynchronous Processing
#Message Queues
#Microservices
Software Engineer
•
System Design
•
medium
Design a highly available API rate limiting service for Coinbase's public API.
#Redis
#Distributed Caching
#API Gateway
Software Engineer
•
System Design
•
hard
Design a system to handle a massive airdrop of a new token to 10 million eligible users at a specific time.
#Batch Processing
#Scalability
#Database Locking
Software Engineer
•
System Design
•
hard
Design a fiat-to-crypto payment gateway that integrates with traditional banks and blockchain networks.
#Payment Systems
#State Machines
#Third-party Integration
Software Engineer
•
System Design
•
hard
Design a scalable ledger database system to track user fiat and crypto balances securely.
#Databases
#ACID
#Immutability
#Double Entry Accounting
Software Engineer
•
System Design
•
medium
Design a real-time fraud detection system to flag suspicious cryptocurrency withdrawals.
#Stream Processing
#Machine Learning
#Rules Engine
Software Engineer
•
System Design
•
hard
Design the infrastructure for a secure cryptocurrency wallet system, including hot and cold storage management.
#Security
#Cryptography
#Key Management
#Distributed Systems
Software Engineer
•
System Design
•
medium
Design a real-time price ticker dashboard for millions of concurrent web and mobile clients.
#WebSockets
#Pub/Sub
#Redis
#Scalability
Software Engineer
•
System Design
•
hard
Design the backend architecture for a cryptocurrency exchange. Focus on the order matching engine and how it interacts with user balances.
#Microservices
#Concurrency
#Matching Engine
#ACID
Software Engineer
•
System Design
•
medium
Design a real-time price ticker dashboard for Coinbase's homepage that serves millions of concurrent users.
#WebSockets
#Pub/Sub
#Caching
#Scalability
Software Engineer
•
System Design
•
hard
Design a reliable fiat-to-crypto payment gateway that integrates with third-party banks and handles deposits and withdrawals.
#Idempotency
#Payment Gateways
#Distributed Systems
Software Engineer
•
System Design
•
hard
Design Coinbase's wallet infrastructure, specifically focusing on how to securely manage hot and cold wallets.
#Security
#Cryptography
#Key Management
#Air-gapping
Software Engineer
•
System Design
•
medium
Design a system to execute a token airdrop to 10 million eligible users within a 24-hour window.
#Batch Processing
#Scalability
#Message Queues
Software Engineer
•
System Design
•
hard
Design a distributed double-entry accounting ledger for internal user balances.
#Databases
#ACID
#Distributed Systems
#Event Sourcing
Software Engineer
•
System Design
•
medium
Design a global rate-limiting service for Coinbase's public API that can handle millions of requests per second.
#Redis
#Distributed Systems
#API Gateway
Software Engineer
•
System Design
•
hard
Design a blockchain indexer that reads blocks from an Ethereum node and makes transaction histories searchable by user address.
#Data Pipelines
#ETL
#Databases
#Blockchain
Software Engineer
•
System Design
•
medium
Design a notification system that allows users to set custom price alerts (e.g., 'Email me when BTC drops below $60k').
#Stream Processing
#Notifications
#Databases
Software Engineer
•
System Design
•
hard
Design a system to monitor multiple blockchains and alert internal systems of chain reorganizations (reorgs) or orphaned blocks.
#Blockchain
#Event Sourcing
#Monitoring
Software Engineer
•
System Design
•
hard
Design a real-time fraud detection system for users purchasing crypto with credit cards.
#Machine Learning Infrastructure
#Real-time Processing
#Data Pipelines
Software Engineer
•
Technical
•
medium
Explain the fundamental differences between Proof of Work (PoW) and Proof of Stake (PoS), and discuss the engineering trade-offs when building services that interact with them.
#Blockchain
#Consensus Mechanisms
#Crypto
Software Engineer
•
Technical
•
medium
How do you handle database schema migrations with zero downtime in a high-traffic, 24/7 environment like Coinbase?
#Databases
#DevOps
#Deployment
Software Engineer
•
Technical
•
hard
Explain how you would design a database schema and transaction flow to prevent double-spending when a user initiates two simultaneous withdrawal requests.
#Databases
#Concurrency
#Transactions
#Locking
Software Engineer
•
Technical
•
medium
Given a 'trades' table with columns (trade_id, user_id, amount, price, created_at), write a SQL query to find the top 5 users by total trading volume in USD over the last 7 days.
#SQL
#Aggregations
#Data Analysis
Software Engineer
•
Technical
•
medium
In a backend system, how do you handle arithmetic operations for cryptocurrency balances to avoid floating-point precision loss?
#Data Types
#Precision
#Backend Engineering
Software Engineer
•
Technical
•
medium
Discuss the trade-offs between using a Relational Database (like PostgreSQL) versus a NoSQL Database (like DynamoDB) for storing a user's cryptocurrency transaction history.
#Databases
#Trade-offs
#Data Modeling
Software Engineer
•
Technical
•
hard
How would you secure a microservice architecture that processes and stores highly sensitive financial and PII data?
#Microservices
#Encryption
#Authentication
Software Engineer
•
Technical
•
hard
Explain how you would ensure idempotency in a distributed microservices architecture handling financial transactions.
#Distributed Systems
#Idempotency
#Microservices
Difficulty Radar
Based on recent AI-sourced data.
Meet Your Interviewers
The "Standard" Interviewer
Senior EngineerFocuses on core competencies, system constraints, and clear communication.
SimulateUnwritten Rules
Think Out Loud
Always explain your thought process before writing code or drawing architecture.