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
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
•
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
•
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
•
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
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 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
•
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
•
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
Implement an LRU (Least Recently Used) Cache to store the most recently queried cryptocurrency prices.
#Linked Lists
#Hash Maps
#Caching
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 a text editor core engine that supports typing text, deleting text, and undo/redo functionality.
#Stacks
#Design Patterns
#Command Pattern
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
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
•
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
•
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
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.