This question evaluates a candidate's competency in large-scale system design, including distributed architecture, real-time data processing, geo-spatial indexing and low-latency matching for ride-hailing, plus scalable ingestion, time-series storage, rule evaluation, and reliable notification pipelines for price-tracking, within the System Design domain. It is commonly asked to assess architectural trade-offs around scalability, consistency, availability, fault tolerance and operational concerns, testing practical application of architectural patterns alongside conceptual understanding of data modeling and real-time constraints.
During a system design interview, you are asked two related but separate questions:
Design the backend system for a global, mobile-first ride-hailing platform that connects riders and drivers. The system should support:
Outline the high-level architecture, key services and data models, and how you would handle scalability, consistency, and fault tolerance.
Call out how you would:
Design a backend system that allows users to track prices of products (for example, items from e-commerce sites) and receive alerts when prices meet certain conditions. The system should support:
Describe the overall architecture, major components, data storage choices, and how you would handle:
Login required