Design Product Page View Tracking
UberSoftware Engineer · OnsiteLast updated
This question evaluates a candidate's ability to design scalable, reliable event-collection and analytics systems, covering client- and server-side instrumentation, event schemas/APIs, counting total versus unique views, handling high write volumes for popular products, storage choices for raw events and aggregated counters, and operational concerns such as bot filtering, deduplication, privacy, fraud prevention, freshness, reliability, and monitoring. It is commonly asked in the System Design domain to assess architectural thinking and operational trade-offs, testing both conceptual understanding of distributed systems and practical application of scalable data pipelines, storage, and observability.
Design a view-tracking system for a large e-commerce product detail page.
When a shopper opens a product page on web or mobile, the system should record the view. The product page may display view-related information such as total views, recent views, or seller-facing analytics.
Please cover:
- Client-side and server-side event collection.
- APIs or event schemas for recording page views.
- How to count total views and unique views.
- How to handle very popular products with high write volume.
- Storage choices for raw events and aggregated counters.
- Bot filtering, duplicate handling, privacy, and fraud prevention.
- Freshness requirements, reliability, and monitoring.
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.