Mobile Design Rounds
Practice45 minutesFree

Practice a round: a 45-minute timer for mobile system design

Pick a prompt. Start the clock. Practise out loud, one step at a time, and see how long each step lasts.

How it works

  1. Pick a case or press Pick a case for me. Pick your level.
  2. Start the timer. The page shows the step you are in and a short reminder for it.
  3. Write notes in the box if you want. They stay in this tab only.
  4. At the end, tick what you covered. You get a short summary and links to read more.

The five steps and their minutes are the same as the five-step method. The time split is my suggestion, not a rule from any company.

Your data stays here. Nothing is sent to a server. Nothing is saved. If you close the tab, your notes are gone.

Without JavaScript

The timer needs JavaScript. If it is off, or if you prefer a plain clock, use this table. Start your own clock, then move on when the minutes for a step are used. The table is also a good page to print.

StepDo thisAsk yourself
1. Scope and constraints
4 minutes
Ask five questions and name what is out of scope. Say what the phone does to the design.What is in scope, and what is out? What does the phone do to this design?
2. Data and contracts
10 minutes
Say where the data lives and which copy the app trusts. Name the IDs and the calls to the server.Which copy does the app trust? What ID makes a retry safe?
3. Client structure
8 minutes
Say who owns the work: the screen, the ViewModel, or a service that lives longer.Who owns the work, and does it live longer than the screen?
4. Make the hard part work
18 minutes
Walk the hard path slowly. Say the first idea, why it fails, and what you do instead.What is my first idea? Why does it fail? What do I do instead?
5. Break it, ship it, roll it back
5 minutes
Say what can fail and what the user sees. Say how you turn the change off and how you roll it back.What fails, and what does the user see? How do I turn it off and roll it back?

Total: 45 minutes. Make the hard part work gets the biggest block on purpose.

The twelve prompts

Each prompt is the one-line prompt from the first step of the case page. Open a case to see how the 45 minutes can go.

CasePrompt
Design a chat appDesign the chat feature for our app. People message one to one and in small groups.
Design a news feedDesign the home feed for a social app.
Design a pagination libraryDesign a pagination library for our mobile apps.
Design an image loading libraryDesign an image loading library for our apps. Other teams will use it to show pictures in lists.
Design a video streaming appDesign a video app for phones. People browse, watch, download for a flight, and resume.
Design photo backup and file syncDesign photo backup for our app. Photos and videos from the camera roll should be safe in the cloud.
Design a travel plans appDesign an app where friends plan a trip together, even on a plane with no signal.
Design a hotel or ride booking appDesign a hotel booking app.
Design a stock ticker appDesign the screen in a trading app that shows live prices.
Design a public transport appDesign an app that shows when my bus leaves, even with no signal.
Design a push notification SDKDesign a push notification SDK for our mobile apps.
Design an analytics SDKDesign an analytics SDK for mobile apps.