System design interview: Scale to 1 million users

Sdílet
Vložit
  • čas přidán 27. 07. 2024
  • ► WATCH LIVE: twitch.com/johncodes
    ► Twitter: / johncodezzz
    ► Home page: johncodes.com
    ► Email me: hello@johncodes.com
    Complex system design interviews are ambiguous, challenging parts of the software engineering interview process. There are no real clear cut answers and it's usually much more of a "conversation" than anything. This video is the beginning of a mini series I'll be doing on system design interviews and how you can prepare for them. We will cover the basics, how to approach a system design interview, and how to answer the "scale to 1 million users" question. Subscribe to catch the other videos!!
    #johncodes
    🚀 SUMMARY:
    In this video, we go over the Software engineer system design interview, basic concepts and strategies, and how you can answer the "scale to 1 million users" question. Scaling to 1 million users is no trivial thing and we'll apply the system design interview concepts to get through upgrading an arbitrary system.
    ⏰ TIMESTAMPS:
    00:00 Intro skit
    00:12 What are system design interviews?
    02:03 Strategy and concepts
    08:24 Scale to 1 Million users - single server
    14:20 Vertical vs Horizontal scaling
    16:16 Scaling databases
    18:51 Scaling servers
    21:45 Content Delivery Network
    23:32 Scaling data-centers
    27:57 Even more scaling!
    28:27 Conclusion
    🎵 MUSIC CREDITS:
    - Project AER - Likelife
    - Provided by Lofi Records
    - Watch: • Project AER - Likelife
    - Download/Stream: fanlink.to/GrowthPatterns
    🤔 About:
    Hi all, I’m John, an experienced software engineer and open source software enthusiast / contributor. I make fun and informative videos about tech, engineering, productivity, and life! Like, comment, and subscribe for more!
  • Věda a technologie

