Тёмный

System Design Interview: Design Uber w/ a Ex-Meta Staff Engineer 

Hello Interview - SWE Interview Preparation
Подписаться 24 тыс.
Просмотров 86 тыс.
50% 1

Опубликовано:

 

3 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 405   
@scottlim5597
@scottlim5597 6 месяцев назад
This channel undoubtedly has the best and most realistic functioning system design videos. Evan, you should add a donate button.
@c0deHD
@c0deHD 4 месяца назад
what sets these videos apart from other system design interviews is that not only is your thought process thorough and well thought out, you give clear distinction between mid/senior/staff level answers which is insanely valuable
@pujamishra1475
@pujamishra1475 4 месяца назад
I think everyone has already left wondeful comments here but I cant stop myself from giving a huge shout-out for creating such helpful videos. It is so straightforward and cohesive to understand the flow of this problem. Really appreciate the hard work you are doing!
@hello_interview
@hello_interview 4 месяца назад
Thanks for taking the time to right this! Love hearing people are finding them valuable
@hungryskelly
@hungryskelly 5 месяцев назад
I normally don't comment on youtube videos but this is f*cking incredible. I'm literally building.a map-based social media application as a personal project and you opened my eyes about how these things can actually scale. The structure and content of this video is immaculate. Well done.
@hello_interview
@hello_interview 5 месяцев назад
This comment made my day! Good luck with the app, sounds cool!
@yihuang6120
@yihuang6120 5 дней назад
This video is excellent! What makes it stand out from similar ones is its authenticity - it's created from the perspective of a real, experienced interviewer rather than an imagined scenario. It aligns with my own understanding and experience of system interviews, offering practical suggestions with clear reasoning behind them. Many interview videos focus primarily on functional requirements, which can feel superficial, especially for senior positions. For such roles, much more depth is needed, and this video captures that perfectly.
@aldogutierrezalcala3047
@aldogutierrezalcala3047 Месяц назад
You should continue doing these videos man, you are the ONLY one I ever saw that makes distinction on a psosible solution beween Jr, Senior, Staff, this is pure GOLD.
@hello_interview
@hello_interview Месяц назад
More coming don’t worry! :)
@zfarahx
@zfarahx 4 месяца назад
Junior-to-mid-level dev here, got my first system design interview coming up soon for a new gig. I feel so much more confident thanks to you! Please keep it up!
@khushbooverma
@khushbooverma 2 месяца назад
This series is one of the most helpful system design resources that I've found. Many candidates understand the concepts but struggle to structure their thought process in a 40-minute interview. Thank you on behalf of the entire development community!
@binayakranjan
@binayakranjan 6 месяцев назад
Went through your channel's videos and oh boy! they are amazing. One big takeaway for me which you have clearly demonstrated "Keep it Simple". Got yourself a follower for life.
@prerakhere
@prerakhere 4 месяца назад
I am into system design from a couple of months now and Hello Interview has genuinely the best system design content hands down 🙌.
@nishitattrey9620
@nishitattrey9620 5 месяцев назад
I have never felt so engaged while watching any other design video. This is pure gold. Thanks you so much and keep up the good work!
@davidsenerchia6999
@davidsenerchia6999 19 дней назад
As always, love the frequent mentions of expectations for mid/senior/staff. Really helps make these videos maximally applicable to all levels
@verdikapuku2596
@verdikapuku2596 20 дней назад
One of the best system design interview video I have watched in a long time. I really appreciate how you break down the level of "depth" expected of senior/staff. Super helpful to know where to emphasize for someone preparing for that level. 10/10 absolutely gold content.
@PrasidhAggarwal
@PrasidhAggarwal 4 месяца назад
Been watching youtube for at-least 10 years now, and this might be my first comment ever. This was really really helpful without any fluff. And the way you explain the entire design was just so fluent and coherent. I've got a couple of interviews lined up and found this just in time. Thanks a lot!!
@hello_interview
@hello_interview 4 месяца назад
Hell yah! Good luck in the interviews!
@PrasidhAggarwal
@PrasidhAggarwal 4 месяца назад
@@hello_interview Thanks man!
@VoidmainGuy
@VoidmainGuy 5 месяцев назад
You are sending a clear message to us. Keep it simple, build the design from basic building blocks. Great video. Even if someone encounters a question, which they have not seen, this principle works. Reg the question, I believe 1. Notification service design (talking about web sockets, long polling, SSE) might be value add 2. Also, driver matching algorithm (K Nearest neighbor etc.) can be expanded 3. How to scale DynamoDB -apply sharding on Rider can be also be added to data point
@hello_interview
@hello_interview 5 месяцев назад
Agreed, all great actionable deep dives!
@sherazdotnet
@sherazdotnet 3 месяца назад
Correct me if I'm wrong. Didn't Evan choose DynamoDb because he wanted to utilize TTL for matching the requests? I naturally landed upon a timer with 10 seconds witch then landed me on queue to Redis. Now if I had used message queue with TTL 10 seconds, I'd stick with a relational Db for Driver/User/...... Basically, main entitles don't grow as much as locations and a relational dB would have been just fine. Anyway, you mentioned about sharding DynamoDb using Rider? How would you balance your shards then? I mean in NY, you can have way too many riders as compared to some other ruler area. How sharding by Rder help to have a balanced shard? I think sharding by GeoHashes might be a better approach. If we have area that are highly dense, we'd keep a few GeoHashes regions in there but if the area is lightly populated then we can add more geoHashes. What do you think?
@manikandanrvs
@manikandanrvs 10 дней назад
It is one of the best videos covering all system design concepts. Each component was well narrated. Great work, Evan. I really appreciate the hard work behind it. I learned so much from you. Please consider adding a donate button!
@JH-zd6en
@JH-zd6en 6 месяцев назад
Totally agree with you on the Back of the Envelope Estimation! I think it's such a waste of time. As you mentioned, it's always "oh it's a lot. I need to scale it". Well duh.
@AlgoDaily
@AlgoDaily 4 месяца назад
but I think majority of the interviewers will still want it and judge based on the calculations :P
@rahulg
@rahulg 5 месяцев назад
This is definitely the no cruft and zero nonsense system design video. Also, suggestions to optimize time is so valuable as I have seen many candidates waste their time on things which don't add up value at the role they are interviewing.
@hello_interview
@hello_interview 5 месяцев назад
Way too common!
@pepefroggie
@pepefroggie 6 месяцев назад
I appreciate the longer videos and how you go into depth on the expectations for different level candidates. As a beginner to the system design world (planning to switch from a DE role), it helps to understand expectations and also see everything from a seasoned expert's point of view. I first saw a few of your posts on reddit when researching what prep material to use for the system design interview. HelloInterview has helped me tremendously with gaining knowledge, helping with behavioral stories and also just in confidence! I've been reading Alex Xu's books alongside your content. Thank you!
@hello_interview
@hello_interview 6 месяцев назад
Right on! This is awesome to hear. So glad you've been finding value :)
@zfarahx
@zfarahx 4 месяца назад
Same boat. Going through the book and working through these exercises/videos. Hope your prep is going well!
@oleksiimolozhanov3943
@oleksiimolozhanov3943 16 дней назад
An incredibly high quality video. Thanks for a structured approach, level-by-level comparison and the deep dives. Together they make this (and other in the series) videos the best I've seen so far.
@aaronf8710
@aaronf8710 Месяц назад
I can't express how much I appreciate these. I've been on a job search for a little while now, and since you've made these videos, I've been feeling a lot more confident in answering system design questions.
@hello_interview
@hello_interview Месяц назад
So glad to hear it!
@canijustgetanamealre
@canijustgetanamealre 5 месяцев назад
I really love the presentation style, and the notes on leveling staff engineer vs mid level expectations, showing the "range" discussing the expectations. these are the best system design videos on the web right now.
@subodhvashistha9347
@subodhvashistha9347 5 месяцев назад
Please make more videos. I don't normally watch these long videos, but these videos are so informative and packed with knowledge of different domains. Thankyou.
@adityachoudhary9732
@adityachoudhary9732 14 дней назад
This video is fantastic! I don’t mind if it gets longer-there’s so much useful information packed in. Keep up the great work!
@shubhamchakravarty4121
@shubhamchakravarty4121 5 месяцев назад
Such Clarity. Much Wow. Where were you, all my life?
@hello_interview
@hello_interview 5 месяцев назад
🤗
@t.jihad96
@t.jihad96 6 дней назад
Wow, this is an amazing explanation from someone with real world experience. If you can make a video about the limitations of every database, like for example what you mentioned about Postgres vs Redis and why we picked Redis in this example that would be great. I know those things might be covered in deep dive videos but combining them in one video will make it easier to understand the limitations in different technologies. Thanks a million!
@aniketmahangare8333
@aniketmahangare8333 3 месяца назад
These videos are pure gem. I knew on a high level what components are needed here, geohashing, quad tree etc, but the tradeoffs you mentioned, I wasn’t aware of them. Also the focus on low level implementation details is just awesome. Please keep these videos coming.
@sanasarjanjughazyan9861
@sanasarjanjughazyan9861 17 дней назад
The best system desing interview prep courses I've ever seen, just keep it up and thank you!
@tegsheesan
@tegsheesan 3 месяца назад
I am studying system design for the first time and your videos are super useful. They are not just the answer, but the framework for the thought process and how to navigate the problem! thank you so much!
@Tomatomegalisk
@Tomatomegalisk 25 дней назад
Wow this might be my first ever comment on a RU-vid video. Your videos are amazing and really informative. Even though I'm not currently interviewing, I still watch your videos and I've been learning a lot from them. It's really helping me prepare for when I will be interviewing in the future. Thank you so much!
@SystemDesign-pro
@SystemDesign-pro 3 месяца назад
My goodness, what did I just discovered. This channel is sooo good and so underrated. Please keep going deep and go for the staff level. I would pay to be a member for a video like this.
@hello_interview
@hello_interview 3 месяца назад
Even better, you get them for free! 😝
@allenliu1065
@allenliu1065 Месяц назад
Evan not only teaches tech stacks, but also how you should interact with the interviewers. kudos!🤩
@techmind9608
@techmind9608 Месяц назад
no need to apologize for long duration videos, I can watch this for 6 hrs straight., please make such a detailed videos.
@hello_interview
@hello_interview Месяц назад
🫡
@bqrkhn
@bqrkhn Месяц назад
Same!
@guitar-nation-gautam
@guitar-nation-gautam 2 месяца назад
Great Video ! Covered the required breadth and depth needed in an actual system design interview.Please keep posting videos on more different system design problems. If you keep providing content and service of this quality and level , am sure Hello Interview will reach to newer heights.
@hello_interview
@hello_interview 2 месяца назад
On it!
@AnIndianSingh
@AnIndianSingh 4 месяца назад
I am just starting to prepare for interviews and Uber was the first one I wanted to understand since the location based matching kept bugging my brain. After watching this, I am glad that I did. Learnt so many new things in this single video. Thank you.
@brunom12111
@brunom12111 6 месяцев назад
you have the best system design videos! please make more, and thanks for this
@tttrrrrr1841
@tttrrrrr1841 5 месяцев назад
Great, great content! It's shocking how simple and focused your designs are compared to nearly any other system design resources. I always wonder how it can be possible to write out/draw the designs I see elsewhere in 35 minutes and now I've watch your videos I've realized the answer is you don't need to.
@vinothkumarsugumar1436
@vinothkumarsugumar1436 22 дня назад
Thanks much !! my first learning design video...haven't skipped a second
@symbolsingla4530
@symbolsingla4530 2 месяца назад
Thank you so much for the video! I've spent money on other resources to actually learn sys design, and have learnt more here in a single video. Really grateful. I hope you keep making these videos. PS - This is my first comment on youtube ever in 10+ years!
@ankiteshgupta7751
@ankiteshgupta7751 5 месяцев назад
Loved the content. I love the fact that you re-explain a lot of things from previous videos. 1 Small knit pick. At the end of the video where you talk about stale data cleanup (for driver who doesn't interact with ride request). You mention about using dynamo db TTL, I would actually stick to the redis way of doing it instead of using dynamo db, the ttl feature has a delay (it may also take upto 48 hrs for data to cleanup). OR we can switch to using SQL for primary DB with triggers.
@hello_interview
@hello_interview 5 месяцев назад
Yup good call! A couple other folks have correctly made the same comment below :)
@gfa123-d8u
@gfa123-d8u 29 дней назад
​@@hello_interview I disagree. DynamoDB can take some time to remove the item from the table but you can filter out the item via conditional reads. In the case where your server clocks are slightly ahead, you will run into an issue where multiple boxes think that a driver is available. To get around this you'd need to make sure that you write the lock using a conditional write predicated on the lock not existing in order to prevent multiple rides being sent to the same driver. DynamoDB has strongly consistent writes to this will work fine, and you'd need to do this in the redis case anyways.
@RajU-mb7oq
@RajU-mb7oq День назад
Genius to explain the system design making it look easy. Fantastic job
@RewantKedia
@RewantKedia 2 месяца назад
Came across this channel today and this is the best system design video I have watched since I have started preparing for the interviews! Great Job!
@hello_interview
@hello_interview 2 месяца назад
Hell ya! Good luck
@elkingthemc
@elkingthemc 3 месяца назад
Incredible breakdown! My Meta Product Architecture interview is in a few days so thank you so much 💪🏽
@hello_interview
@hello_interview 3 месяца назад
Good luck!!
@Rizq-kr9wq
@Rizq-kr9wq 2 месяца назад
This is the my first ever comment on any RU-vid video. Your content is so informative , class apart and you should be appreciated. I really hope you keep posting such invaluable system design content ❤
@lifetimecode9527
@lifetimecode9527 3 месяца назад
There are loads of youtube videos teaching you about system design. However most, if not all, of the video creators are not stuff or senior staff level. Their solutions are limited by their level of understanding and are actually reflecting some level that is only slightly better than entry level. This video showcase what a real system design interview should look like
@gnawk365
@gnawk365 Месяц назад
This is amazing content. Great points in keeping to the important/fun stuff and not wasting time diving into the calculations (which I struggle to do on the spot). I really like how it progresses throughout with the evolving deep dive and clearly discusses the choices/tradeoffs made. Even though I have the experience (at a FAANG company), being able to structure that thought process and explain it concisely within the time frame is a skill that I need to work on and for me this content is gold. Cheers!
@andrelucio8394
@andrelucio8394 5 месяцев назад
Yes, this channel videos are the best I've found on System Design and is not even close! Please keep them coming!
@dominicquigley7335
@dominicquigley7335 4 месяца назад
Hands down the best system design vid I've seen so far, been searching all over and this makes me feel like I actually have a step by step approach to doing this
@MrSnackysmorez
@MrSnackysmorez 4 месяца назад
Thank you very much for this. Much more concise than any of the materials I have seen thus far. I love that you call out the benchmarks as well so we can know what the standard is for this type of question.
@bodlaranjithkumar
@bodlaranjithkumar 5 месяцев назад
This is by far the best system design I have seen or read. Very elegant and the way you structured it makes more sense. I wonder though if the interviewer would adapt to such format when they are particularly expecting a certain format. Subscribed to the channel with notifications 🤝
@alexhiggins0
@alexhiggins0 6 месяцев назад
please make more of these video's they're top notch 🙏
@mihaiapostol7864
@mihaiapostol7864 2 месяца назад
very well explained and it all made sense. thank you! i'm not applying to any jobs currently, i watched it because it helps me as a more junior developer to understand how a system should be designed :D
@WebSurfingIsMyPastime
@WebSurfingIsMyPastime 6 месяцев назад
liked, commented, subscribed. This channel has the potential to blow up and become a top-tier programming channel if you keep this up!
@rahulrandhiv
@rahulrandhiv 2 месяца назад
This was my second video from your channel. Your way of teaching is really comprehensive and easier to understand
@masatanida9119
@masatanida9119 19 дней назад
Very good practical advice for SD interviews. In the past, I got tripped up because I believed I had to perform steps like "back of the envelope estimations" and write out normalized data models - all of the columns and tables - before jumping into HLA. The way the design is approached here is much more organic.
@srikanthkini3206
@srikanthkini3206 4 месяца назад
I really like the depth you cover in your videos. It is the depth and the presentation style that I really love. It is amazing to watch you present. Thank you for uploading and you have a new subscriber.
@hello_interview
@hello_interview 4 месяца назад
Sweet!
@prtk2329
@prtk2329 Месяц назад
One of the best hours I've invested-insightful and engaging!
@hello_interview
@hello_interview Месяц назад
High praise!
@AhmedIbrahim-uf1kz
@AhmedIbrahim-uf1kz 5 месяцев назад
This Channel is an absolute gem, thank god I found it before my interview, hopefully this is going to help.
@hello_interview
@hello_interview 5 месяцев назад
Good luck!
@AhmedIbrahim-uf1kz
@AhmedIbrahim-uf1kz 5 месяцев назад
@@hello_interview Will update you in couple of days fingerCrossed 😆
@AhmedIbrahim-uf1kz
@AhmedIbrahim-uf1kz 4 месяца назад
@@hello_interview Passed the system design but did not pass overall, either way your interviews were extremely helpful.
@user-kb5vl8hj4e
@user-kb5vl8hj4e 12 дней назад
This video is pure gold
@RajU-mb7oq
@RajU-mb7oq День назад
Agree. It’s another level of talent to explain the thought process for others to grasp it
@stephenliao450
@stephenliao450 4 дня назад
My favorite section was the deep dive discussion on quadtree vs geohash with their tradeoffs based on density, write-load, and complexity. Awesome vid. A question that popped into my head is: what specific technology would we choose or name for the microservices themselves (ex ride matching service)? Is it 99% of the time perfectly fine to just call it a microservice? Or do we want to name like Sprint Boot, ECS, AWS Lambda, etc?
@sonalsubramanian4000
@sonalsubramanian4000 4 месяца назад
One of the best systems design videos . Concepts are so well explained. Thank you!! I wish I found your site sooner. 😊
@anonymous-eng
@anonymous-eng Месяц назад
It was fantastic. No doubt about that, really admire your way of simplifying the design. Few things which I noted 1. When your queueing ride request and processing async, will client connection be open? I suppose not. How can a client poll for ride matching without any id? This lead us to generate some global id for ride request which we can immediately return after writing to queue and queue data will contain this global id. This has to be included in primary db as well. 2. When we are using Kafka, number of consumers are limited to number of partitions we have in a topic. So it's only horizontally scalable to extend. Just a thought! One question which bothers me a lot in lot of designs 1. I haven't worked on a product design which launched on different countries like Uber. So, this question often pops up in my mind. What's the need for all country ride details to be kept in a single database cluster? There is no need to keep all this data in a single place as we will not query driver details of USA and Europe. You may ask what's the problem? The problem is unnecessary data replication between nodes in different regions/availability zones if we want to make it highly available. Cons is that there may be multiple deployments needed when we want to launch something in different countries. Do product features release for all and feature flag switched off for some countries or the deployment itself is separate? Just curious
@thebabyshpee6508
@thebabyshpee6508 7 дней назад
ngl, as a more junior level engineer this is intimidating. But super insightful!
@jonaki29
@jonaki29 6 месяцев назад
Ethan, kudos to your great videos!! This is by far THE best design video for such complicated topic like designing Uber!
@BladexD7
@BladexD7 3 месяца назад
Great video! The level of detail is awesome. I learned a lot of new stuff. Thanks for putting in the time and effort to make this!
@ItsMeIshir
@ItsMeIshir 2 месяца назад
The flow is top notch.. Great videos guys 🙌
@leizhao2106
@leizhao2106 15 дней назад
Best live design ever! Could you design a chat service? I haven't found a good explanation online so far.
@nosh3019
@nosh3019 5 месяцев назад
echoing other comments: definitely one of the best system design videos I have seen on youtube 😍
@deathbombs
@deathbombs 4 месяца назад
Love your thought process also includes why so its intuitive, and isolating out the specially difficult parts 35:36 good example of calculating only to optimize location DB# transactions. But I feel like this location DB is a core feature that should be discusssed even in HLD
@mullachv
@mullachv 4 месяца назад
Thank you for the great content. Sequentially notifying drivers is not optimal for rapid response notification to riders. In my understanding multiple drivers are notified simultaneously and then in case of a driver conflict they are arbitrated. During the non-functional requirements stage it might be beneficial to identify "analytics and operational metrics" as possible items of interest. Custodians and stakeholders live off of these.
@R0hanThakur
@R0hanThakur 3 месяца назад
Amazing Video Series. It makes such complex systems so clear. The deep-dives are so insightful. In terms of DB can you please point out the level of prerequisite knowledge of different options which a mid level developer must know. Thanks again for the great content
@NiteshGupta_techno
@NiteshGupta_techno 3 месяца назад
Really helpful video! Loved the way its explained in terms of not only whats right but also what is wrong and why it is wrong. Thanks.
@ranganathg
@ranganathg Месяц назад
I agree 100% with you regarding the back of the envelope calculations, I too haven't really seen much value but many are doing it following as a template. Great point.
@ranganathg
@ranganathg Месяц назад
This is excellent system design video available with "no bs" and the way I like it to be done. Awesome!
@diegotrujillo6284
@diegotrujillo6284 2 месяца назад
Wow man, you need to keep going with this project. You’re a god
@hello_interview
@hello_interview 2 месяца назад
Haha woah now! But glad you enjoyed 🫡
@dontlookup1337
@dontlookup1337 6 месяцев назад
This is amazing, loved the style of videos, deep dives and what's expected at each level. Gives a whole new perspective. Would love to see more!
@michaelxiao7000
@michaelxiao7000 5 месяцев назад
Great work! 1. DynamoDB TTL does NOT work -> "Items with valid, expired TTL attributes may be deleted by the system at any time, typically within a few days of their expiration. You can still update the expired items that are pending deletion, including changing or removing their TTL attributes." 2. You have ride matching service and location service both talking to the Location DB which is a bad practice, ideally every request to location DB would flow through the location service. 3. Why do we need a lock here? Why can't the TTL be on the location DB? When ride matching service find driver's nearby it can check the TTL field of each driver and decide whether or not to send notification to that driver. If you worry about consistency issue, you can add a version field to avoid 2 RMS trying to lock the same driver.
@hello_interview
@hello_interview 5 месяцев назад
The location DB would have a TTL for freshness, but that does not solve the problem here of ensuring we don't send the same driver multiple requests
@Ynno2
@Ynno2 5 месяцев назад
For #3, if we are using Redis cluster because we can't handle the load on a single leader instance due to the very high rate of location writes, that likely means we're partitioning the data geographically. Since Redis can't handle cross-slot queries we'd want it to be geographical because we want to see drivers close to a given location with a single query most of the time. But that makes using the same Redis index for locking problematic. What if the driver drives across a shard boundary and their location updates start going to a different node? There's probably going to be some time period when the driver could be on two different Redis nodes. Then they could be sent ride requests from multiple riders at the same time who locked in two different places. The usage pattern for locking is quite different. Firstly, the TPS is going to be way lower, since it only happens when we try to book a ride with a driver and not every few seconds for every active driver. We could probably handle the load on a single node. Secondly, the lock doesn't really depend on location at all, so if we did need to shard, it can be sharded consistently for a given driverId.
@maharshishah4840
@maharshishah4840 6 месяцев назад
Really good work. Very well explained parts and great visual representation as well. I had a mock interview recently and used the Ticketmaster example as template to form my response. Waiting for you to cover more common and some unique design problems
@asokedatta1356
@asokedatta1356 5 месяцев назад
You structured it well.Doesn't feel like jumping between concepts. I am going use this template for answering. Thank you!
@MuhammadUmarHayat-b2d
@MuhammadUmarHayat-b2d 5 месяцев назад
your videos are most realistic out there
@pratheekkb8257
@pratheekkb8257 26 дней назад
One of the best i have seen !!!!
@fayezabusharkh3987
@fayezabusharkh3987 5 месяцев назад
Thank you I'm enjoying your videos! I'm subscribed since the first video. request: You mentioned in a previous video that "you'd pass as long as you answer the common scalability/fault questions well". Would love a video for mid level that covers the most common principals and themes and what candidates miss or struggle with.
@hello_interview
@hello_interview 5 месяцев назад
Good suggestion. Focused on these full breakdowns right now but some more targeted overviews in the future could make sense
@zfarahx
@zfarahx 4 месяца назад
@@hello_interview some mid-level content would be greatly appreciate!
@aviamt
@aviamt 15 дней назад
Excellent System Design walkthrough.
@sambitnag1154
@sambitnag1154 29 дней назад
Excellent video and thank you for presenting it in a real interview style. I have a question regarding how to decide or develop an intuition around deciding the core entities of a system?
@Ryan-g7h
@Ryan-g7h 6 дней назад
that ringing noise Evan, made me crack up
@charlottedsouza274
@charlottedsouza274 3 месяца назад
Please keep posting more videos... You are awesome at doing deep dives!!!
@kominayu
@kominayu 3 месяца назад
Can’t overstate how helpful this was. Would you be able to make some live coding interview examples?
@hello_interview
@hello_interview 3 месяца назад
Curious, what would you want to see there?
@kominayu
@kominayu 3 месяца назад
@@hello_interview something similar to the system design interviews where you go through different levels of implementation, common mistakes, what to say, etc. A lot of companies are going the live coding interview route and I’m curious what makes certain candidates stand out when writing out a feature from scratch in an interview setting
@SunilKumar-jl6dl
@SunilKumar-jl6dl 2 месяца назад
Again, great content! 1. Wouldn't the driver-rider match be more of a dispatch algorithm (demand and supply). While having a ride request queue would de-pressurize the Ride Matching Service, but the driver and rider matching should be a little more smarter. Example - dispatch the driver closer to the rider rather than linking a driver who is available but rather farther than a driver who is much closer. IMHO 🙂
@castulo
@castulo 5 месяцев назад
Wow, another excellent video Evan, I'm really enjoying these videos, these are by far the best system design videos out there. Thanks for sharing your knowledge with us Evan! By the way, you had one small typo in one of your primary database tables, you ended up having two "Ride" tables, I assume one of them was meant to be "Rider". Again, excellent video, thanks Evan!
@hello_interview
@hello_interview 5 месяцев назад
Good find! And glad you’re enjoying them :)
@JelenaCvitanovic
@JelenaCvitanovic 4 месяца назад
These videos are amazing, thank you so much for recording them! Really helpful!
@hello_interview
@hello_interview 4 месяца назад
Glad you’re enjoying them!
@randymujica136
@randymujica136 3 месяца назад
Its really difficult to find the best quality content nowadays within so much noise. You have really set apart form the rest. Great job! Do you mind sharing what design tool are you using? is it Miro?
@hello_interview
@hello_interview 3 месяца назад
Thanks! Excalidraw
@dmytroopria867
@dmytroopria867 2 месяца назад
Thank you for making such videos, it helps a lot Have you thought about making postgres sharding based on location? I think Uber doesn't support all cities, just a predefined list of locations
@hello_interview
@hello_interview 2 месяца назад
Sharding by location/region is a great idea and makes the scaling challenges of this problem much more bearable. The volume in a city (even a big one) is going to be dramatically lower than globally.
@rautsaurabh9
@rautsaurabh9 5 месяцев назад
Thanks a lot for such a great case study, as a Product Manager I am increasingly seeing that it is expected from PMs to have detailed knowledge of System Design, if time permits could you also have some sort of side notes that a PM should have when designing systems? It will help if you could give details of how and what engineers discuss with PMs when designing systems. I believe it'll help with interview prep for both engineers and PMs. Thanks again for such golden content.
@sreekarv6282
@sreekarv6282 5 месяцев назад
Tight, Tight, Tight!... great watched it three time and still getting new points. Kudos!
@JinilSasidharan
@JinilSasidharan 4 месяца назад
Awesome! This helps a lot. Thanks so much Evan for these videos. ❤
@shubhsharma6029
@shubhsharma6029 2 месяца назад
I love you, Evan! Thanks for the amazing design videos!
@hello_interview
@hello_interview 2 месяца назад
Love you too 🥰😝
@SantoshKumar2
@SantoshKumar2 4 месяца назад
Your content is absolutely the best. I'm subscribing to all your content. Got only one feedback though. Your huge cursor seems to be always on the current text that you are talking about. If possible when you are typing, have the cursor hidden would be great. Thanks.
@hello_interview
@hello_interview 4 месяца назад
Fixed in the latest and all future videos :)
@ugene1100
@ugene1100 6 месяцев назад
Thank you for your work. I've watched a lot of system design videos but your content is definitely the most elegant. The amount of abstraction vs. depth seems perfect for actual interview settings. Quick question about using Redis as a distributed lock. Would we have to explain how Redis can be used as a distributed lock during an actual interview? It almost seems too simple to be true .
@hello_interview
@hello_interview 6 месяцев назад
Only to the level i do here. It is straight forward! Its just a global view of a driver's state, so just saying its a simple key value pair with TTL should be enough.
@ugene1100
@ugene1100 6 месяцев назад
@@hello_interview Thank you!
@lagneslagnes
@lagneslagnes 2 месяца назад
Starting at 27:23: requestRide(rideId) goes to the Ride Matching Service, which does a getDriverLocations(riderLocation).... but the Ride Matching service doesn't know the riderLocation ... so we're missing a query into the primary DB to get the riderLocation from the Ride table I would suggest putting the key parameters on the function calls on the arrows instead of just "requestRide()" and "getDriverLocations()" . This would make it easier to catch these errors during the flow of design. Another way to handle this is for the client itself to have a state machine (i.e., "ride object") mimicking the Ride entity in the primary DB. So after the faire estimate, the local ride object would have the location it provided the faire estimate and can re-provide it for the requestRide() api.
@rm_rf
@rm_rf 6 месяцев назад
Amazing stuff! Please keep adding more videos like this! Thanks!!
@sureshsivakumar-xe9uh
@sureshsivakumar-xe9uh 3 месяца назад
Great content, and tips for junior/senior really helps. one suggestion is if you can use a font that is better readable, when we go 2X play it is little difficult to skim through
@hello_interview
@hello_interview 3 месяца назад
Fair! Will consider next video :)
Далее
У КОТЕНКА ПРОБЛЕМА?#cat
00:18
Просмотров 745 тыс.
У КОТЯТ ОТКРЫЛИСЬ ГЛАЗКИ#cat
00:26
Women’s Free Kicks + Men’s 😳🚀
00:20
Просмотров 1,2 млн
Engineering Management at Meta
32:02
Просмотров 5 тыс.
System Design Interview Walkthrough: Design Twitter
23:04
Kafka Deep Dive w/ a Ex-Meta Staff Engineer
43:31
Просмотров 41 тыс.
Microservices Gone Wrong at DoorDash
17:22
Просмотров 132 тыс.