52 practice questions for Coinbase QA Engineer interviews
Coinbase QA engineer interviews test automation frameworks, test strategy, CI integration, performance testing, and debugging complex multi-service systems.
Question You are designing an NFT generation engine. You are given a set of Traits, where each trait has a name and a list of possible...
Input: List Output: Array
codingMediumVerified Question#2
2. Blockchain Mining
Category: Dynamic programming coding problem
Question You are building a block construction module for a blockchain node. The goal is to select a subset of pending transactions to include in...
Input: Graph (nodes and edges) Output: Computed result
codingMediumVerified Question#3
3. Crypto Trading System Stream
Category: String coding problem
Question Design a crypto trading system that manages a stream of orders. The system should support various operations like placing, pausing,...
Input: Array of strings Output: Computed result
codingHardVerified Question#4
4. Design Iterators
Category: Array coding problem
Question For this problem, you will be designing a series of different iterator classes. This problem is split into multiple related parts that...
Input: Array of integers Output: Computed result
codingMediumVerified Question#5
5. Food Delivery System
Category: Trie-based coding problem
Question For this problem, you will be designing a food delivery system. This problem is split into three related parts, evolving from basic data...
Input: List Output: Computed result
codingHardVerified Question#6
6. Transaction System
Category: Tree coding problemFor this problem, you will be designing a system to handle financial transactions and account balances. This problem is split into three related...Input: List Output: Integer
codingHardVerified Question#7
7. OA[CodeSignal] Cloud File Storage System
Category: Graph coding problem
Question Your task is to implement a simple in-memory cloud storage system that maps objects (files) to their metadata (name, size, etc.). You...
Input: Graph (nodes and edges) Output: Array
codingHardVerified Question#8
8. OA[CodeSignal] Design Banking System
Category: Graph coding problem
Question Design a banking system that supports account management, transactions, and various financial operations.
Input: Graph (nodes and edges) Output: Computed result
codingHardVerified Question#9
9. Capital Gains Tax Calculator
Category: String coding problemYou are given a chronologically sorted list of stock transactions. Each transaction is a list of strings in the format `[<timestamp>, <type>,...Input: Array of strings Output: Computed result
codingMediumVerified Question#10
10. Service Log Aggregator
Category: Trie-based coding problemA distributed system emits log entries from multiple services and worker threads. Each log entry is a colon-separated string in the format...Input: Array Output: Computed result
codingHardVerified Question#11
11. OA [CodeSignal] Knowledge Base System
Category: Graph coding problemDesign and implement a personal knowledge base called KnowledgeBaseSystem that stores articles with CRUD operations. The system operates entirely...Input: Graph (nodes and edges) Output: Computed result
codingMediumVerified Question#12
12. OA [CodeSignal] Workspace Tracker
Category: Interval-based coding problemBuild a system to track desk workers at a shared office space. The system records when each worker enters and leaves and computes how long they have...Input: String Output: Array
codingHardVerified Question#13
13. Transaction Query Engine
Category: String coding problemDesign a system to filter and paginate a list of transaction records. Each record is a list of strings in the format `[timestamp, id, userId,...Input: Array of strings Output: Computed result
codingMediumVerified Question#14
14. Exchange Rate Finder
Category: String coding problemYou are given a set of currency exchange relationships. Each relationship specifies a direct exchange rate between two currencies. Rates are...Input: List Output: Computed result
codingHardVerified Question#15
15. Order Matching Engine
Category: String coding problemYou are managing a cryptocurrency order book. The book holds buy and sell orders placed by traders. - A buy order indicates the maximum price a...Input: String Output: Computed result
codingHardVerified Question#16
16. Account Transfer System
Category: String coding problemYou are given a list of fund transfer instructions and a set of accounts with initial balances. Each transfer moves a fixed percentage of the...Input: List Output: Computed result
codingHardVerified Question#17
17. Restaurant Delivery Network
Category: String coding problemYou are building a food discovery platform. Given a user's location, a list of restaurants with their coordinates, and a menu of items with prices,...Input: List Output: Computed result
codingHardgraph#1
1. [OA] Graph Traversal — Ensure API response validation service for Coinbase
In the context of the rapidly changing environments of cryptocurrencies, validating API responses is essential. This requires implementing a utility that verifies response hierarchies and correctness in tests. Problem statement: You need to create a function that performs a depth-first traversal on a response structure that is represented as a graph to validate if a given response satisfies a specific hierarchy. This function should return all valid nodes that meet the criteria within the API response hierarchy.
Example 1: Input: {'node': {'valid': true, 'level': 1}, 'children': [{'valid': true, 'level': 2}]}, criteria = (node) => node['valid'] Output: [{'valid': true, 'level': 1}, {'valid': true, 'level': 2}] Explanation: Both nodes are valid according to the criteria. Example 2: Input: {'node': {'valid': false}, 'children': [{'valid': false}, {'valid': true}]}, criteria = (node) => node['valid'] Output: [{'valid': true}] Explanation: Only the last node meets the criteria.Constraints:
1 <= len(node) <= 1000
Each node has structure {'valid': bool, 'level': int}
codingHardsliding window#2
2. [OA] Sliding Window — Optimize the transaction testing framework for Coinbase
Coinbase handles thousands of transactions per second, so testing the transaction handling process efficiently is crucial. You need to develop a method to validate a stream of transactions for valid timestamps within a certain window. Problem statement: Implement a function that verifies whether there are any duplicate timestamps in a stream of transactions that occur within a specified windowSize (in seconds). Your method should return true if a duplicate exists within that window, and false otherwise.