Uber/Ola Low Level System Design explained with CODE, UML Diagram | Easy & Detailed Explanation!!

Поділитися
Вставка
  • Опубліковано 2 січ 2025

КОМЕНТАРІ • 150

  • @Shivam_Varshney13
    @Shivam_Varshney13 3 місяці тому +4

    All the effort you put in to explain all these concepts is just beyond amazing and makes learning so much easier!

  • @jayko2257
    @jayko2257 Місяць тому

    Thanks~~ understood patterns for the first time. Used to read it always but never found good examples to solidly my understanding.

  • @cricketguru7596
    @cricketguru7596 Рік тому +2

    It's gives me atmost satisfaction as I understood this video very well❤❤❤

  • @lv3609
    @lv3609 8 місяців тому

    Thanks!

  • @sahenamaharjan6167
    @sahenamaharjan6167 7 місяців тому +1

    One of the best LLD videos I have watched so far! Thank you.

  • @omidsaghatchian7502
    @omidsaghatchian7502 11 місяців тому +1

    Thank you for the insightful video on design systems. I appreciate the clarity in your explanation. I'm curious about the "pricing calculation
    " process after selecting a driver. In the typical scenario, a rider selects the origin and destination first and then would like to see the corresponding fare before confirming the trip request. It seems intuitive to have the pricing information available at this stage, and then proceed to assign a driver once the rider confirms the trip. I understand this may involve simplification, but it seems crucial to treat pricing as an independent factor from the driver assignment.
    However, I acknowledge my perspective might be influenced by the absence of Uber in Iran, where the services we utilize may follow a different implementation approach. If my understanding is incorrect, I would appreciate any clarification on this matter. Thank you again for the informative content.

  • @chaynnittagarwal3215
    @chaynnittagarwal3215 4 місяці тому

    Excellent video. This is like first video I have seen on design and you made it look so easy. I know the effort behind, really appreciate it !!

  • @gvsai543
    @gvsai543 Рік тому

    Thank you so much keerthi. I had several doubts in lld, this video cleared almost all of them.

  • @amitgupta-or5nm
    @amitgupta-or5nm Рік тому

    Hi Kreeti great work , I have watched all LLD videos they are very well explained , I really appreciate yr time and effort.

  • @shrutimath3330
    @shrutimath3330 Рік тому

    Thankyou for such amazing explanation .Apreaciate the hardwork you have put

  • @shaziakaleem1895
    @shaziakaleem1895 6 місяців тому

    Super helpful. Thank you for putting in all the effort to create this.

  • @shankarBinnar-xl8en
    @shankarBinnar-xl8en Рік тому

    thanks keerti !! this very interesting and important topic .
    really help to understand the concept and LLD design flow...🤩

  • @shaikhanuman8012
    @shaikhanuman8012 6 місяців тому

    Best Low Level Design Tutorial Thanks for clear-cut explanation.

  • @kudaykumar1261
    @kudaykumar1261 Рік тому

    Thank you so much Keerthi It's a really nice explanation.

  • @Ranjanram1
    @Ranjanram1 4 місяці тому

    I really appreciate ur work and effort u put to make video sis , I think ur channel stands out unique compared to others where others r teaching abt only a particular language, ur focusing on smtg which is more imp and unnoticed,where many youtubers won't cover , thanking you 🎉❤for ur efforts ur putting to make quality content for us , love frm Bangalore

  • @biswajyoti.
    @biswajyoti. Рік тому

    dedication what it is!! Hats off to u di

  • @swatiacharya9073
    @swatiacharya9073 Рік тому

    Amazing keerti... understood the lld first time... but a request... explain it slowly...its very fast

  • @people_07
    @people_07 Рік тому

    thank for creating these excellent LLD,with such effort

  • @shagun9155
    @shagun9155 Місяць тому

    the explanation was great ! would be great if you could cover some game design LLD like chess , ludo etc.

  • @abymathew575
    @abymathew575 Рік тому +5

    Thanks, Keerti for creating this excellent video with the entire thinking flow with a coding sample. Really appreciate your time and effort behind such a great video. Expecting more from your channel.

  • @mugeethl6036
    @mugeethl6036 7 місяців тому

    Thanks for the wonderful explanation, please keep on posting more videos and playlist related to LLD , design patterns, HLD with proper roadmap from scratch to end in order.

  • @gxo-mt5vo
    @gxo-mt5vo Рік тому

    I love your attitude. Thanks for the video!

  • @vaibhavagarwal3757
    @vaibhavagarwal3757 Місяць тому

    Its better if you provide the explanation of the requirements first, before solving the problem.
    But the way you are explaining is great, thanks for such great content.

  • @renuroy4826
    @renuroy4826 Рік тому

    Thank you so much Keerti for putting so so much efforts in the videos. ❤. Keep growing and Glowing !

  • @rajenderprasad1193
    @rajenderprasad1193 Рік тому

    This is really amazing.. thank you Keerthi..

  • @sajaljain3610
    @sajaljain3610 Місяць тому +1

    i think trip manager has strategy manager to decide price and driver mantching strategy , is it missed in class diagram of tripmanager to add private instance of strategy manager ?

  • @heertheesh
    @heertheesh 10 місяців тому

    This is so helpful. Thanks for the video Keerti

  • @AnkitaDhiman-y6c
    @AnkitaDhiman-y6c 9 місяців тому

    This is so helpful mam, Thanks a lot for the efforts:)

  • @rajarayavarapu2167
    @rajarayavarapu2167 Рік тому

    Greatttttt please dont stop this series

  • @gautambhateja
    @gautambhateja 3 місяці тому

    Very understandable video. Super helpful.

  • @YogaJournalWithMimansa
    @YogaJournalWithMimansa 6 місяців тому

    Such an informative video, Thanks Keerti !!

  • @hottroddinn
    @hottroddinn 11 місяців тому

    This is excellent! Thank you for creating this video.

  • @rishiraj2548
    @rishiraj2548 4 місяці тому

    Excellent work. Kudos and thanks.

  • @himanshutanwani_
    @himanshutanwani_ Рік тому +1

    Finally, was waiting for this!

  • @mohammedmoosamr4052
    @mohammedmoosamr4052 Рік тому

    Thank you dear for your efforts god bless you ❤❤

  • @VIKASHKUMAR-mn6cs
    @VIKASHKUMAR-mn6cs Рік тому

    Loved the video and the word Hotch Motch😊

  • @rahulrahul-cm4mn
    @rahulrahul-cm4mn Рік тому +4

    Wow ! Keerti- great work

    • @er.vijayjoshi6624
      @er.vijayjoshi6624 Рік тому +2

      Excellent contribution. Please keep it up
      कभी महक की तरह हम गुलों से उड़ते हैं
      कभी धुएं की तरह पर्वतों से उड़ते हैं
      यह क्या उड़ने से ख़ाक रोकेंगे
      कि हम परों से नहीं हौसलों से उड़ते हैं

  • @sagarsondur
    @sagarsondur Рік тому

    Amazing Explannation
    loved this

  • @GulshanKumar-jg8xs
    @GulshanKumar-jg8xs 7 місяців тому

    Amazing video. Described very well.

  • @niwanshumaheshwari4534
    @niwanshumaheshwari4534 Рік тому

    Thank you, no one explained LLD the way you did.

  • @shubhamgoyal9556
    @shubhamgoyal9556 Рік тому

    Amazing content, Keerti. So helpful.

  • @jayandrapatil
    @jayandrapatil Рік тому

    Super highly appreciated the efforts.

  • @khushbooverma
    @khushbooverma Рік тому

    Loved the content and the way you explained. Please continue creating more such content. ❤

  • @AdityaShenoy-fu3uw
    @AdityaShenoy-fu3uw 9 місяців тому

    My quest for the best LLD tutorial concludes here

  • @luxauto7065
    @luxauto7065 10 місяців тому

    Thanks for taking the time and doing this video. It is very interesting and informative.
    But can you please slow down a little bit when you are talking.
    Thanks

  • @DSAShyam
    @DSAShyam Рік тому

    Excellent video Keerti..

  • @Android-terms
    @Android-terms Рік тому

    There are many LLD questions on the basic features of large systems like WhatsApp(How to manage users, send messages, receive messages, and manage groups), Facebook, and Twitter.
    Please help us by making videos on that too by covering the basics of those.
    It will be really beneficial for us.

  • @aditijain2524
    @aditijain2524 Рік тому

    Very nice content created. Kindly prepare videos like this in detail since I had seen your mock interview videos earlier they were not much in depth and in real interviews , interviewers ask in detail

  • @Md_sadiq_Md
    @Md_sadiq_Md Рік тому +3

    I really appreciate the amount of work you have put into it so I shared in my group
    Hey could you please provide the code in java
    Please 🥺

  • @aditya-9727
    @aditya-9727 6 місяців тому

    @23:30 Hey Keerti,
    There is relationship between TripManager to StrategyManager so don;t u think the relationship between StrategyManager and TripMetadata is redundant?

  • @krishnamurthymadaraboina1556
    @krishnamurthymadaraboina1556 9 місяців тому

    this video is very good, lot of videos only describe but will not show in coding.

  • @code_minion_123
    @code_minion_123 9 місяців тому

    Improv: Builder patterns can used for the Metadata or other Objects instead of Constructor parameters.

  • @rakeshkumarsm9900
    @rakeshkumarsm9900 Рік тому

    Great Work please make a video on low level design of CRED app

  • @sandeepsack
    @sandeepsack Рік тому +1

    Thanks for putting a lot of effort in making UML diagrams as well as clearly explaining thought process behind chosing class relationships & Also, for explaining how to make design scalable and extensible in case if we need to add different strategies for driver matching and price calculation.
    BTW, this is my first youtube comment ever. Thanks Again!!!!

  • @soumik76
    @soumik76 11 місяців тому +5

    If trips cannot exist without TripManager and you are making that a composition, then why can't we say the same thing about RiderManager? Riders cannot exist without RiderManager as well. I am unable to clearly understand what's the difference between the relationships of Trip-TripManager versus Rider-RiderManager.

    • @Chronicles365
      @Chronicles365 2 місяці тому +1

      So there can be a case where the Riders can exist without the rider manager totally based on the requirement of the system needed, that's why she used aggregation relationship here
      Otherwise if there is a requirement that the rider and driver *CANT BE CREATED* without a Rider or driver manager then these should be the composition relationship
      Timestamp: 7:20

  • @basavarajsonnad5775
    @basavarajsonnad5775 Рік тому

    Great content. Very helpful.

  • @utkarshranjan7903
    @utkarshranjan7903 Рік тому

    Trip Manager should have a composition relationship with RiderManager, but an aggregation with Driver Manager, because a trip is created only if a rider is there. It's like a body can be there only if eye is there. Rider is totally a part of the trip, particularly when rider is creating trip. Although I think this should be true for the limited functionality that we discussed right now. Maybe for more expansion its better to have an aggregation relationship with rider manager as well

    • @AsliArtist
      @AsliArtist 3 місяці тому

      Its a design problem, theres no ONE right answer.

  • @PushpSoodSde
    @PushpSoodSde Рік тому

    I don't think Strategy Manager has to be singleton! But overall great explanation :)

  • @vidhigupta5591
    @vidhigupta5591 5 місяців тому

    Thanks nice content. Do we have separate video for strategy design pattern?

  • @Alagu1210
    @Alagu1210 Рік тому

    Thanks for the detailed explanation

  • @shivankchopra8552
    @shivankchopra8552 Рік тому

    Thankyou for the effort! 🙏🏼😀

  • @asmitamishra4965
    @asmitamishra4965 Рік тому

    What a nice explanation.

  • @snowy_56524
    @snowy_56524 Рік тому

    I love the intelligent lady ❤

  • @chandanapriyak2172
    @chandanapriyak2172 Рік тому

    please also show us on how you are building the code in the end. That would be helpful

  • @kritirohilla021
    @kritirohilla021 Рік тому +1

    Thank you for this amazing video. Which IDE are you using for building and running this project ?

  • @aritrasadhukhan5674
    @aritrasadhukhan5674 Рік тому

    Great work!!

  • @NavyathaTarun
    @NavyathaTarun Рік тому

    Very nicely explained and implemented Keerti! Thanks for sharing!

  • @AshwiniYeokar
    @AshwiniYeokar 7 місяців тому

    We have different cars,auto avaible over uber and ola both, that we need to mention in this , right ?

  • @vinodpaluvuri54
    @vinodpaluvuri54 Рік тому +1

    Hi Keerti, when it is a coding problem, I will try to find solution to it whereas for system design i dont know what i am doing and also, it's not right if I just do as you do by mugging up.. Please help in understanding how can I gain confidence in system design things

  • @shrishtigupta6902
    @shrishtigupta6902 Рік тому +1

    Hi Keerti,
    Thanks for the video. It was super clear.
    I just had one doubt. Why do we need an instance of riderManager and driverManager in TripManager. I see those instances are not being used anywhere in the TripManager class.

  • @nitinsachdev4437
    @nitinsachdev4437 3 місяці тому

    Why are we maintaining hashmap of riders & drivers objects at code level? When the driver assignment happens wont this be at DB level?

  • @akasnani3464
    @akasnani3464 Рік тому +1

    Nice explanation

  • @alokkamat17
    @alokkamat17 Рік тому

    This is so so helpful. Thanks Keerti for making this kind of video. Now you have responsibilty of making such more videos.

  • @JinilSasidharan
    @JinilSasidharan 8 місяців тому

    @KeertiPurswani Thanks so much♥ Is the manager class same as service class we use in Spring Boot?

  • @shubamgoswami
    @shubamgoswami Рік тому

    Attendance marked . This content is better than paid courses that white board is worth ❤️. Going replay to the same comment when i complete the whole video ❤️

  • @nishantdehariya5769
    @nishantdehariya5769 11 місяців тому

    are the maps inside all the above singleton classes thread safe? if not,
    we might have to have mutex lock before setting the value inside map& then unlock right
    ?

  • @ravinapit2817
    @ravinapit2817 7 місяців тому

    Thanks, nice content❤

  • @piyushkumar-bl2ck
    @piyushkumar-bl2ck Місяць тому

    wow, amazing.

  • @kapilchoudhary2922
    @kapilchoudhary2922 Рік тому

    Mind blowing explanation, best content ever found on LLD so far, really liked the flow of your explanation....overview, UML class diagram and then code. Thanks Keerti!! ✨

  • @beginnerspoint1612
    @beginnerspoint1612 Рік тому

    Please make some more on lld 😊

  • @chandnibhatia1211
    @chandnibhatia1211 Рік тому

    Thanks for the session, its amazing !But quad ka explanation kidhar h ...

    • @KeertiPurswani
      @KeertiPurswani  Рік тому

      Channel kholke dekha toh karo 🫢
      Here’s the link. Hope you like it ❤️
      ua-cam.com/video/kClPBNmTCf0/v-deo.html

  • @shaktirajput4711
    @shaktirajput4711 6 місяців тому

    Thank you for such videos💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌💌

  • @sureshpoosarla9877
    @sureshpoosarla9877 Рік тому

    Thanks keerthi for an excellent video. It was very helpful as we used to see many video with explanations but not this much detailed explanation with code and UML. Please add more designs like this with code and UML. Hats off to you for your contribution

  • @sarthakjain645
    @sarthakjain645 5 місяців тому

    I think you did not use riderMgr and driverMgr in your tripMgr at all, can we skip it in UML too?

  • @JohnSnow-gi7iv
    @JohnSnow-gi7iv Рік тому

    where do we use these classes and create this structure while building the product? FE? BE? or this is just some theory stuff that is never used in actual implementation?

  • @MoniHazarika-oc7xs
    @MoniHazarika-oc7xs 8 місяців тому

    amazing video!

  • @adithyakramesh6132
    @adithyakramesh6132 Рік тому

    Nice video. Would it be possible to have the code for the same in Java?

  • @vm1662
    @vm1662 Рік тому

    Thanks Keerti for yet another amazing video.
    I have a noob question:
    The RiderManager was created with a single instance. I suppose that is a single instance for each host (assuming we will have the code deployed in multiple hosts). How do we manage those multiple single instances from each host working on a single or multiple DB? Thanks in advance.

  • @RamBhakt__
    @RamBhakt__ Рік тому

    Thank you so much for this video

  • @swatikhilrani8280
    @swatikhilrani8280 Рік тому

    Keep it up beta 👍👍

  • @AnupamNirwan-i5q
    @AnupamNirwan-i5q Рік тому

    Thank you so much, Keerti. What an amazing video. Your thoughts and efforts are absolutely visible. It cleared so many of my concepts and doubts, at the same time, helped me a lot with my confidence for the interviews and LLD rounds. Subscribed and definitely gonna share this video and your content with others. Big thumbs up.

  • @anuragkumar2735
    @anuragkumar2735 6 місяців тому

    @keerti You mentioned all the managers should be singleton across all trips, I believe all the manager should be singleton for a particular trip instead of all trips. please correct me if I am missing something here.

  • @akhilsharma1778
    @akhilsharma1778 Рік тому

    Keerti Rocks

  • @DivyanshRana265
    @DivyanshRana265 2 місяці тому

    Why is trip manager creating rides or accepting rides? Shouldn't riderMgr be requesting rides, and the driverMgr be accepting rides?

  • @nishaaggarwal7876
    @nishaaggarwal7876 Рік тому

    I am not able to understand : Why you have created riderMgr and driverMgr in TripMgr?
    They are never initialized or used!

  • @tarunkumaracharya8047
    @tarunkumaracharya8047 Рік тому

    What does the mtx:mutex represent in the above uml?

  • @BhavikaRajani
    @BhavikaRajani Рік тому

    Keep up the good work

  • @DeepakLalchandaniProfile
    @DeepakLalchandaniProfile Рік тому

    What is hpp ? Do you have solution in Java

  • @divyareddy7622
    @divyareddy7622 Рік тому +2

    watching all the ads to support you! 🫀✌️

    • @KeertiPurswani
      @KeertiPurswani  Рік тому +2

      Thanks! Hoping you really find the video helpful though! ❤️😇

    • @aby_yadav
      @aby_yadav Рік тому

      You anyways have to watch till skip button comes 😅. Hope you didn't buy products in ad to support kirti😂

    • @divyareddy7622
      @divyareddy7622 Рік тому +1

      @@aby_yadav i know that we need to watch full ads. Might buy the products too. Good work should be appreciated

  • @Manishkumar-el1vz
    @Manishkumar-el1vz Рік тому

    An excellent LLD video; I appreciate the work
    Small Doubt: why are we passing pricingStartegy and driverMatchingStartergy pointers to the Trip class?
    In what scenarios these instances of strategies are needed in Trip class.

    • @AsliArtist
      @AsliArtist 3 місяці тому

      She is assuming that the pricing strategy and driver matching strategy will vary with different trips. This is a little albeit to the real Uber implementation where these strategies are independent and vary based on the geolocation and timing of the trip request.
      Its a design problem, theres no ONE right answer.