A recruiter call, then technical screens in coding (and system design for many roles), then a virtual final loop of four to six interviews: practical coding, system design, a project presentation and behavioral rounds, followed by team matching.
116 questions
Design a sandboxed cloud IDESystem designGive every user a browser-based editor with a terminal and a private container that runs their code, starts in seconds, isolates untrusted code, and saves their work.
Per-user chat event counts in a sliding windowCodingA chat service runs for months without restarting. It sends you a stream of message events. Each event has a userid, a chatid and an integer timestamp in seconds. You must answer…
Last asked Oct 2026
Design a real-time trivia battle royale with live spectatorsSystem designDesign a trivia battle royale. A room holds dozens to a hundred or more players. Questions go out round by round; after each round, players who answered wrong and the slowest…
Last asked Oct 2026
Persistent key-value store with binary snapshotsCodingImplement an in-memory key-value store whose whole state can be saved to, and restored from, a storage medium that holds a single binary blob. You are given: Implement
Last asked Oct 2026
Design a real-time multiplayer typing raceSystem designDesign an online typing race. Each race has 2 to 8 players. When the race starts, every player gets the same generated passage and types it; the first to finish the whole passage…
Microorganisms eating neighbours: the largest survivorCodingMicroorganisms stand in a row. Each one has a family (a letter) and a size (a positive integer). A microorganism can eat the neighbour directly to its left or right when that…
Memory allocator with malloc, free and coalescingCodingManage one arena of size bytes, addressed by offset from 0. You hand out and take back ranges of it, like malloc and free in C. Nothing is stored in the arena itself; track it in…
Last asked Oct 2026
Extensible chat app with command botsCodingImplement an in-memory chat app with one shared channel that people and bots post to. Users send text. Some messages are slash commands (/name arg ...), and bots can respond to…
Last asked Oct 2026
Design a payment systemSystem designAccept card payments for merchants: authorize, capture, settle with card networks, and reconcile, never charging twice or losing money.
Find the planted bugs in a small Transformer training scriptCodingA small Transformer, its training script and some tests are provided, with a few bugs hidden in them. Find and fix them so the loss goes down and the outputs are correct, and…
Last asked Oct 2026
Fault-tolerant work queue with leases and retriesCodingImplement an in-memory work queue that keeps working when workers crash. Workers take a task, process it, and report success or failure. A worker that dies silently must not lose…
Last asked Oct 2026
Design a metrics monitoring systemSystem designCollect metrics from every host and service, store them as time series, power dashboards over months of data, and alert when thresholds are crossed.
Last asked Oct 2026
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…
Last asked Sep 2026
GPU credit ledger with out-of-order eventsCodingBuild an in-memory ledger for GPU credits. Credit arrives as grants: each one has a unique id, an amount, and a time window in which it can be spent. Grants may overlap in time…
Last asked Sep 2026
Hiring-manager round: why OpenAI, AGI and safety dilemmasBehavioralThe hiring manager asks why you want this company and what you think about AGI and AI safety, then poses a hypothetical safety dilemma. Expect stories about a failure, a conflict…
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
Threshold infection spread on a gridCodingA lab tracks a disease across a rectangular field of cells. You are given an m x n grid where 0 is a healthy cell and 1 is an infected cell, and an integer threshold. Each day…
Last asked Sep 2026
Design a video generation service on a scarce GPU poolAI systemUsers submit text-to-video requests that each need minutes of GPU time, and the GPU pool is limited and changes size. Design the request flow, scheduling and workers, how users…
Last asked Sep 2026
Design a distributed power grid control systemSystem designMonitor and control generators, substations and loads across a power grid, reacting to failures and demand changes in seconds, safely, even when parts of the network are cut off.
Last asked Sep 2026
Three-card showdown between two playersCodingDesign a two-player card game that uses a standard 52-card deck. Each card has a rank and a suit. From lowest to highest, the ranks are 2 3 4 5 6 7 8 9 10 J Q K A. The suits are C…
Last asked Sep 2026
Mini spreadsheet with formulas and cycle detectionCodingBuild a mini spreadsheet with cell get and set, formula evaluation over dependencies, cached values with eager updates, and cycle detection. Covers the bank's spreadsheet variants…
Last asked Sep 2026
Find noisy annotators and retrain a classifier without themCodingA classifier is trained on labels from several human annotators, and some of them label carelessly. Find which annotators are unreliable, drop their labels, retrain, and show…
Last asked Sep 2026
Vectorized nearest-neighbour classifier as a linear layerCodingImplement a 1-nearest-neighbour classifier in NumPy with no Python loops. Then rewrite it as the forward pass of a small network, a matrix product plus a bias followed by an…
Last asked Sep 2026
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.
Last asked Sep 2026
IPv4 range iterator with reverse and CIDR supportCodingAn IPv4 address such as "172.16.4.9" is four octets, each 0 to 255. Taken together, the octets form one unsigned 32-bit number. Build iterators that walk IPv4 addresses lazily…
Last asked Sep 2026
Social follow graph with point-in-time snapshotsCodingBuild an in-memory follow graph that can answer questions about its own past. Follows are directed: a following b says nothing about b following a. Implement a SocialNetwork…
Last asked Sep 2026
Matrix product scan with autograd and a hand-written backwardCodingGiven a sequence of square matrices, return every prefix product. A first version that updates a buffer in place breaks autograd: say why, and replace it with one that allocates…
Last asked Sep 2026
Toy language type inference with generics and tuplesCodingA small typed language has three kinds of type: - Primitives: int, float, char. - Generics: placeholders named T followed by a number (T1, T2, ...). A generic can stand for any…
Last asked Sep 2026
Crash-safe on-disk key-value storeCodingBuild a filesystem-backed hash table that survives crashes and restores every entry from the latest state on restart. Reported on 1point3acres' Baseten bank; reconstructed in our…
Last asked Sep 2026
Design an AI chatbot appAI systemBuild a chatbot app on top of a hosted LLM API: conversations, streamed answers, history, and per-user usage limits.
Last asked Sep 2026
Design an image sharing service that stores each file onceSystem designDesign a service where users upload, view, download and delete images, and identical images are stored only once, keyed by a content hash. Explain how metadata and blobs stay…
Last asked Sep 2026
Guess the number with one-call delayed feedbackCodingA hidden integer secret lies in 1, n, inclusive. You can't read it. The only way to learn about it is a comparison service with one method: The service answers one call late. Each…
Last asked Sep 2026
ML design for retrieval: embeddings, hybrid search and rankingML designDesign the machine learning behind the retrieval stage of a question-answering system. Discuss how you train the embedding model, how retrieval combines dense and keyword search…
Memory allocator: leftmost free block and free by ownerCodingA memory has n units, numbered 0 to n - 1, all free at the start. Process a list of operations in order, each producing one recorded value: 1. Allocate size units for an owner:…
Minimal reverse-mode autograd engineCodingWith PyTorch available, write the core of an automatic differentiation engine yourself. Build a small Tensor wrapper whose operations record how each result was computed, and a…
Last asked Sep 2026
Design a digital game store like SteamSystem designDesign a digital game distribution platform like Steam. Players use a desktop client to browse a store, buy games, see what they own in a library, and download, install and update…
Last asked Sep 2026
Lexicographically smallest topological orderCodingGiven tasks and the dependencies between them, return an order that runs every task after the tasks it depends on. When several tasks are ready at once, always pick the smallest…
Last asked Sep 2026
Count and map a cluster tree with message passingCodingA cluster of n machines is wired as a rooted tree (any number of children per node). Each machine knows only three things: its own id (a string such as "4"), its parent's id ("-1"…
Last asked Sep 2026
Rectangle board with remove-at-cell, batch remove and undoCodingBuild a RectangleBoard that holds axis-aligned rectangles on a grid of width columns and height rows. Cells use zero-indexed (x, y), where x is the column and y is the row. A…
Last asked Aug 2026
Typed task lock for mutually exclusive job typesCodingSome jobs on a shared accelerator pool must not run alongside jobs of a different kind. Each job runs on its own thread and has one of two types: "gen" or "score". Any number of…
Last asked Aug 2026
Turn-based monster team battle simulatorCodingWrite a deterministic simulator for a turn-based battle between two ordered teams of monsters, and return the battle log and the result. python class Monster: name: str unique…
Last asked Aug 2026
Dependency-aware concurrent tool schedulerCodingBuild a scheduler that runs a set of tool calls concurrently while respecting their dependencies: a call starts only after every call it depends on has finished, and independent…
Last asked Aug 2026
Design a distributed crossword solverSystem designGiven a large crossword grid with about a hundred slots and a dictionary of around a million words, design a service that fills the grid. One machine cannot search the space fast…
Last asked Aug 2026
Design a streaming AI feature for a large audienceAI systemA consumer product wants to add an AI feature whose answers stream to millions of users in real time. Design the path from the client to the model: how responses stream, how…
Last asked Aug 2026
Snapshot set with frozen insertion-order iteratorsCodingImplement SnapshotSet, a set of integers whose iterators are frozen at the moment they are created. - add(value) - bool: insert value. Return False and do nothing if it is already…
How do you use AI in your work?BehavioralDescribe how AI tools fit into your engineering work: where they help, where they fail, how you verify their output, and how they have changed the way you or your team work.
Last asked Aug 2026
Sharded matrix multiply: forward, backward and planted bugsCodingSplit a matrix multiplication across several devices and explain how the pieces combine. Write the forward pass and the gradient computation for that layout in NumPy or PyTorch…
Last asked Jul 2026
Debug a Python job schedulerCodingYou own a small in-process job scheduler. It runs on a fake clock so it can be tested. Users report that: - a nightly report scheduled for exactly the end of a window sometimes…
Indexed sequence with checkpointsCodingBuild a growable array that can take cheap snapshots. The spec arrives in three parts; finish and test each part before the next. Part 1. append(value) - index, pop() - value…
Last asked Jul 2026
Entropy from logits, stable and then streamingCodingCompute the entropy of softmax(logits) for a vector of logits without overflow or underflow. Then the logits come in one by one: keep a fixed amount of state so the exact entropy…
Last asked Jul 2026
Data labeling scheduler with prefix-balanced modelsCodingA data labeling platform pairs tasks, AI models and human annotators. IDs are 1-indexed strings: tasks "t1"…"t{totalTask}", models "m1"…"m{totalModel}", humans…
Last asked Jul 2026
Cross-entropy loss with masking and label smoothing in NumPyCodingImplement cross-entropy loss over a batch of logits in NumPy, stable for large values. Add a mask so padded positions do not count, then add label smoothing. Be ready to explain…
Last asked Jul 2026
Max-score grid descent with limited two-row jumpsCodingYou are given an N x M grid of integers board. Rows and columns are numbered from 0, and a cell's value is the score you collect when you visit it. Values may be negative. A path…
Last asked Jul 2026
Build a chat screen in an existing iOS codebaseCodingYou get an existing mobile app codebase and build a chat interface inside it: a list of messages and a field to send new ones, wired into the app's existing code. The round is…
Last asked Jul 2026
Count connected friend groupsCodingGiven people and the friendships between them, count the friend groups: two people are in the same group when they are friends, directly or through a chain of friends. Solve it…
Last asked Jul 2026
Shard rebalancing with a per-key replica limitCodingOur key-value store spreads keys across shards. Each shard is given as a string "<id:<start:<end" and owns every integer key in the inclusive range start, end. Shards may overlap…
Last asked Jun 2026
Resumable iterators that save and restore their positionCodingDefine an iterator interface that can export its state and be resumed from it later. Implement it for a flat list, then for nested multi-dimensional lists, then across several…
Last asked Jun 2026
A project you decided not to shipBehavioralTell me about a project you decided not to ship. A good answer explains what the project was, what told you it should stop, how you made and communicated the call, what happened…
Last asked Jun 2026
Design a CI/CD systemSystem designOn every commit, build and test the code on a fleet of workers, then roll it out to production safely, with logs, retries and rollbacks.
Last asked Jun 2026
Restart strategy that cuts a solver's expected run timeCodingA model solves math problems, and the time a run needs to succeed follows a known, long-tailed distribution. You may stop a run and restart it at any time. Find a restart policy…
Last asked May 2026
Mine new information from a huge unlabeled image corpusML designYou have a very large corpus of unlabeled images. Design a system that surfaces examples unlike anything already in the training data, and that finds the images containing a given…
Last asked May 2026
Design a distributed rate limiterSystem designDesign a rate limiter that enforces a token-bucket limit per client across a fleet of servers. Cover where the limiter sits, where the bucket state lives (a shared store, local…
Last asked May 2026
Design InstagramSystem designUsers post photos and videos, follow each other and scroll a feed; design upload, storage, feed generation and serving media worldwide.
Last asked May 2026
Design the API layer of an Android app with MVVMSystem designDesign how an Android app talks to its backend API using the MVVM pattern: the layers from the network client up through repositories and view models to the screen, and what each…
Last asked May 2026
Resolve package versions from dependency constraintsCodingPackages have versions, and each version may require other packages within a version range. Parse the dependency specs, answer queries about which versions satisfy a constraint…
Last asked May 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 May 2026
Build a rating card in Jetpack ComposeCodingBuild a rating card component in Jetpack Compose: a card where the user picks a rating, which the UI shows and reports back to its caller. Keep its state handling clean and the…
Last asked May 2026
Design per-user model usage quotas for a mobile appSystem designDesign how a mobile app enforces per-user quotas on model usage: how usage is counted, where the limit is enforced, what the app shows the user as they approach and reach it, and…
Last asked May 2026
Build a chat input that renders a streamed AI replyCodingBuild a minimal ChatGPT-like page: a text box and a submit button, and below them the model's reply, rendered as it streams back from the API rather than all at once. Handle the…
Last asked Apr 2026
Design an AI prompt playgroundAI systemDesign a web workspace where developers write prompts, run them against several models and settings, compare outputs side by side, and save and share versions.
Last asked Apr 2026
Design an agent harness and its evaluation systemAI systemDesign the harness that runs an AI agent (the loop that calls the model, runs its tools and manages its context) together with the system that evaluates it. Cover how the agent…
Last asked Apr 2026
Defend your research direction and an experiment designML designDiscuss your research area: what the state of the art is, the strengths and weaknesses of the main approaches, your own hands-on experience, and where you think the field is…
Last asked Apr 2026
Design a real-time sensor intelligence systemML designDesign a system that takes in sensor data in real time and runs machine learning on it to produce useful signals as the data arrives. Cover ingestion, the models and how they are…
Deduplicate files by size then content hashCodingWalk a directory tree and group files with identical content. Compare file sizes first so large files are hashed only when sizes collide, then hash the rest. Be ready to discuss…
Last asked Apr 2026
Design a RAG system over company docsAI systemEmployees should be able to ask questions about internal documents (Drive, Confluence, Slack, GitHub) and get grounded answers with citations.
Last asked Mar 2026
Design Google DocsSystem designMany people edit the same document at once and see each other's changes and cursors live, with offline edits and full version history.
Last asked Mar 2026
Text editor with undo and redoCodingBuild a small text editor supporting insert, delete, undo and redo with correct cursor behavior after each operation. Reported on 1point3acres' Notion bank; reconstructed in our…
Last asked Mar 2026
Earliest release that supports a featureCodingYou ship a library whose releases are listed in versions, sorted from oldest to newest. Each entry is a "MAJOR.MINOR.PATCH" string; parts are non-negative integers and may be…
Last asked Mar 2026
Read and refactor a large PyTorch training fileCodingYou get a few hundred lines of existing PyTorch code that trains a classifier. Answer questions about its time and memory cost, then make a series of changes to it in parts…
Last asked Mar 2026
Simulate particles from a point source hitting a screenCodingA point source sits some distance in front of an infinitely tall vertical screen and fires particles toward it. Each particle leaves at a random angle drawn uniformly between -π/2…
Last asked Feb 2026
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.
Last asked Jan 2026
Design TinyURLSystem designTurn long URLs into short links and redirect visitors fast, at billions of redirects a day, with optional custom aliases and expiry.
Last asked Jan 2026
Resolve a cd command to an absolute pathCodingWrite a function that takes the current directory and the argument to cd, and returns the directory pwd would print afterwards. Handle ., .., repeated and trailing slashes, and…
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 Dec 2025
Improve a chatbot's answers to questions it doesn't knowAI systemUsers ask a ChatGPT-style assistant questions it does not know the answer to. Design how the system notices these questions and gives better answers to them: what it does instead…
Last asked Dec 2025
Design a webhook delivery systemSystem designDeliver event notifications to customers' HTTP endpoints at least once, with retries and backoff, signing, ordering where it matters, and isolation from slow endpoints.
Design a nearby points-of-interest serviceSystem designGiven a user's location, return the closest restaurants, shops and other places of interest within a radius, fast, for a read-heavy global audience.
Possibly retired
C++ performance round with provided threading codeCodingA 60-minute coding round for performance-minded roles, held in C++. The focus is on core C++ performance, with a smaller part on concurrency; the threading components are…
Possibly retired
Design an ad marketplace between publishers and advertisersSystem designPublishers' pages request ads and advertisers bid to fill them. Design the marketplace: bidding and matching within a tight latency budget, serving the winning ad, and tracking…
Possibly retired
Merge intervalsCodingGiven a list of intervals (for example time ranges), merge every group of overlapping intervals and return the result in sorted order.
Possibly retired
Debug a model whose accuracy drops after deploymentML designA model that looked fine offline loses accuracy suddenly once it is in production. Walk through how you would debug the whole pipeline step by step: where you look first, how you…
Possibly retired
Design a feed recommendation systemML designRank the items in each user's home feed so they engage more, choosing from millions of candidates within a couple of hundred milliseconds.
Possibly retired
Alert routing service with silences and escalationCodingBuild the routing core of an alerting service. The monitoring system calls fire(labels, now) for an active alert on every evaluation cycle (every 30 seconds or so) and…
Build your story bankBehavioralPrepare 8 to 15 real stories, each tagged with the signals it shows (ownership, conflict, failure, ambiguity, influence, impact, mentorship, quality), so that any behavioral…
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 distributed web crawlerSystem designCrawl billions of web pages politely and repeatedly, deduplicating URLs and content, to feed a search index or a training-data pipeline.
Design a GPU scheduling platformAI systemShare a large GPU cluster among research and production teams: queue training and inference jobs, enforce quotas and priorities, place jobs on topology-aware hardware, and preempt…
Design a rate limiterSystem designDesign a service that limits how many requests each API client can make. It sits in front of every API endpoint at high traffic.
Design an LLM inference serving platformAI systemDesign the system that serves several large models to many customers with low latency and high GPU utilization.
Design ChatGPTAI systemDesign a consumer chat product backed by a large language model: conversations, streamed replies, history across devices, at 100M weekly users.
Design YouTubeSystem designUpload videos, transcode them into many formats, and stream them worldwide with adaptive bitrate, along with views, likes and comments.
Evaluate a new LLM before launchML designYou have a new model checkpoint. Design the evaluation process that decides whether it ships.
Shuffle, deal and sort a four-player card handCodingYou are building the core of a four-player card game. Model a standard 52-card deck and implement the deal. Types to define - Suit: CLUBS, DIAMONDS, HEARTS, SPADES, in this order…
Question types
OpenAI interview process and questions · Land the Lab