Devscape
NewInterview coming up? Practise on the real thing

Devscape — system design interview practice

Stop reading system design. Start designing it.

Take a real interview question, draw the architecture yourself, and have it graded on the spot — so you find your weak spots here, not in the interview.

No signup required. Open a challenge and start designing in ten seconds.

27 challenges215 architecture checksInstant feedback

CLIENTWeb clientSERVICEAPI gatewayQUEUEJob queueCACHEFeed cacheSERVICEFan-out workerDATABASEPostgres
27system design challenges
215architecture checks behind them
12kinds of system
0signups, cards or limits
attempts, graded instantly

Practice

Know what you’re weak at before the interviewer does

27 system design challenges, each one carrying the checks an interviewer actually pushes on — 215 of them in all. Draw your answer, submit it, and get a score, the misses, and the follow-up question each miss would have earned you. Then fix it and go again.

No signup required. 8 beginner · 8 intermediate · 11 advanced · graded in your browser, signed out, as many times as you like.

Design Twittergraded in your browser · 9:12 on the clockADVANCED018345163727982out of 10011 of 14 checksIs there a cache on the read path?API gateway → Feed cacheDoes the client reach the store directly?no direct link — goodHow many writes a second is 500M a day?12,000 against 5,800 — 2.1× too highFan-out on write, or on read?31 words (needs 40)WHAT AN INTERVIEWER WOULD ASK“Your timeline read hits Postgres every time.What happens at 300,000 reads a second?”…and the answer they were listening for, underneath it.

How Devscape works

  1. 01Pick a challengeA real interview problem, with the real numbers attached — 500M tweets a day, 10:1 reads to writes, 100GB a user.
  2. 02Design the systemDraw the services, databases, queues and caches, and the connections between them. Links find their own way around.
  3. 03Submit itYour board is read as a graph and run against the challenge’s checks — in your browser, in about a second.
  4. 04Get your scoreWhat passed, what didn’t, the follow-up question each miss would have earned you, and how the model answer differs.

27 challenges, 215 checks, 12 kinds of system

Design Pastebin7Design an image upload service6Design a game leaderboard6Design an uptime monitor6Design a URL shortener9Design a photo feed9Design a rate limiter6Design YouTube9Design WhatsApp8Design Uber9Design Dropbox8Design a web crawler7Design Ticketmaster8Design a notification service7
Design a view counter7Design a comment system7Design search autocomplete8Design a distributed cache7Design a message queue7Design Airbnb9Design Yelp8Design Twitter10Design Google Docs9Design a payment system10Design an ad click aggregator9Design an LLM inference API9Design a RAG question-answering service10

It reads the board, not a checkbox

Your design is a typed graph, so the marking is graph questions: is there a cache on the read path, does the client reach the store without passing a service, is the write path async.

Every miss is a follow-up question

Nothing comes back as “incorrect”. It comes back as the question an interviewer would have put to you, with the answer they were listening for underneath it.

The arithmetic is marked too

Capacity estimates are graded by order of magnitude — within 3× either way, because being out by 40× is the mistake worth catching and nobody cares about 15%.

Held against a model answer

Every question ships with the design an interviewer had in mind, compared to yours box by box and link by link. Differing from it is allowed; not knowing you differ isn’t.

The difference

Not another diagramming tool

Excalidraw, Lucidchart, a whiteboard, a napkin — all of them let you draw a system. None of them tell you whether the system works.

AspectDiagramming toolsDevscape
What you doDraw a diagramDesign a system against a brief
When you finishNothing happensIt is marked, in seconds
Who says it is rightYou doA rubric that reads your graph
What a mistake looks likeYou never find outThe question an interviewer would ask
The numbersNot part of itCapacity estimates graded too
What you leave withA pictureA score, and a list of what to fix

You can still just draw — the editor below is the whole of one, and it is free. It is simply not the reason to be here.

Who this is for

Backend engineers

You have built services. You have not had to defend a whole system out loud, against numbers, in forty-five minutes.

Senior engineers

You know the answer. This tells you whether the design you actually drew contains it — which is the thing being marked.

Candidates levelling up

SDE II, staff, and every rung where the round stops being about code and starts being about trade-offs and capacity.

People coming back to it

Years out from the last interview. Start on a pastebin, work up to fan-out at Twitter scale, at your own pace.

Twelve seconds

The board you’ll answer on

Share/b/7f3ka91cSERVICEAPI gatewayDATABASEPostgresCACHEFeed cache
  1. 1Drop a box
  2. 2Drag a link off it
  3. 3Move it — the link follows
  4. 4Share the lot

The palette

Types you invent yourself

6 to start with, and none of them sacred. Name your own, give it a colour, drag it where it belongs — and the palette belongs to that board alone, not to the app.

TYPES · DRAG TO REORDERServiceDatabaseQueueCacheClientLoad balancer+ New typeNEW TYPEe.g. Load balancerLoad balancerAdd

