Product Context
SimpleTire wants to personalize product recommendations across its marketplace surfaces, including the homepage, product detail pages, cart, and post-search modules. Users shop for tires and wheels with strong fitment constraints, seasonal intent, and a mix of high-intent repeat buyers and first-time visitors.
Scale
| Signal | Value |
|---|
| DAU | 1.8M |
| Peak recommendation QPS | 7,500 |
| Active catalog | 2.5M SKUs |
| New / updated SKUs per day | 40K |
| Avg recommendation slots per request | 12 |
| End-to-end p99 latency budget | 180ms |
Task
Design an end-to-end recommendation system for SimpleTire that serves personalized product recommendations in real time.
- Clarify the primary product goals and define success metrics for recommendation quality and business impact.
- Propose a multi-stage architecture for candidate generation, ranking, and re-ranking across SimpleTire surfaces.
- Define the training and serving setup, including which features are batch vs near-real-time and how you avoid training-serving skew.
- Choose models for each stage and explain why they fit the scale, latency, and marketplace constraints.
- Describe how you would evaluate the system offline and online, including experimentation and guardrail metrics.
- Identify key failure modes such as cold start, feature drift, stale inventory/pricing, and fitment errors, and explain detection and mitigation.
Constraints
- Recommendations must respect vehicle fitment, inventory availability, seller restrictions, and pricing freshness.
- Product metadata quality is uneven across sellers; some SKUs have sparse history.
- User identity is partial: a meaningful share of traffic is logged out or cookie-only.
- Cost matters: the serving stack should primarily run on CPU, with GPU use justified only if it materially improves ranking quality.
- Freshness matters during weather events and seasonal spikes, when demand can shift within hours.