Komentáře • 41

  • @JohnCodes
    @JohnCodes  Před 3 lety +1

    Thank you all for being here! More system design interview videos to come! Make sure to sub for those videos coming in the next few weeks

  • @amypellegrini1732
    @amypellegrini1732 Před rokem +1

    I find amazing how this topic is most of the times approached as an "interview question" without realising that eventually you'll HAVE TO implement that system (or a part of it, in most cases). I find much more interesting and useful to approach the problem as questions on their own. "How do you scale to 1M users?" question in a system will make you scratch your head for quite a while.

  • @aliadel1723
    @aliadel1723 Před měsícem

    Finally A good channel for SD

  • @chathurangasamarakoon936

    It's really a Good one John. Greatly appreciate it.

  • @techysam-bl9mk
    @techysam-bl9mk Před rokem

    Very nicely explained @John - Thanks for the deep analysis on Scaling

  • @SentryProductions1
    @SentryProductions1 Před rokem

    Nice clean video ! Would like to add that horizontal scaling indeed has some disadvantages such as data consistency challenges as well as logic required for partitioning - however the value often precedes the overheads!

  • @thilakrajm002
    @thilakrajm002 Před 2 lety

    Thanks for the video! Very concise and explained with nice diagrams.

  • @cody_codes_youtube
    @cody_codes_youtube Před 3 lety +3

    I feel like this section needs to be a bigger part of the interview process. Thanks for the deep dive. Algos aren't always more important than understanding the system.

    • @JohnCodes
      @JohnCodes  Před 3 lety +1

      Yeah, I completely agree. I think they will be more and more important as systems get more and more complex and more abstract. It's less important to know how to code some algorithm vs being able to put together a complex distributed system.

  • @sm5172
    @sm5172 Před 3 lety

    Great topic and presentation, thank you! I'm looking forward to the next episodes in the series. By the way, I love the chill background music - many people overdo it but yours is just right! :)

    • @JohnCodes
      @JohnCodes  Před 3 lety +1

      Ha thanks! A low-pass on the music helps alot so it's not too loud. More to come soon!!

  • @akhilnistala7067
    @akhilnistala7067 Před 2 lety

    watching this 30m before my interview, feeling very confident now and fully ready to bomb it

  • @plashless3406
    @plashless3406 Před rokem

    This is really amazing.

  • @pavel.pavlov
    @pavel.pavlov Před 5 měsíci

    Finally a decent System design chanel! Btw you still write like a medical pro :D

  • @bgskv
    @bgskv Před rokem

    Great video!

  • @maheshhudali792
    @maheshhudali792 Před 3 lety

    Great video. You have a very cool way of talking, understood every bit of this video.

    • @JohnCodes
      @JohnCodes  Před 3 lety

      Ahhh thanks so much and thanks for watching!!

  • @petredanionescu
    @petredanionescu Před 7 měsíci

    I enjoyed your video. Will you continue the series?

  • @DavidXNewton
    @DavidXNewton Před 5 měsíci

    Thanks, currently two hours away from the first system design interview I've had to do in ten years and this is a great overview :)

    • @DavidXNewton
      @DavidXNewton Před 5 měsíci

      Update! I failed

    • @rajac9783
      @rajac9783 Před měsícem

      @@DavidXNewtonhey!! wat happened? Wat scenario you got?

  • @onyxsolace5398
    @onyxsolace5398 Před rokem

    great vid thanks! Wish there was a little more detail, like answering a "how would you design [x]? question.

  • @AdrienAranda
    @AdrienAranda Před 2 lety

    Hello! May I ask whats stateless? also, I didnt quite understand the advantage of having an independent DB for user sessions. Thanks for your videos!

  • @camiloromero7633
    @camiloromero7633 Před 3 lety

    Man, I'm already becoming a fanboy of your channel 😂

    • @camiloromero7633
      @camiloromero7633 Před 3 lety

      Keep up with that great content!

    • @JohnCodes
      @JohnCodes  Před 3 lety +1

      One of us! One of us!!
      Thanks for being here :D So happy you're enjoying it

  • @shubhamanand712
    @shubhamanand712 Před rokem +1

    Hi John. Amazing Vedio. Any Books on system design that you recommend reading?

  • @mitotv6376
    @mitotv6376 Před rokem

    Nice

  • @roopkishanbodepudi784
    @roopkishanbodepudi784 Před 2 lety +1

    John, I have a question in terms of multiple data centers. When you say multiple data centers I hope they have their own database instances and app instances. How data will be synced between two data centers if one of the data centers goes down.?

    • @JohnCodes
      @JohnCodes  Před 2 lety

      Good question - you would need eventual consistency across all instances of your datacenter. So you'd have to build some kind of system that would update those database instances outside of your datacenter. There's lots of tradeoffs to different approaches, but in theory, you'd want eventual consistency across all instances as quickly as possible to prevent data loss

    • @conceptrat
      @conceptrat Před 2 lety

      @@JohnCodes Wouldn't the real answer be something like load balancing and replication? The only real difference to a VM instance is the distance/routes. Data consistency is a given. You can't have the data being out of sync for the systems that are available and the unavailable systems should be synced as soon as they come back online and brought back into production once back in sync and usually not before.

  • @viniciusnlage
    @viniciusnlage Před rokem

    👍👍

  • @IrishJonathanRoddy
    @IrishJonathanRoddy Před 3 lety

    Hi from Ireland

    • @JohnCodes
      @JohnCodes  Před 3 lety

      Helloooo!! Thanks for stopping by :D

  • @ap_0011
    @ap_0011 Před 2 lety

    Why not just use cloud infrastructure and let it handle a million or a billion users ! Wait.... the follow up question would be how to design such a cloud infrastructure ??

    • @telnet8674
      @telnet8674 Před 2 lety +1

      cloud is not a magic pill dude

    • @ap_0011
      @ap_0011 Před 2 lety

      @@telnet8674 It is, if you want high scalability and availability.

  • @kamalbehboudi4414
    @kamalbehboudi4414 Před 2 lety

    So many ads

  • @peacephinix1831
    @peacephinix1831 Před 4 měsíci

    dont add music

  • @RAJEESHMY
    @RAJEESHMY Před rokem

    ഇല്ല ടീച്ചർ, ആ സ്ത്രീ പോലും സ്വയം ചിന്തിക്കുന്നു പോലും ഉണ്ടാവില്ല ഇവിടെ അമേരിക്കയിൽ വന്നത് കൊണ്ടാണ് എനിക്ക് ഇത് പോലെ അവസരം കിട്ടിയത് എന്ന്. അത്രക്ക് നന്ദി കെട്ട വർഗ്ഗം ആണിത്