Performance: Quickly identify free slot as soon as vehicle exits lot. Low latency < 2ms for server to respond
Availability : Ensure uptime so that service is available at all times
Security: Authentication.
1M total users
100K active daily users
10K concurrent users
REST API
Database tables :
User table: [id, name]
Location: [venue, capacity, type]
Reservation: [ id, userid, venue, type, payment status, payment id, date,time range]
Payment : [payment id, charges,date, time]
User logins via API Gateway to servers which are load balanced.
Explain how the request flows from end to end in your high level design. Also you could draw a sequence diagram using the diagramming tool to enhance your explanation...
Dig deeper into 2-3 components and explain in detail how they work. For example, how well does each component scale? Any relevant algorithm or data structure you like to use for a component? Also you could draw a diagram using the diagramming tool to enhance your design...
Explain any trade offs you have made and why you made certain tech choices...
Try to discuss as many failure scenarios/bottlenecks as possible.
What are some future improvements you would make? How would you mitigate the failure scenario(s) you described above?