The links

Lines that route themselves

You say what connects to what. Where the line goes, and what it steps around on the way, is not your problem.

SERVICEAPI gatewayCACHERedisDATABASEPostgres

Boards

One for every system in your head

Name them, switch between them, rename or delete them — most recently touched at the top. Each keeps its own diagram and its own palette, so none of them has to agree with the others.

BOARDSBilling×Checkout flow×Feed pipeline×URL shortener×NEW BOARDBoard nameBillingSimple web appCreate

Sharing & export

Send the diagram, not a screenshot

A link anyone can open, read only, switched off whenever you like. Or a file — and the file is drawn from the board, not scraped off the screen.

SHARED · READ ONLY/b/7f3ka91cPNG2× raster, framedSVGvector, real textJSONthe board itself

Everything else in the box

It saves itself

Half a second after you stop.

Start as a guest

Sign in later; your boards come with you.

Undo means undo

Ctrl+Z for a box, a toast for a board.

Bring one in

Paste the JSON, or pick the file.

Save a copy

Fork any board someone shares with you.

Say when it breaks

One click away, and you see the reply.

Or start from one that already works

  • The Simple web app templateSimple web app4 boxes · 3 links
  • The URL shortener templateURL shortener7 boxes · 7 links
  • The Instagram feed templateInstagram feed8 boxes · 8 links
  • Blank boardnothing but the grid

Shortcuts

Ten things, and you know the whole editor

Drag
Move a box. Links follow.
Double-click
Rename a box — or label a link.
Drag a dot
Connect two boxes.
Click a line
Select that link.
Del
Remove the selection.
CtrlZ
Put the last thing back.
F
Frame the whole design.
Ctrlscroll
Zoom around the pointer.
Two fingers
Scroll the board.
?
This list, on the board.

Boards you can get back

Deleted is not destroyed

A board is stamped, not dropped.

Sharing is a decision

Private until you say so. Revocable after.

Read-only means read-only

They get the picture, never the editor.

Your work leaves with you

JSON out, JSON back in.

Before you start

How do I practise system design interviews?

By designing systems, not by reading about them. Pick a challenge, read the brief and the numbers it comes with, draw the architecture on the board — services, databases, queues, caches and the links between them — do the capacity arithmetic, and submit. You get a score and a list of what an interviewer would have pushed on. The loop is worth repeating: attempt, read the misses, redraw, submit again. Passive reading is what leaves people stuck, because an interview tests whether you can produce a design under time, not whether you have seen one.

What system design questions are included?

All 27 of them are listed on the practice page and linked from the homepage. They run from a first pastebin, a URL shortener and a rate limiter up to Twitter’s timeline fan-out, WhatsApp, Uber, YouTube, Google Docs, a payment system and an LLM inference API — sorted beginner, intermediate and advanced, with the checks each one is marked against shown on the card.

How does Devscape grade your architecture?

Your board is a typed graph, so most of what an interviewer pushes on is a question about it: is there a cache on the read path, does the client reach the store without passing through a service, is the write path async, is that capacity estimate the right order of magnitude. Those checks are run over your design in the browser the moment you submit. The same design always scores the same, and anything that cannot be checked is left out of the score rather than guessed at.

Can I practise without creating an account?

Yes — no account is needed and none is asked for. Open a challenge, draw the design, submit it and read the feedback, all of it signed out and with no limit on attempts. Signing in exists so your boards follow you to another browser, not to unlock anything.

Is Devscape free?

Yes. There is nothing to buy, no per-attempt cost and no trial. The grading runs on your machine, which is most of the reason it can be.

What do I get back when I submit?

A score out of 100, every check that passed with the evidence from your board, every check that failed written as the question an interviewer would have asked, the answer they were listening for, and a comparison against the model answer — which boxes and links it has that yours does not.

Why not just draw the design in Excalidraw or Lucidchart?

You can, and nothing there will tell you the design is wrong. A drawing tool takes whatever you put on the canvas; it has no idea what the boxes mean, so it cannot notice that every timeline read goes straight to the database or that your write estimate is out by 40×. Here the board is a typed graph and the question comes with a rubric, so finishing the drawing is the point at which the work starts rather than the point at which it stops.

How is this different from reading system design articles?

An article tells you the answer. Here you draw one first and then find out what you left out, which is the part an interview actually tests. The brief comes with real numbers, the capacity questions are marked, and the follow-ups arrive after you have committed to a design rather than before.

Contact

Say it here

A question about the practice questions, something about your account, or anything the FAQ above didn’t answer. It goes to a person, not a queue — there is nobody else here.

No account needed
Leave an address and the reply goes there, and nowhere else.
Signed in?
Skip the details — the reply lands on your messages page.
Found a bug instead?
Report it — that form brings the board you had open with it.

Your next interview is a system design round.

Find out what you’d have missed while it still costs you nothing.

No signup required. The account is for carrying your boards between browsers, and nothing else is behind it.