hardDesignCase StudySeniorStaffLead
Design the frontend for a data-heavy operational dashboard with live updates.
7 min readUpdated 2026-08-15
Answer
Short answer
Stream a server-rendered shell, virtualise the dense views and draw high-density charts to canvas, keep server cache separate from UI and URL state, coalesce socket messages into one commit per frame, give every widget its own empty, error and stale states, and enforce a byte budget per pull request.
Was this answer helpful?
Likely follow-ups
- Traffic is 200 messages a second across 25 widgets. Where exactly does the first thing break, and what do you measure to confirm it?
- Would you choose Server-Sent Events or a WebSocket here, and what does the answer depend on?
- A user filters the table to 40 rows and shares the URL with a colleague. What did you have to design for that to work?
- The chart library alone is a third of your budget. What are your options besides removing the charts?
Related questions
- Design a URL shortener.hardAlso on caching6 min
- Design the asset delivery and deploy strategy for a large single-page app. What happens to a user who has the tab open when you ship?hardAlso on caching6 min
- A user's access to a document set is revoked. What has to happen across your RAG stack?hardAlso on caching6 min
- Ten million users need a green dot beside their name. What does that cost, and what happens when a phone loses signal without disconnecting?hardAlso on websockets5 min