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
•
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
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
•
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
•
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
•
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
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 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
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
•
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
•
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
Write a script to detect cycles in a directed graph representing cryptocurrency wallet transfers to flag potential money laundering.
#Python
#Graphs
#DFS
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
•
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
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 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
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
•
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
Given a list of trading intervals [start_time, end_time], merge all overlapping intervals.
#Sorting
#Arrays
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
•
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
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.