Posts

Design Uber

Image
 Design Uber Another possibly interesting problem here. Let's start diving right into this. What is uber. Uber is basically a ride requesting platform where a user can request for a ride and a driver can accept or deny the requested ride. In a nutshell that's all there is when it comes to Uber. So let's now talk about the functional requirements and the non-functional requirements in uber. Functional Requirements:  It's pretty obvious that when we talk about functional requirements :  1. User should be able to request for a ride, put the source and destination, get the ETA and the price estimates. 2. User should be able to send the request for the ride after looking at the estimates. 3. Driver should be able to accept the ride after looking at the request from the user. Non-functional requirements:  1. When it comes to ride matching, the system needs to be consistent. 2. All other requirements we can have a highly available system. Core Entities:  1. Ride 2. Cus...

Design TicketMaster

Image
 Design TicketMaster I think this is quite an interesting usecase to design ticket master. Before we go into understanding the system design of ticket master, let's think about what exactly ticket master is. Ticket master is an app where you can book tickets, view the seat map for an event, and also reserve the tickets. You can search for certain events. For example, you search, "Taylor Swift" and you can get results related to the taylor swift events. There are other things, like you can sort these events according to the timestamp, etc. But on a higher level, these are the things that you can do.  Functional Requirements 1. Search for an event 2. View and event and the seat map 3. Book a ticket within the event Non-functional Requirements:  1. For search you want high availability 2. For booking you want high consistency. i.e When a user wants to view the seats, he/she should get only the seats that are available. If 2 users are viewing the ticket map, the ticket map sh...

System design topics

Question 1: Design a Distributed Metrics Logging and Aggregation System Company(s) asked: Google, Facebook, Amazon, eBay, Datadog, Atlassian ----- Question 2: Design a Distributed Stream Processing System like Kafka Company(s) asked: Amazon, Microsoft, Wise, Confluent ----- Question 3: Design a Key-Value Store Company(s) asked: Apple, Google, Canva, Avalara, Rubrik, OpenDoor ----- Question 4: Identify the K Most Shared Articles in Various Time Windows (24 hours, 1 hour, 5 minutes) Company(s) asked: LinkedIn, Facebook, Twitter ----- Question 5: Design an API Rate Limiter Company(s) asked: Amazon, Atlassian, Uber, Patreon, Microsoft, Stripe, Headway, Reputation dot com, Pinterest ----- Question 6: System to Collect Performance Metrics from Thousands of Servers Company(s) asked: Google, Datadog, Amazon, eBay, LinkedIn ----- Question 7: Design Google Calendar Company(s) asked: Google, LinkedIn ----- Question 8: Design a Distributed Queue like RabbitMQ Company(s) asked: Amazon, Apple, Insta...