Design a Streaming Top-Ten Sales Dashboard
Last updated: August 5, 2026
Quick Overview
Design a streaming dashboard that displays the top ten sales in real-time for eBay.
eBay
August 5, 20260
0
16 solved
Design a streaming dashboard that displays the top ten sales in real-time for eBay.
This question is often asked in onsite interviews for software engineering roles to assess a candidate's ability to design scalable and efficient systems. The interviewer is evaluating the candidate's understanding of real-time data processing, user interface design, and the ability to handle large volumes of data while ensuring performance and reliability.
What the Interviewer Expects
- Clearly define the requirements for the dashboard, including data sources and user interactions.
- Outline a high-level architecture that supports real-time data streaming.
- Identify key technologies and frameworks that would be used in the implementation.
- Discuss potential trade-offs and scaling strategies for handling increased data loads.
- Provide a deep dive into specific components of the system, such as data ingestion and processing.
Key Topics to Cover
How to Approach This
- Start by clarifying functional and non-functional requirements with the interviewer.
- Estimate the scale: QPS, storage, bandwidth. This drives your design decisions.
- Draw a high-level architecture first, then deep dive into 1-2 critical components.
- Discuss trade-offs explicitly (e.g., consistency vs availability, SQL vs NoSQL).
- Address failure scenarios, monitoring, and how the system handles 10x traffic spikes.
Possible Follow-up Questions
- How would you handle data inconsistencies in the dashboard?
- What metrics would you track to ensure the dashboard is performing well?
- Can you explain how you would implement user authentication for the dashboard?
Sharpen Your Skills on Codemia
Practice similar problems with our interactive workspace, get AI feedback, and track your progress.
Practice System Design ProblemsSample Answer
Requirements
To design a streaming top-ten sales dashboard, we first need to define the requirements. The dashboard should display the top ten sales in real-time, updating dynamically as new sales occur. It will r...
High-Level Design
The high-level architecture of the dashboard can be broken down into several components:
- Data Ingestion: Use a message broker like Apache Kafka to stream sales data in real-time.
- **Process...