UBER System design | OLA system design | uber architecture | amazon interview question

Поделиться
HTML-код
  • Опубликовано: 10 авг 2018
  • Systems design: What is the system design of the Uber App?
    Systems design: What is the architecture for the OLA?
    Systems design: What is the software design of the LYFT App?
    Arch diagram: imgur.com/a/c1Nkuvf
    Answer to all of the above questions is here, though I have explained much about Uber's system design, but for interviews you can adopt the same answer to all of the cab aggregation services question.
    Donate/Patreon: / techdummies
    Good reads:
    eng.uber.com/tech-stack-part-...
    eng.uber.com/tech-stack-part-...
    github.com/uber
    eng.uber.com/schemaless-part-...
    github.com/uber/RIBs
    eng.uber.com/mezzanine-migrat...
    github.com/confluentinc/kafka...
    highscalability.com/blog/2015/...
    www.bgr.in/news/this-is-how-go...

Комментарии • 565

  • @vaibhavbhardwaj2244
    @vaibhavbhardwaj2244 3 года назад +73

    Key takeaways :
    1. Web sockets must be used for such application as the communication is real time and lot of to-fro communication happens between client-server for which web sockets work the best
    2. the location update happens asynchronously using a queuing system like KAFKA , as this is a write heavy operation .
    3. Each location would map to a grid id on a 2D matrix and the location service would use the nearby cells on grid to fetch the drivers in vicinity.
    4. The APP servers are stored in a Ring (based on consistent hashing) and each APP server caters to different set of cells of the Grid. Each node knows about each other through config publishing mechanism and any call to any server would be redirected to the correct node

  • @divya-dj3pl
    @divya-dj3pl Год назад +26

    This question was asked for me 15000 per month job as a fresher🙂

    • @mohit_hada
      @mohit_hada Год назад

      In a startup right?

    • @pankajchaudhary5925
      @pankajchaudhary5925 5 месяцев назад +1

      If you would have answered then you could have owned the startup at one point!

  • @vm1662
    @vm1662 2 года назад +12

    Binge watching the system design videos on this channel. This is pure gold and free on youtube for everyone to watch! Thanks a lot Narendra. You clearly put in a lot of effort making these videos.

  • @mdalaminmahamud3775
    @mdalaminmahamud3775 4 года назад +26

    I really appreciate the amount of effort you have put for this system design talk. Thanks for sharing such valuable information in a short time span.

  • @NilanshuSharma1
    @NilanshuSharma1 5 лет назад +3

    Appreciate you taking stuff from real engineering blogs, instead of discussing a hypothetical design. Thanks for the effort!

  • @antonyspiano2403
    @antonyspiano2403 4 года назад +7

    I saw you saying sorry, Boss you are a genius and selfless person. Never say sorry again. I get reminded of mistakes and never said a sorry. Great work!! and Thanks for making me love my job .

  • @eruabid9190
    @eruabid9190 4 года назад +50

    Great content, laid out in a concise manner, appreciate the effort you put into making these systems design video series, keep it up.
    Cheers.

  • @javadoctor101
    @javadoctor101 5 лет назад +3

    Currently watching every single system design video created by you..super useful and fun to watch! Keep'em coming..

  • @dhyanimation
    @dhyanimation 4 года назад +5

    This is gold, I'm looking forward to how tech enables ground ops for mainstream products.

  • @vivekchoudhary8745
    @vivekchoudhary8745 4 года назад +15

    this is gold, and the efforts and your persistence is beyond praiseworthy

  • @pursuitofcat
    @pursuitofcat 5 лет назад +2

    Great explanation man. The extent to which you went on to explain stuff.

  • @gavinchan1010
    @gavinchan1010 5 лет назад +1

    Thank you so much for such an in-depth, but understandable explanation!

  • @saritakhatun2731
    @saritakhatun2731 4 года назад

    I think U are 1st who providing confidential knowledge ....openly. Thanks I appreciate U.

  • @NitinPatel-ld5qd
    @NitinPatel-ld5qd 4 года назад +4

    Great content and lot of work Naren! Sincerely appreciate it. One thing I would like to suggest that we should call out how region servers are formed at the beginning and how the division and distribution of spherical earth is done across region servers shown in DISCO as part of the ring.

  • @jayeshbaviskar
    @jayeshbaviskar 5 лет назад

    I have gone through many Design Explanation Video but I must say that This is the Best Uber Explanation Video I ever have seen.

  • @dextermorgan1287
    @dextermorgan1287 3 года назад +4

    Few suggestions :
    1. Websocket is being shown as an API Gateway which is incorrect.
    2. Websocket comes with its own complications like failure on firewalls.
    3. In system design, we don't focus much on the implementation logic. Good that you explained concept of cell but that's not a very important piece. Thats more of a low level implementation.
    4. Support for NodeJs is partially correct. Java or C# can scale better than NodeJs in a multi threaded environment. Though Nodejs is fast to develop and deploy. But when threading comes there are better alternatives.
    5. Discussions should be more focussed around DB and type of DB choices with reasons.

  • @tapasyayadav5148
    @tapasyayadav5148 5 лет назад +6

    Thank you so much for such a super useful video, good explaination.keep up the good work.

  • @himanshugupta174
    @himanshugupta174 5 лет назад +12

    Just amazing, I never saw this kind of clear explanation about the system design. Keep it up

  • @subhamhere
    @subhamhere 4 года назад +1

    Cleared a interview with your system design approach , keep making videos

  • @wycliffekogei1888
    @wycliffekogei1888 4 года назад +1

    One of the most important videos i have watched. It's simple and informative. I'll definitely check out the other videos.

  • @a1988ditya
    @a1988ditya 5 лет назад +7

    Great job man ... Appreciate the efforts

  • @akshaybengani
    @akshaybengani 4 года назад +1

    Thanks bro, for the information, I was actually thinking how can I imporve my mapping algorithm, your video is worth watching keep making such great content.

  • @UntamedRogueMavrick
    @UntamedRogueMavrick 4 года назад +4

    Hi Narendra, Thanks a ton. I could understand the system design better and could get the job offer from the knowledge I got from this series. Thank you not only because of the help you did by posting all the videos on system design but also for helping me by answering my queries personally on the LinkedIn. I kept on browsing the youtube to find out some quality content, but here is the home of understanding almost all types of designs questions.

  • @dixonng8822
    @dixonng8822 5 лет назад +1

    Good stuff, I was working on a prototype before but now it means there is more to it

  • @merylgabrielletubio5410
    @merylgabrielletubio5410 4 года назад

    I'm using Uber for my Data collection Map assignment. You're video is very helpful! Keep up the good work.

  • @yoganandaiyadurai9474
    @yoganandaiyadurai9474 4 года назад +1

    Very well explained and the clarity is so good. Thanks very much.

  • @debrajray1585
    @debrajray1585 5 лет назад

    Thanks a lot for this video. Everything is explained well in detail and the video is very easy to follow. I watched it casually and gained so much knowledge :)

  • @babumon5351
    @babumon5351 5 лет назад +24

    Thanks a lot..This is so complicated..wow..

  • @DawonH
    @DawonH 4 года назад

    It's just been a while since I opened the channel. Thanks to the good video, I learn a lot. Thank you. I will always support you.

  • @abisheksethuraman5910
    @abisheksethuraman5910 5 лет назад +8

    This is so good! Insane amount of details. Thanks a ton for this.

  • @vibhavgupta7562
    @vibhavgupta7562 3 года назад

    Hi Narain, you put in great effort in explaining the system. Your videos are amazing to learn architectures.

  • @nagu890000
    @nagu890000 3 года назад

    Great content. I loved the clear explanation. This is going to be one of my favorite channels.

  • @krishnan30990
    @krishnan30990 5 лет назад +11

    Hey man ! Very useful and nicely presented. I've started loving all your videos and have literally binge watched 'em all. In this video, I was also expecting you to cover up how Uber matches the pool rides .. basically a map route matching algorithm.. if you could brief on that, it would be very useful ! Thank you and wishing you huge success ahead !

  • @mz7577
    @mz7577 3 года назад

    This video was just amazing bro . Got to learn about the depth of this huge complex system with ease. Thanks a lot.

  • @Theeugeneedward
    @Theeugeneedward 4 года назад

    Narendra, hats off to you! Your architecture presentations are world class. Your presentation and organization of material is excellent. Thanks very much for your great service!

  • @zorbamossad4510
    @zorbamossad4510 4 года назад

    Respect dude ... You perfectly explained the Complex architecture. You mentioned right about the Data Backup smartly placed during operation failure in main Data Center. Kudos for your effort. Wish to see more from you :)

  • @maninderbawa
    @maninderbawa 5 лет назад +1

    Really appreciate. Very knowledgeable video. Thanks for it. Keep doing such good work

  • @sanjaysrivastava1100
    @sanjaysrivastava1100 4 года назад

    Huge .. this was huge , incredible and simple at the same time. Keep going !!👍👍

  • @SanjayKumar-un7xf
    @SanjayKumar-un7xf 4 года назад

    Really amazing, this system design is really great to handle Taxi Booking app
    Thanks for share a knowledge!

  • @PsychologyinTamil
    @PsychologyinTamil 5 лет назад +46

    Amazing work Mr Naren.

    • @arulanandhan6685
      @arulanandhan6685 3 года назад

      Hi Jithendra Sir, How would you know this guy? I'm a big follower of you and Naren.

  • @razaarashid
    @razaarashid 4 года назад

    Complete architecture is very well explained. Good work buddy!

  • @nirajkaushal
    @nirajkaushal 5 лет назад +2

    Thank you so much for the useful explanation.

  • @srikanta80
    @srikanta80 5 лет назад

    Thanks for a wonderful explanation on the system design.

  • @splendidsite
    @splendidsite 4 года назад

    Always had an interest about this system how it works. You explained it very simple way. Great presentation.

  • @exploreHeavenOnEarth
    @exploreHeavenOnEarth 5 лет назад +1

    Excellent explanation of all microservices.Superb job

  • @akashrajsingh4811
    @akashrajsingh4811 4 года назад

    Thanks a lot!! The way you put details into context is comendable

  • @cheezburgerification
    @cheezburgerification 2 года назад

    Nicely presented. Precise, articulate, and well structured.

  • @madhurimadhu1004
    @madhurimadhu1004 5 лет назад

    Wow what an explanation I'm searching for this kind of information from 4 days luckily I got it thank you so much

  • @arunmanglick
    @arunmanglick 4 года назад

    This is great .. thanks a ton for sharing this so wonderfully and detailed. Highly appreciated .. Thank you so much.

  • @VishalKurup
    @VishalKurup 4 года назад

    Great video. Thanks for including links to your references. They are fascinating reads.

  • @jkuhede
    @jkuhede 3 года назад

    Saw this video in 2018 and it looked so tough , coming back here with some knowledge it makes it look somewhat understandable like 60% I can grasp just by watching this video so please you younger lads and ladies don't get disheartened if you don't get it on the first try .

  • @ZzwhiskeybkszZ
    @ZzwhiskeybkszZ 5 лет назад +1

    We need more of this. Awesome content bro (y)

  • @amt546
    @amt546 2 года назад

    Thank you for the clear and detailed description. Great effort 👏🏻

  • @MadanNeelapu
    @MadanNeelapu 5 лет назад

    Great work man. Very nice explanation. It definitely takes a lot of effort to put it together. Thanks for sharing.

  • @csaravanakumar9614
    @csaravanakumar9614 5 лет назад

    Beautifully done with explaination...as network security guy It was so clear to me

  • @bchewy
    @bchewy 5 лет назад

    Wow... amazing video and great effort in explaining all the concepts of a ride sharing system. Really gave me a new insight! 👍🏻
    Thanks for sharing!! 😁

  • @angiesartarchive
    @angiesartarchive 5 лет назад

    Detailed explanation! Awesome. Also LP t-shirt!

  • @gururajaraghavendrarao3362
    @gururajaraghavendrarao3362 5 лет назад +1

    Very good and please continue the way how explain. Awesome

  • @riteshthakur9064
    @riteshthakur9064 3 года назад

    subscribing to your channel to help you grow bro @techDummies . Unlike other tutorial videos, its clearly visible that you have done lot of work/effort to really learn the design yourself and teach your viewers.Cheers to you

  • @smanihwr
    @smanihwr 5 лет назад +1

    Thanks for the video. Excellent content!!

  • @uchepowers
    @uchepowers 5 лет назад +1

    Thanks so much for this video, it is really valuable.

  • @DataVids
    @DataVids 3 года назад

    Fantastic , so many great concepts and very well organized presentation. I look forward to watching your other videos.

  • @anandchiluka7611
    @anandchiluka7611 2 года назад

    Dude, this video is awesome. Thank you very much for sharing !

  • @NitishSarin
    @NitishSarin 5 лет назад +4

    Damn, you are just so awesome. You will definitely definitely earn more and more subscribers, just like how Gaurav Sen did. You guys are what every developer on youtube needs. Thanks for the initiative! :)

  • @ruhinapatel6530
    @ruhinapatel6530 4 года назад +1

    U made it look so simple..Thanks a lot..You've got a subscriber

  • @aryan1875
    @aryan1875 5 лет назад

    Thanks brother. Excellent presentation. U r gracing us with it knowledge

  • @MinhHTRAN-qs4wn
    @MinhHTRAN-qs4wn 4 года назад +1

    Very helpful video, thank for sharing. Let's continue with another system design architecture ^^

  • @adityasarin16
    @adityasarin16 4 года назад

    Awesome explanation .. thanks a ton for sharing this. Explanation is so wonderfully done and so detailed... Highly appreciate the content you are publishing. You got another Subscriber :)

  • @TusharMudgal
    @TusharMudgal 5 лет назад +8

    Hi Narendra, awesome explanation. Highly motivated in learning system design.
    Though, I have a question, Can you please make a video on how to efficiently make a search service that searches on billions of records.

  • @TheRaviManikandan
    @TheRaviManikandan 2 года назад

    Narendra, thanks for your insights on system design. It was one of the key sources that I referred and it really helped to get an SDM role with Amazon. Thanks a TON

  • @namrathas5804
    @namrathas5804 Год назад +1

    Thanks Narendra, this vlog was very helpful and thanks for your time and effort.

  • @GabrielOduori
    @GabrielOduori 5 лет назад +2

    Great explanation. Was just wondering if there is any relationship between the S2 library and uber hex spatial indexing when dispatching.

  • @adisahay
    @adisahay 5 лет назад +1

    Good job. Thank you for taking the pain to explain so much in a clear language.

  • @k.manideep2543
    @k.manideep2543 5 лет назад +1

    Mouthful of information...Thanks for sharing the knowledge...it helped me a lot...Keep sharing more videos like this.

  • @vjmathew6962
    @vjmathew6962 5 лет назад +1

    Thank you very much brother...was searching these kind of explantnations.. Subscribed.

  • @AnkitaNallana
    @AnkitaNallana 3 года назад +1

    Great video - you have explained some key concepts of the whole architecture wonderfully! Thank you so much for this!
    I have one question though, I couldn't fully understand how the Backup Data Center enables the whole trip with the State Digest stored in the driver/rider's cell phone - what exactly happens in the backup center ?

  • @gouravkhatter2520
    @gouravkhatter2520 3 года назад

    Great work, I enjoyed this, keep covering more designs.

  • @cloud4java
    @cloud4java 4 года назад

    Great explanation for a very complex system. Congratulations!

  • @swapnila202
    @swapnila202 5 лет назад +1

    Awesome explanation... Thank You 😊

  • @saifidrees1500
    @saifidrees1500 5 лет назад

    Superb...!
    Thanks you so much for the video.

  • @manjushamanjusha
    @manjushamanjusha 5 лет назад

    Really useful for interviewing. Thank you :) :) :)

  • @Simoni1203
    @Simoni1203 5 лет назад +1

    Great overview. Thanks for the sharing.

  • @amiraljion6555
    @amiraljion6555 5 лет назад

    Thank you for the great explanation!

  • @sergeys6034
    @sergeys6034 4 года назад

    Thanks for breaking it down and taking time to make a video!

  • @twyla0071
    @twyla0071 5 лет назад +3

    Keep posting valuable content on system design. Awesome
    This approach to system design interviews says that we have a preconception about how things should be. I have a suggestion, please show the approach from bottom up, i.e from scratch. The video starts with a full fledged version of a system already designed. How would anybody come up with such a detailed design at the beginning of the interview.

  • @raulv5419
    @raulv5419 4 года назад

    brain storming , I liked the way you narrated design. I felt not required to street on analytics vs have use cases explained for entire request cycle
    Great JoB

  • @manikandansaravanan5248
    @manikandansaravanan5248 5 лет назад

    Thank you so much . it's realy excelent to understand the big picture

  • @parasuramreddykalluri1024
    @parasuramreddykalluri1024 5 лет назад

    Super and highly recommended.Keep it up bro.

  • @Divinity1993
    @Divinity1993 3 года назад

    one of the best explanation i found on internet

  • @ancellitto
    @ancellitto 5 лет назад +4

    Great explanation and consolidation of topics in engineering.uber ...it would have taken me days just to put all the bits together and understand the design ...thanks for the effort..

  • @anujsfavouritesongs
    @anujsfavouritesongs 3 года назад

    Thanks Naren !Wonderful Teaching.

  • @InterviewDOT
    @InterviewDOT 5 лет назад

    Nice explanation, Thanks for your effort.

  • @ChiragGajiwala
    @ChiragGajiwala 3 года назад

    Great content. Explanation was quite elaborative and very detailed. Kafka streaming was also quite clear and easy to understand the entire design.

  • @aravindswarana143
    @aravindswarana143 3 года назад

    I spent 11000 for educative.io for System design but watching your vidoes. Thanks a ton for your help to community.

  • @bhagvatlande5700
    @bhagvatlande5700 5 лет назад

    really understandable explanation for newbies , thanks

  • @y.venkat8089
    @y.venkat8089 5 лет назад

    Thank you so much for your effort to explain.

  • @naveen-ib5ly
    @naveen-ib5ly 5 лет назад +1

    bro awesome explanation... keep up bro your good work.

  • @HonnestReactionTamilJ
    @HonnestReactionTamilJ 4 года назад

    Priceless content ! Many thanks bro !

  • @theromarioaf
    @theromarioaf 5 лет назад

    Thank you so much. Excellent explanation.