A short recruiter call, a 45-minute coding screen and often a hiring-manager screen, then a virtual onsite of coding, code review, system design and a project deep dive. A separate core-values round follows once those pass, then team matching, which can take weeks.
78 questions
Anthropic OA: leveled in-memory record storeCodingA timed, multi-level exercise building an in-memory store of records with fields: create and read first, then scans and filters, then timestamps with expiry, then backup and…
Last asked Oct 2026
Behavioral round on company valuesBehavioralA behavioral round anchored on the company's published values: bring experiences covering conflict, feedback, mentorship, leading work and technical trade-offs. Reported on…
Last asked Sep 2026
Task manager with user quotas and expiring assignmentsCodingBuild an in-memory TaskManager in four levels. Each level adds methods to the same class, and you move to the next level only after the current one passes. Every method takes an…
Last asked Sep 2026
Banking system with transfers, cashback and account mergesCodingBuild an in-memory banking system in four levels. Each level adds methods, and every earlier method must keep working. Every call takes a timestamp in milliseconds as its first…
Last asked Sep 2026
Project deep dive: present a project you ledBehavioralPresent a project you led in about 20 minutes: context, your role, the architecture, three hard trade-offs, metrics, cost and return, and what you would change. Then take 25…
Last asked Sep 2026
Hiring-manager round on impact and collaborationBehavioralA behavioral round on past project impact, work with non-engineering partners, mentorship, and roadmap influence. Distinct from the values-focused culture round.
Last asked Sep 2026
Text box formatterCodingImplement formatboxes(sentences: liststr) - liststr. Each sentence is a non-empty string of printable ASCII characters and spaces. Draw every sentence in its own ASCII box and…
Last asked Sep 2026
Cloud storage with user quotas and backupsCodingDesign an in-memory cloud storage service. The interview has four parts. Each part adds methods, and every earlier method must keep working. Implement a class CloudStorage. File…
Last asked Sep 2026
Highlight categorized phrases in a reviewCodingReviews on a travel site should show key phrases with their category. Write a function that marks every mapped phrase in a review. mapping is a list of (phrase, category) pairs…
Last asked Sep 2026
Design a personalized search ranking systemML designRank search results for each user's query and context so they find and book (or order) what they want, learning from clicks and conversions.
Last asked Sep 2026
Find super hosts from listing and review rulesCodingGiven host data with their listings, ratings and reviews, return the hosts who qualify as super hosts under several rules that must all hold, such as a minimum number of listings…
Last asked Sep 2026
Median house price in each cityCodingGiven a list of house sales with a city and a price, return the median price for each city. Group the prices by city in a dictionary, sort each group, and take the middle value…
Time on page from the next user eventCodingGiven a table of user events with timestamps, estimate how long each user stayed on each page as the time until that user's next event. Use LEAD() partitioned by user and ordered…
Last asked Sep 2026
Turn company policies into step-by-step support instructionsAI systemDesign a retrieval-augmented system for customer support staff: given a user's issue, it reads the company's policies and produces step-by-step instructions the agent can follow…
Last asked Sep 2026
Users with impressions on seven consecutive daysCodingFrom a table of user impressions with dates, find the users who had at least one impression on seven days in a row. Remove duplicate days per user, then use a window function (row…
Last asked Sep 2026
Parse URL query parameters with repeated and nested keysCodingA web service receives HTTP GET requests. The part of the URL after the first ? is the query string. Write a parser that turns it into a dictionary. Implement parsequery(url: str)…
Last asked Aug 2026
Smallest number from a set of digits, with a lower boundCodingPart 1. You are given a non-empty list digits of single-digit integers (each 0-9). Use every element exactly once and arrange them to form the smallest possible non-negative…
Last asked Aug 2026
Review a series of pull requestsCodingYou get two or three pull requests, each harder than the last, in Python or Java. Read each one, leave comments as you would on a real review, and point out bugs, design problems…
Last asked Aug 2026
Generic retry helper with configurable backoffCodingCalls to remote services fail now and then for reasons that go away on their own: a dropped connection, a busy server, a timeout. Write a generic retry helper that runs a…
Last asked Aug 2026
Shift grants with promotions that start next entryCodingTrack workers clocking in and out, apply promotions starting from the next office entry, and total granted bonuses across overlapping work sessions. - Level 1: addworker(id…
Last asked Aug 2026
Design a reliable job schedulerSystem designDesign a service that runs jobs at scheduled times at large scale, such as payment jobs that must run on time and exactly once in effect. Cover storing schedules, finding jobs…
Last asked Aug 2026
Fill an order from the oldest inventory batches firstCodingA warehouse keeps stock in batches received at different times. Fill an order by taking units from the oldest batches first, moving to newer batches as each one runs out. Return…
Last asked Aug 2026
Recipe manager with ingredient searchCodingBuild an in-memory recipe book. Each recipe has a name, an ordered list of ingredients and an ordered list of steps. The work comes in two parts; finish part 1 before you start…
Last asked Jul 2026
Flatten a 2D array with removeCodingImplement a class Vector2D that walks a 2D list of integers row by row, left to right, and lets the caller delete values while walking. text Vector2D(vec: listlistint) rows may be…
Last asked Jul 2026
Fill a layover with the fewest bookingsCodingYou land with a long layover and want to spend all of it on bookable local experiences. Each experience has a fixed whole-number duration in hours, and you may book the same…
Last asked Jun 2026
Design a Slack-like chat systemSystem designWorkspaces, channels, threads and direct messages with real-time delivery, unread state, search and history, for large companies.
Last asked Jun 2026
Design a hotel booking systemSystem designSearch hotels by place and dates, show availability and prices, and book rooms without double-booking, including holds and cancellations.
Last asked Jun 2026
Design a customer support ticketing systemSystem designCustomers open tickets by email, chat or web; agents get them routed by skill and priority, with SLAs, escalation and full history.
Last asked Jun 2026
Maximum candies from boxes with keysCodingSome boxes are open and some are locked. Each box holds candies, keys to other boxes, and more boxes. You start with a few boxes. You may open a box once you have it and it is…
Last asked May 2026
Group booking across properties in one neighborhoodCodingA rental company houses groups in its properties. A group may be split across several properties, but all of them must be in the neighborhood the group asked for. Implement…
Last asked May 2026
Connect Four game engine with win detectionCodingImplement a two-player game of Connect Four. The board has rows rows and cols columns (default 6 x 7). Players "A" and "B" alternate turns, and "A" moves first. On a turn, a…
Last asked May 2026
Design a distributed key-value storeSystem designStore and serve billions of keys with low latency, partitioned across machines and replicated to survive failures, with tunable consistency.
Last asked May 2026
Every cheapest way to order from a combo menuCodingA food ordering app wants to show a customer every cheapest way to buy the dishes they want. The menu is a list of entries. Each entry is (id, price, items): - id: a unique…
Last asked May 2026
Deduplicate account sign-ups by email and phoneCodingA sign-up service processes account registrations one at a time, in the order they arrive. You get three lists of the same length n: names, emails and phones. Index i of each list…
Last asked Apr 2026
Refund allocation across prioritized payment methodsCodingA customer's order was paid with one or more payments, and some of them may already have been partly refunded. Implement a function that splits a new refund across those payments…
Semantic search with user embeddingsML designDesign search that uses embeddings of users together with embeddings of listings, so results match both the request and the person searching. Cover how the user and item…
Design an A/B testing platformSystem designDesign a platform that lets teams run A/B tests: define an experiment, assign users to variants consistently, log exposures and events, and compute results with confidence…
Last asked Apr 2026
Flatten a nested list iteratorCodingA list holds integers and other lists, nested to any depth. Write an iterator with next() and hasnext() that returns the integers in order. Do it lazily with a stack of positions…
Last asked Apr 2026
Sliding puzzle on a 2 by 3 boardCodingA 2 by 3 board holds tiles 1 to 5 and one empty cell. A move slides a tile next to the empty cell into it. Return the fewest moves to reach the solved board, or -1 if it cannot be…
Last asked Apr 2026
Score a tile board by connected terrain regionsCodingA tile-laying board game ends when every player has filled a rectangular board. You must compute a player's final score. You are given board, a 2D list of strings with R rows and…
Last asked Mar 2026
Best-scoring ski run through a trail mapCodingA ski area has mapped its one-way trails between named checkpoints. The trail map has no cycles: once you ski down a trail you can never get back to where you were. Every trail…
Last asked Mar 2026
Rotting oranges: time for an infection to cover a gridCodingA grid has empty cells, healthy cells and infected cells. Every minute each infected cell infects its healthy neighbors up, down, left and right. Return the minutes until no…
Last asked Mar 2026
Split stays across two listingsCodingA vacation rental site wants to offer split stays: when no single home is free for a guest's whole trip, the guest stays in one home first and then moves to another. There are n…
Last asked Feb 2026
Pour water onto a terrainCodingAn array gives the height of each column of a terrain. 1. Print the terrain. 2. Drop a given number of water units at a column, one at a time. Each unit moves left if it can…
Last asked Feb 2026
Smallest number from an increase and decrease patternCodingGiven a pattern of I (increase) and D (decrease) characters of length n, build the smallest number of n + 1 distinct digits from 1 to 9 whose consecutive digits follow the…
Last asked Feb 2026
Intersection of two linked lists that may have cyclesCodingGiven the heads of two singly linked lists, each of which may or may not contain a cycle, decide whether they share a node and return the first shared node. Find where each list's…
Design photo and listing quality modelsML designDesign models that score the quality of listing photos and of listings overall, so better listings can be surfaced and hosts can be told what to improve. Cover defining quality…
Last asked Jan 2026
Design Airbnb's notification systemSystem designSend booking confirmations, reminders and host messages over push, email and SMS, respecting user preferences and time zones, without duplicates.
Last asked Dec 2025
Design a user activity query systemSystem designDesign a system that stores user activity events at scale and lets services query a user's activity, for example everything a user did in a time range, filtered by type. Cover the…
Last asked Dec 2025
In-memory SQL table with filtering and multi-key sortingCodingBuild a small in-memory SQL-like database. You do not need to parse SQL text. Queries arrive as structured arguments. Implement SQLManager: - createtable(name: str, columns:…
Last asked Nov 2025
Design a wallet with holds and payoutsOO designDesign and code a wallet for a rental platform. Users keep a balance; money can be put on hold (for example when a booking is made), then captured or released, and hosts receive…
Possibly retired
Is a sequence a subsequence of a tree's in-order traversal?CodingGiven a binary tree and a sequence of numbers, decide whether the sequence appears, in order, within the tree's in-order traversal (not necessarily next to each other). Walk the…
Possibly retired
Recruiter screen: motivation, background and logisticsBehavioralA short first call with a recruiter: a few standard behavioral questions about your background and why you want the role, then timeline, location and compensation expectations…
Possibly retired
Weighted job schedulingCodingEach job has a start time, an end time and a profit. Choose jobs that do not overlap to make the most profit. Sort jobs by end time; for each job, binary search for the last job…
Possibly retired
Design a listing watchlist with availability alertsSystem designUsers can add rental listings to a watchlist and get notified when something they care about changes, such as dates opening up or a price drop. Design it: the watchlist data…
Possibly retired
Sum tree with node values computed from childrenCodingA tree's leaves hold numbers, and every other node's value is the sum of its children. Return the value of any node. Then support changes: turn a node into a leaf with a value, or…
Possibly retired
Build a booking widget with live pricingCodingBuild a small reservation widget for a listing, front end and a simple back end. Pick check-in and check-out dates and the number of adults and children; show the total price…
Possibly retired
Design a customer lifetime value prediction systemML designDesign a machine learning system that estimates each user's long-term value on the platform. Cover defining the target and horizon, labels when long-term value is not yet known…
Possibly retired
Design a listing price suggestion systemML designSuggest a nightly price for each listing and date that hosts will accept and that books, adapting to seasonality, events and local demand.
Possibly retired
Palindrome pairsCodingGiven a list of distinct words, return every pair of indices (i, j) where wordsi + wordsj is a palindrome. Checking all pairs is too slow; put the reversed words in a hash map (or…
Possibly retired
Shortest path to collect all keysCodingA grid has walls, a start cell, keys (lowercase letters) and locks (the matching uppercase letters). A lock can only be passed once you hold its key. Return the fewest steps to…
Possibly retired
Design a waitlist for in-demand listingsSystem designWhen a popular listing is not available for the dates a guest wants, the guest can join a waitlist. Design the API and system behind it: joining and leaving, detecting when the…
Possibly retired
Collatz sequence steps with memoized range maximumCodingStarting from a positive integer n, repeat the following until n equals 1: - If n is even, set n = n / 2. - If n is odd, set n = 3n + 1. Each replacement counts as one step. (It…
Crack a 4-digit code from exact-match countsCodingA server holds a secret 4-character code. Each character is a digit from '0' to '9'. Digits may repeat, and the code may start with zeros. You can only learn about the code…
Design a distributed job schedulerSystem designDesign a service that runs millions of scheduled and on-demand jobs (cron-like and one-off) reliably across a fleet of workers.
Design a duplicate listing detection systemML designFind hosts who relist the same property under a new listing (to shed bad reviews or evade bans), using text, photos, location and host signals.
Design an ad click aggregation systemSystem designCount ad clicks per ad and per time window from billions of events a day, accurately enough to bill advertisers, with results available within minutes.
Design an online chess gameSystem designMatch players of similar rating, play live games with clocks, handle disconnects and reconnects, and keep game history and ratings.
Design Google CalendarSystem designCreate events, invite people, handle recurring events and time zones, show free/busy, and send reminders, for hundreds of millions of users.
Justify articles to a fixed line widthCodingYour platform shows articles in a fixed-width text column. Write a function that lays out a list of articles and returns every output line in order, as one flat list. Rules - Each…
Maximum profit from unit-time tasks with deadlinesCodingYou are given a list of tasks. Each task is a list of three strings: name, deadline, profit. - Every task takes exactly 1 second, and only one task can run at a time. - Time…
Median of a large unsorted array in linear timeCodingYou are given a very large, unsorted list of integers nums. Return its median. - If len(nums) is odd, the median is the middle value once the list is sorted. - If len(nums) is…
Minimum starting vertices to reach a cyclic directed graphCodingYou are given a directed graph with n vertices labeled 0 to n - 1 and a list edges, where edgesi = u, v is a directed edge from u to v. The graph may contain cycles, self-loops…