Common Problems
Design a Price Tracking Service
Try This Problem Yourself
Practice with guided hints and real-time feedback
Understanding the Problem
Functional Requirements
- Users should be able to view price history for Amazon products (via website or Chrome extension)
- Users should be able to subscribe to price drop notifications with thresholds (via website or Chrome extension)
- Search and discover products on the platform
- Price comparison across multiple retailers
- Product reviews and ratings integration
Non-Functional Requirements
- The system should prioritize availability over consistency (eventual consistency acceptable)
- The system should handle 500 million Amazon products at scale
- The system should provide price history queries with < 500ms latency
- The system should deliver price drop notifications within 1 hour of price change
- Strong consistency for price data
- Real-time price updates (sub-minute)
The Set Up
Planning the Approach
Defining the Core Entities
The API
Data Flow
High-Level Design
1) Users should be able to view price history for Amazon products (via website or Chrome extension)
2) Users should be able to subscribe to price drop notifications with thresholds (via website or Chrome extension)
Potential Deep Dives
1) How do we efficiently discover and track 500 million Amazon products?
2) How do we handle potentially malicious price updates from Chrome extension users?
3) How do we efficiently process price changes and notify subscribed users?
4) How do we serve fast price history queries for chart generation?
Final Design
What is Expected at Each Level?
Mid-level
Senior
Staff+
Currently up to 25% off
Hello Interview Premium
On This Page
Understanding the Problem
Functional Requirements
Non-Functional Requirements
The Set Up
Planning the Approach
Defining the Core Entities
The API
Data Flow
High-Level Design
1) Users should be able to view price history for Amazon products (via website or Chrome extension)
2) Users should be able to subscribe to price drop notifications with thresholds (via website or Chrome extension)
Potential Deep Dives
1) How do we efficiently discover and track 500 million Amazon products?
2) How do we handle potentially malicious price updates from Chrome extension users?
3) How do we efficiently process price changes and notify subscribed users?
4) How do we serve fast price history queries for chart generation?
Final Design
What is Expected at Each Level?
Mid-level
Senior
Staff+

Schedule a mock interview
Meet with a FAANG senior+ engineer or manager and learn exactly what it takes to get the job.
