Twitter system design | twitter Software architecture | twitter interview questions

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 มิ.ย. 2024
  • Learn how to design Twitter and Prep for the system design interviews.
    system design diagram: imgur.com/6TFkVL2
    stackshare.io/twitter/twitter
    highscalability.com/blog/2013/...
    Donate/Patreon: / techdummies
    / the-infrastructure-beh...
    highscalability.com/blog/2011/...
    pdfs.semanticscholar.org/0759...

ความคิดเห็น • 389

  • @atulyadav21j
    @atulyadav21j 5 ปีที่แล้ว +254

    There is lot of homework done in any of your video. You just not come up with a any generic solution which could be applied, but actually the solutions which are currently being used in the company (be it twitter/Netflix). Kudos man, great work! :)

    • @TechDummiesNarendraL
      @TechDummiesNarendraL  5 ปีที่แล้ว +9

      Thanks @Atul :)

    • @mooa6554
      @mooa6554 2 ปีที่แล้ว

      @@TechDummiesNarendraL Thanks for your videos. Just wanted to know how can we be sure this is the technical stack used in the companies? Any checks you made with the developers of those company?

  • @terigopula
    @terigopula 5 ปีที่แล้ว +4

    I loved the way you keep the videos informative enough for the experienced to stay glued and simple enough for the beginners to understand. Great work Narendrea. Appreciate the way you are converting PAPERS to these great VIDEOS.

  • @chhltq
    @chhltq 5 ปีที่แล้ว +20

    When I research the design for a particular product, I watched at least 3 - 4 videos that explain it on TH-cam. And your is always the most complete and relevant. Great job! I think you can consider write a book about system design focusing on interview purpose.

  • @deepakzworld
    @deepakzworld 3 ปีที่แล้ว +5

    It is almost impractical to cover each and every aspect of all components that make up a system in a single video, unless it is several hours long. However, Naren does a great job in putting the most important information across in a way that is simple and easy to understand. He also makes sure he uses the exact keywords and terms that interested users can later research on for a more holistic view into every design. Thanks a ton!!

  • @alexeyovriakh2450
    @alexeyovriakh2450 2 ปีที่แล้ว +20

    Your work is brilliant. You always include small details like "What is Fanout? Fanout is moving from a single point to different directions.". That level of detail is amazing because you are not taking things for granted (i.e. that everyone knows what a fanout is; I initially always got confused by the concept of fanout actually) it makes it much easier to grasp the material! Thanks!!!

  • @amith89rm
    @amith89rm 3 ปีที่แล้ว

    I came here after clicking on an TH-cam recommendation video. I am so glad I got this channel through the recommended videos. I referred so many videos and your video was the best explanation I came across for System Design interview especially taking Twitter as an example. Thanks so much for your videos. Hats off !!! great job. Such an amazing explanation. I wish I had teacher like you!!! Thanks a lot.

  • @goodbyetube9545
    @goodbyetube9545 5 ปีที่แล้ว +21

    He is doing fantastic job. Ton to learn from the videos.

  • @philipg.5316
    @philipg.5316 5 ปีที่แล้ว +2

    This is a really detailed walk-through of newsfeed system design. Thanks!

  • @leonemax6972
    @leonemax6972 4 ปีที่แล้ว

    Just saw the Wpp video from 2 months before this. And the difference is enormous kkkkkk.
    This video is much better. Good work and thank you for the video

  • @renon3359
    @renon3359 3 ปีที่แล้ว +12

    Read "Grokking the System Design Interview" could not understand much and then came here, and everything made sense. Thank you Narendra for these great videos.

  • @mahesh23343
    @mahesh23343 ปีที่แล้ว

    Absolutely love your work man. Gives so much more confidence when you mention what these companies are actually using. Highly, highly appreciated, thank you!

  • @moviesandchill7869
    @moviesandchill7869 5 ปีที่แล้ว +1

    Thank you for posting design questions in such a fast pace. I really like your videos...Keep it coming :)

  • @kumar16pawan
    @kumar16pawan 3 ปีที่แล้ว

    Now I understand the importance of reading books. I remember this celebrity example was provided in the book name "Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems". Great Work. More power to you,

  • @mattleahy3951
    @mattleahy3951 4 ปีที่แล้ว +1

    Narendra, I'm a big fan of your work. I want you to know that I really appreciate the time and effort that you've put into this. It has helped me a lot to improve my understanding of system design.

  • @vercorrobers2278
    @vercorrobers2278 4 ปีที่แล้ว

    I was truly amazed when i discovered your channel . Keep the good work mate!

  • @balajibala2607
    @balajibala2607 4 ปีที่แล้ว +1

    I think for every video you must have read lot of articles , book and compile all the information and delivered in 40 Mins. Keep up the great Job Naren.

  • @sanjaysrivastava1100
    @sanjaysrivastava1100 4 ปีที่แล้ว +3

    Amazing !! 👍 Simple straight forward explanation, well structured in parts, well connected explained in a very nice clear voice. This is complete and comprehensive. I don't know of any video on these topics which comes anywhere near it. Great job man!! keep going !! You do us proud. 👍👍

  • @schenschen-xf2ub
    @schenschen-xf2ub 5 ปีที่แล้ว +17

    I am preparing for an interview of Amazon, and your video taught me a lot. Thanks and keep it coming!

    • @Rekha-pk1ut
      @Rekha-pk1ut 5 ปีที่แล้ว +1

      Shen Chen please help me too.. Am. Also preparing for same

    • @adistutorials5399
      @adistutorials5399 5 ปีที่แล้ว +1

      Rekha Mor good luck!

  • @aplbep
    @aplbep ปีที่แล้ว

    This is so thorough and specific yet explained in a great way! Shows true mastery of the topic. Thank you very much for your work, really appreciated :D

  • @logicboard7746
    @logicboard7746 2 ปีที่แล้ว

    Brilliant. Well done managing the details+clarity in 35 mins!

  • @sagarjaiswal8131
    @sagarjaiswal8131 2 ปีที่แล้ว +1

    Hey man! Great work! Well explained! Love to see more coming from you!

  • @ajaycj6449
    @ajaycj6449 4 ปีที่แล้ว

    Best content so far I have come across in days. Really good!!

  • @jlecampana
    @jlecampana 3 ปีที่แล้ว

    Outstanding System Design video. I think this Twitter Design is more realistic than what other videos on the same topic show. Great work!

  • @hnasr
    @hnasr 5 ปีที่แล้ว +36

    There is a lot of work done! You are amazing sir

    • @ramendu2812
      @ramendu2812 2 ปีที่แล้ว

      Aaayee captain! Nice to see you here, your content is awesome as well. Fun fact, I listen to your podcast on Spotify daily while evening walks :D

  • @raisshaikh2105
    @raisshaikh2105 5 ปีที่แล้ว +2

    Keep Coming. Really appreciate the efforts you are taking to make such valuable source of Information.

  • @prasadpulaguntla9255
    @prasadpulaguntla9255 2 ปีที่แล้ว +1

    Thank you for explaining the overall system design in a such a clear, very easy to understand manner!!

  • @navsmail
    @navsmail ปีที่แล้ว

    very good compilation Naren, really like your videos as they are detailed and good quality :)

  • @RS-vu5um
    @RS-vu5um ปีที่แล้ว

    I agree with the comment from Atul.K.Yadav. Great Job Narendra. You are exceptional in your explanation.

  • @clarencegomes6076
    @clarencegomes6076 2 ปีที่แล้ว

    There is lot of preparation that you do to come up with these videos. Excellent work!

  • @nehamahajan181
    @nehamahajan181 3 ปีที่แล้ว

    Really like all of your videos. Thank you for doing the hard work and sharing your knowledge with the community.

  • @zoasonafan1419
    @zoasonafan1419 4 ปีที่แล้ว

    I will call you SIR. You are an amazing teacher. Best explanation.

  • @flamesdestroy5935
    @flamesdestroy5935 ปีที่แล้ว +1

    the best video on twitter system design I've ever seen before in my life

  • @rkd9915
    @rkd9915 3 ปีที่แล้ว

    Good job Naren. This design video is very well done

  • @hemantyadav5034
    @hemantyadav5034 5 ปีที่แล้ว

    Thanks Narendra....your videos are really useful. It is very difficult to get
    such system design explanation with so much details.

  • @jamess5330
    @jamess5330 ปีที่แล้ว

    Thank you for putting up this tutorial! Study vidoes like this and then practice at Meetapro with mock interviews will help you land multiple offers.

  • @chankibiswas532
    @chankibiswas532 3 ปีที่แล้ว

    Your videos are jammed with so much useful knowledge... It's just wonderful... Big thanks

  • @avvarisaiabhinav2751
    @avvarisaiabhinav2751 2 ปีที่แล้ว

    On going through your lectures able to get horizontal approach on many new concepts . very good work. Thank you

  • @pallavisingh1673
    @pallavisingh1673 5 ปีที่แล้ว

    Best Twitter system design video I've seen so far.

  • @LevKozlodoev
    @LevKozlodoev ปีที่แล้ว

    Thank you also for mentioning the concepts involved (eventual consistency, gather & scatter, fan out, ifti)

  • @ankurkesar
    @ankurkesar 5 ปีที่แล้ว +2

    fantastic work bro. You have scaled to a new level :)

  • @navpreetkaur4902
    @navpreetkaur4902 2 ปีที่แล้ว

    very well explained, I could get every bit of the system and much better than many other videos on youtube.

  • @MuhammadIrshadAli
    @MuhammadIrshadAli 4 ปีที่แล้ว

    Many thanks for making this video :-) You start from basic and go up to advanced concepts in very a easy to understand manner.

  • @akshaywahi3214
    @akshaywahi3214 4 ปีที่แล้ว

    Awesome one, mate.
    Wonderful and neat explanation of such a large scale system.
    Thanks.

  • @prashantkhisti9617
    @prashantkhisti9617 4 ปีที่แล้ว

    Great clarity in the explanation.. demystifies so nicely

  • @erikadsouza5207
    @erikadsouza5207 4 ปีที่แล้ว

    Thanks Narendra! All your videos are nicely articulated and informative. I am a fan :)

  • @hkshetty
    @hkshetty 4 ปีที่แล้ว

    Thank you very much for the simplified explanation!! It cannot be any simpler than this.

  • @siris3957
    @siris3957 4 ปีที่แล้ว

    This was very clear and simple to understand. Thank you so much!

  • @bhupindermanhas1679
    @bhupindermanhas1679 2 ปีที่แล้ว

    I am short of words .. Awesome stuff man !!

  • @ujagarlamudi
    @ujagarlamudi ปีที่แล้ว

    Amazing work, crystal clear concepts. Thank you!

  • @crankerson
    @crankerson 3 ปีที่แล้ว

    Bravo. This is one of the better system design videos.

  • @ghanshyam014
    @ghanshyam014 3 ปีที่แล้ว

    Well explained with impressive attitude 😉
    We're not curious but more eagerly watching how you are doing and finally you done it..😁
    Thanks much bro 👊 for your effort and efficiency....😊
    Please make more videos and spread your wisdom.. so early you gonna crossing in millions subscriber..... Congrats in advance 💐

  • @sumankumar5126
    @sumankumar5126 3 ปีที่แล้ว

    One of the best videos of its own kind. Thank you!!

  • @mayurijain5029
    @mayurijain5029 4 ปีที่แล้ว

    Fantastic Job Narendra...keep it up...your videos are really very informative and helps to understand core concept of system .Thanks

  • @ravitiwari2160
    @ravitiwari2160 3 ปีที่แล้ว

    Hey, Thank you so much all your knowledge sharing. I am able to perform very nice in all my interviews. Keep up the good work. More power to you.
    Keep rocking!!!

  • @abhilashsulibela1414
    @abhilashsulibela1414 3 ปีที่แล้ว

    This is an amazing video! extremely detailed & well designed... Thank you for this... (Subscribed!)

  • @Rupesh209
    @Rupesh209 2 ปีที่แล้ว

    Crystal clear system design. Thanks for your time and effort 👍

  • @devqikGaming
    @devqikGaming 4 ปีที่แล้ว

    Thanks for spreading your knowledge man. Greetings from Egypt.

  • @samgeorge3817
    @samgeorge3817 5 ปีที่แล้ว

    super introduction to the architecture! thank you

  • @deepgsingh
    @deepgsingh 5 ปีที่แล้ว

    Great , You are helping the community a lot

  • @krakwal
    @krakwal 5 ปีที่แล้ว

    You are so amazing and knowledgeable!! Thanks for sharing these informative Videos!!

  • @rewapatilokendra6291
    @rewapatilokendra6291 5 ปีที่แล้ว

    Thank you for your help, your videos are really very helpful in understanding the real life design system. Thanks much :)

  • @shreejitnair2174
    @shreejitnair2174 4 ปีที่แล้ว

    Told all my friends. You are doing a great job.

  • @akshayrana3840
    @akshayrana3840 3 ปีที่แล้ว

    you are the gem master and your videos are gems

  • @dankokozar
    @dankokozar 4 ปีที่แล้ว +1

    You're a great tutor. Keep up a good work!

  • @SPeri6
    @SPeri6 4 ปีที่แล้ว +1

    I am still at 7:45 but have to say you are very good technically ! Thanks a ton !

  • @sukhdevcrazy
    @sukhdevcrazy 5 ปีที่แล้ว +1

    Simply awesome. Keep up good work.

  • @galeop
    @galeop 2 ปีที่แล้ว +2

    Great explanations! The only additional things that I learned from other videos (of lesser pedagogical quality):
    - Regional distribution of cached data (for Reddis) is done thanks to the Writer API (that writes the tweet in the primary region for Reddis + additional regions).
    - in order to have quick response times between the client and the Write API, the client actually talks to a queue; and the write API picks up messages from that queue.

    • @gsb22
      @gsb22 2 ปีที่แล้ว

      links to those videos?

  • @prashantponnala7570
    @prashantponnala7570 5 ปีที่แล้ว

    I've seen so many system design videos and your's are the best. You know your stuff, you keep it to the point, go deep and overall really helpful. Awesome job and many thanks for all your work. A single video cannot cover everything but I would have liked to see how twitter shards users in this design.

    • @TechDummiesNarendraL
      @TechDummiesNarendraL  5 ปีที่แล้ว

      @Prashant thanks, Yes Thats the problem. with my day job I dont have much time to make it a series of videos explaining everything / cover every bits and pieces so i keep it simple and important points only.

    • @dharmendrabhojwani
      @dharmendrabhojwani 5 ปีที่แล้ว

      @@TechDummiesNarendraL Nice videos. Now extend them in details please for each component.
      Would help a lot to everyone. Again Thanks for everything.

  • @srinivasanvk57
    @srinivasanvk57 4 ปีที่แล้ว

    very good video. Nicely covered all the topics. Thanks

  • @prashanttanksali5247
    @prashanttanksali5247 4 ปีที่แล้ว

    Hi Narendra, Really liked your video in which you have made things very clear. Just one question about the choice of the Database - why did you choose Cassandra over opther options like mongodb aur a graph database (which sounds like a good option for a social networking website)?

  • @VenkeeN17
    @VenkeeN17 4 ปีที่แล้ว +1

    Very good explanation. Extremely informative. Thank you :)

  • @hanibaro790
    @hanibaro790 4 ปีที่แล้ว

    learned a ton❤️ and btw your blue bird drawing is the best lol

  • @ketansomvanshi3522
    @ketansomvanshi3522 3 ปีที่แล้ว

    awesome video man ... ! this is relevant to any social media platform design like FB , Linkedin , Instagram.

  • @samirav608
    @samirav608 3 ปีที่แล้ว

    Great video, thanks for the simple and clear explanation of concepts

  • @utkarshtripathi2349
    @utkarshtripathi2349 3 ปีที่แล้ว

    The best video i have ever watched on twitter system design

  • @ibrahimshaikh3642
    @ibrahimshaikh3642 3 ปีที่แล้ว

    Thank u so much for such a detailed explanation of each important topic

  • @adilahmed4199
    @adilahmed4199 4 ปีที่แล้ว

    Amazing Man! instantly subscribed. Godspeed to you.

  • @hiteshbitscs
    @hiteshbitscs 5 ปีที่แล้ว +1

    The great information on twitter architecture....Keep up the good work.

  • @vatsalagrawal4102
    @vatsalagrawal4102 5 ปีที่แล้ว

    Very happy to see you pasted design diagram image too.. (y)

  • @babulbhanu8213
    @babulbhanu8213 3 ปีที่แล้ว

    I am gonna wish you teachers day forever . Thanks for awesome tutorial :)

  • @MrThepratik
    @MrThepratik 4 ปีที่แล้ว

    Really great video, in the upcoming ones could you spend some time explaining the intuition behind coming up with capacity & traffic estimates.

  • @mukeshbarman
    @mukeshbarman 5 ปีที่แล้ว

    Hi Naren, do you have any suggestion for a book/reading materials for learning high level design. What I am looking for is a systematic approach towards designing and basic principles listed down somewhere. Great videos though. keep doing them.

  • @shivaprasad.v.g7526
    @shivaprasad.v.g7526 3 ปีที่แล้ว

    awesome description Naren .

  • @KailashSharma-zv6lh
    @KailashSharma-zv6lh 3 ปีที่แล้ว

    @Naren L: Simply the best and smart. You have acquired such a great knowledge. Wow !!!

  • @nuclearpsyche
    @nuclearpsyche 4 ปีที่แล้ว

    Excellent and thorough explanation!

  • @xolanimaphumulo6820
    @xolanimaphumulo6820 2 ปีที่แล้ว

    Amazing video , I like how you explained the fanout concept and how you explained that some of the daemon processes are delegated to streaming technologies like kafka. Would you recommend for a start-up that is trying to save on hosting , to use background jobs/workers instead of using Kafka or Apache Storm?

  • @kumarmayank8832
    @kumarmayank8832 5 ปีที่แล้ว

    Hi Naren.... Nice and really informative videos !!! Would request you to put videos for 1) Travel Sites like makemytrip 2) Stock Exchange sites like : Dowjones , Sharekhan 3) Banking Sites - Barclays,ICICI.

  • @abhijeetkumar3569
    @abhijeetkumar3569 3 ปีที่แล้ว

    Hey Narendra, It's really a great explanation and it couldn't be more better. Also this makes perfect sense to me. The problem which I'm facing right now is with microservice architecture. I mean if the same has to be designed in a proper microservice architecture, how we are going to do that?
    Like in this case the same Redis cluster is shared across different services, which means tight coupling. I would be really thankful if you make a system design video of any system by following microservice architecture. I mean each module will have a context bound and data ownership.
    And if you already have any video available for the same, please point me to that.
    Thank you, keep up the great work!

  • @nandhakumarkr3147
    @nandhakumarkr3147 ปีที่แล้ว

    Thank you Narendra, your videos really helpful

  • @f.pulido440
    @f.pulido440 3 ปีที่แล้ว

    This gave me a huge insight, thank you.

  • @yuvinal
    @yuvinal 4 ปีที่แล้ว

    Great job. Please continue your work.

  • @supunkavinda8660
    @supunkavinda8660 5 ปีที่แล้ว +1

    keep it up bro. this is the nice video with very good explanation

  • @lookatamit
    @lookatamit 5 ปีที่แล้ว

    Quick question regarding search: Does Hashtable of index (word, ) stored in redis as well? I read the book System design Grokking. It said for search we may need index servers. Any idea why would a distributed cache not serve the purpose for accessing all tweets linked to a word.

  • @chandrakanthdudela5515
    @chandrakanthdudela5515 3 ปีที่แล้ว

    Hi, Thanks for the video!
    Question - to fan out the tweets to home timeline and user timeline, would each user be allocated some memory in Redis (like a Redis list) for doing this? In that case, are there so many active memory spaces allocated for the millions of users twitter has at any point of time? Thanks.

  • @jamessunderland9284
    @jamessunderland9284 4 ปีที่แล้ว +10

    Small nit pick, you want to reverse the order of your redis keys. +- is less efficient than -, think of redis keys as multi-column indices, if you put the random id in front your you effectively double the binary search time. The way you have it the order of your keys might looks like
    Current Redis
    ---------------------
    123-user
    124-tweet
    125-tweet
    126-user
    Should Be
    ----------------
    tweet-124
    tweet-125
    user-123
    user-126
    If the ratio of tweets to users is not 1:1 you will increase the user lookup time by a factor of the ratio

    • @BikasKatwalK
      @BikasKatwalK 4 ปีที่แล้ว +1

      In Redis is it hash-based lookup from K-V pair or does it use the binary search to find the cache names?

    • @jamessunderland9284
      @jamessunderland9284 4 ปีที่แล้ว +1

      Bikas Katwal that’s a good point. Redis runs in memory, any kv store that uses disk behind the scenes is usually using b-trees

  • @poonam-kamboj
    @poonam-kamboj 2 ปีที่แล้ว

    Nice, methodical approach

  • @life-is-cat
    @life-is-cat 4 ปีที่แล้ว +6

    I nailed Amazon system design interview question by watching your videos. Just wanted to say thank you and thank you.

  • @khalidelgazzar
    @khalidelgazzar 4 ปีที่แล้ว

    Great effort and superb video. Thank you

  • @rahulpareek1307
    @rahulpareek1307 5 ปีที่แล้ว

    Amazing Video.....Nice and simple explanation.

  • @ChitrankDixit
    @ChitrankDixit 5 ปีที่แล้ว

    very nice video, I regularly watch your videos for system designing or preparing myself for system design interviews. I also want to know what resource is best to understand the system design trends over the years. can you suggest some website or resource where we can find them.