Loading...
Loading...
Design a donation service integrated into the DoorDash app for a three-day charity campaign. Users should be able to browse a curated set of charities, choose one, enter a custom donation amount, and pay using DoorDash’s existing third-party payment integration.
Design a food-review system built on top of completed delivery orders. After receiving an order, a user can review individual food items with a 1–5 star rating, text, and optional photos or videos.
Design a system that backs up files from a source location to a destination location. The destination should mirror the source directory structure, support full and incremental backups, resume after crashes, and verify data integrity after copying. The key design ideas are a durable manifest as the source of truth and atomic stage-then-commit writes, such as .tmp + rename for filesystems or multipart upload completion for object stores.
Design an in-memory delivery payout system for a platform that works with tens of thousands of drivers. Each driver has an hourly rate, and every completed delivery records a start time and end time. The payout for one delivery is: driverHourlyRate × (endTime - startTime) / 3600
Design a shared playlist application in which multiple users can add, remove, and reorder songs. When one collaborator changes the playlist, the update should become visible to everyone else viewing or editing that playlist.
Design a compute scheduler that allocates CPU, GPU, memory, and related resources to user-submitted machine learning jobs across multiple heterogeneous clusters. Users submit jobs with requirements such as container image, command, CPU count, GPU count and type, memory, expected runtime, priority, retry policy, and placement constraints. Each cluster may have a different hardware inventory, current utilization, network topology, accelerator generation, and failure domain.
Design a metrics and monitoring platform that ingests production telemetry from many services, stores it efficiently, supports flexible time-range queries, and streams query results to an external visualization layer such as Grafana.
Design an AI-powered system that helps recruiters generate personalized outreach messages for prospective candidates. A recruiter selects an open role, browses a list of candidates, chooses one candidate, and requests a draft message. The system should use the candidate’s profile and recent professional activity, the job description, the recruiter’s previous outreach style, and historical response signals to produce a relevant draft InMail.
Design a distributed service that schedules tasks for future execution. Clients should be able to create a task with a target execution time, cancel it before execution, inspect its status, and query tasks scheduled within a time range.
Design a machine learning system that classifies games on a large gaming platform into a fixed but evolving genre taxonomy. Example genres include obby, simulator, roleplay, tycoon, shooter, horror, racing, sports, social hangout, puzzle, and adventure.
Design the frontend architecture for an image feed or photo album that lets users browse images continuously. Depending on the clarified product behavior, the experience may be a vertically scrolling feed, a left/right swipe carousel, or a hybrid photo viewer with paginated loading.
Design an in-app notification system for user action items. The application should notify users about events such as expired passwords, friend activity, required address updates, security warnings, or other tasks that may need attention.
Design a matchmaking service for a large multiplayer gaming platform. Players select a game and mode, enter a waiting queue, and should be grouped into balanced matches with compatible players. Once a group is formed, the system must reserve a game-server session and return connection information to every player.
Design a delayed payment system that allows a user to schedule a virtual-currency transfer, such as Robux, from one account to another at a specified future time. The user should be able to cancel the transfer before execution and inspect its status throughout the payment lifecycle.
Design a like / unlike system for marketplace items, games, videos, posts, or creator experiences. Users should be able to like an item, unlike it, check whether they already liked it, list items they have liked, and view the total number of likes on an item. The system should work at platform scale, where hot items may receive massive bursts of likes and count reads.
Design a web portal for machine learning engineers and data scientists to manage the end-to-end ML lifecycle. The portal should let users record experiments, compare metrics, register model versions, deploy models to environments, promote models to production, monitor production health, and trigger alerts or rollback when a model degrades.
Design a system that enforces ad frequency caps, such as: A user should see campaign X at most N times within a given time window. The system is used by an ad-serving platform. Before serving an ad, the ad server needs to quickly check whether the user is still eligible to see a candidate campaign. After an impression is actually shown, the system records the event and updates counters.
Design the demand-side data model for a Netflix Ads platform. The system should allow advertisers to create accounts, define campaigns, configure ad groups or line items, upload creatives, set targeting rules, manage budgets, and track serving and measurement events.