Zoom System Design | WhatsApp / FB Video Calling System Design | System Design Interview Question

Sdílet
Vložit
  • čas přidán 7. 09. 2024
  • Solution for System Design Interview Question - "Design Zoom/ Webex/ WhatsApp Video Calling/ FB Messenger Video Calling or any similar Video Chat Application"
    Prerequisites:
    Netflix System Design @ • Netflix System Design ...
    WhatsApp System Design @ • WhatsApp System Design...
    How to select the right Database for a Large Scale System @ • Database Design Tips |...
    Summary of the video: www.codekarle....
    Architecture diagram: github.com/cod...
    Author: / sandeep1904
    If you like this video, please help us grow by sharing this video with your friends on Facebook, connections on LinkedIn and anyone who can benefit from this.
    PS: This is not the real architecture of any such platform. This is my take on how I would answer that problem.
    #codekarle #systemdesign #zoomsystemdesign #system #design #interview #amazon #faang #zoom

Komentáře • 172

  • @cosmos1651
    @cosmos1651 Před 3 lety +102

    Randomly clicked it.. and the clarity of explanation blown me away. You definitely are the best system design youtuber!!

    • @codeKarle
      @codeKarle  Před 3 lety +7

      Thanks!! Glad that you liked it!

  • @SimplyGagan
    @SimplyGagan Před 3 lety +17

    You are one of the best teachers in CZcams !! Your explanations, clarity of though process and effort of building the content is unmatched !! Thanks a lot.

  • @atintandon9624
    @atintandon9624 Před 3 lety +5

    Great overview of TCP/UDP - enough to understand the context and avoids the need to review those concepts separately

  • @AayushSaxena100
    @AayushSaxena100 Před rokem +1

    An absolute masterpiece. The moment when u said "this is called webRTC" shocked me in a positive way. I unknowingly got to learn something that I had been trying to learn from various other sources but didn't get the claririty I have got today. Cannot thank u enough.

  • @vaibhavbiyani6145
    @vaibhavbiyani6145 Před 3 lety +4

    Super detailed and informative. I hardly comment on YT and watch a 50+ minute video but this was nice. Loved it.

  • @gloriaodipo459
    @gloriaodipo459 Před 3 lety +4

    I've read the linked summary of the video article and I'm blown away. Thank you for breaking it down so well and so easily for one to understand. Good job! 👏

  • @ismailcenik8892
    @ismailcenik8892 Před 4 lety +16

    It is really a great job. I think this is the first time this topic has been explained although it is complicated. Please keep going.

    • @codeKarle
      @codeKarle  Před 4 lety +4

      Thanks! Glad that you liked it!

  • @rohittawde2759
    @rohittawde2759 Před 2 lety +3

    This series has best design videos I have seen so far! Love the level of details presented in this video as well. Respect!!! 🙌

  • @hayleyyin9354
    @hayleyyin9354 Před 2 lety +3

    Great explanation, I understood maybe 90% of it. It would help me with the rest 10% if there was subtitles helping me understand some of the words because I am not familiar with the speaking accent.

  • @skytechtalk
    @skytechtalk Před 3 lety +2

    Best youtuber for system design. God bless you!!

    • @codeKarle
      @codeKarle  Před 3 lety

      Thanks!! That is great to hear.
      Happy Learning, and do share our channel with your connections. It helps :)

  • @Enjoyablewalks
    @Enjoyablewalks Před 2 lety

    Damn .. I just got recommendation from Google.. Wow - learned so much....

  • @nshettys
    @nshettys Před 3 lety +6

    Brilliantly explained. I owe you a cake

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

      Thanks Nitesh!!
      We'll love a cake!!
      And if possible, we'll love it if you can spread the word about our channel among your friends/colleagues/Linkedin connections :)
      Link to the channel: czcams.com/users/codeKarle

    • @nshettys
      @nshettys Před 3 lety

      @@codeKarle For Sure

  • @Tubingonline1
    @Tubingonline1 Před 2 lety

    This is the best channel I have come across as far as software/web architecture is concerned. Thanks a lot for all your indepth and clear thoughts and articulation.

  • @sagartyagi5048
    @sagartyagi5048 Před 3 lety

    the way you explained WebRTC, you earned a FAN!

  • @sarthaktyagi1077
    @sarthaktyagi1077 Před 6 měsíci +1

    God sent you to explain System Design to us 🙏🏻

  • @alpacino3989
    @alpacino3989 Před 3 lety

    This is the best system design based channel. Every video teaches something new and amazing!

  • @user-vw9hl5qr8x
    @user-vw9hl5qr8x Před rokem

    The explanation of this complicated system is made simple and easy to understand. It's really impressive and definitely worth watching.

  • @yanwang2996
    @yanwang2996 Před 4 lety +6

    This was very informative and well prepared video. Continue the awesome work! Appreciate the hardwork gone behind making it!

    • @codeKarle
      @codeKarle  Před 4 lety +2

      Thanks!! Glad that you liked it :)

  • @gslayal
    @gslayal Před 3 lety

    You are definitely the best sys design youtuber. Thank you! I binge-watch your videos like Netflix.

  • @CarlosCoelhoLechner
    @CarlosCoelhoLechner Před 2 lety

    These videos are pure gold!
    Thank you so much for producing these, this channel is the best Sys Des content I've ever found!

  • @robertotomas
    @robertotomas Před 9 měsíci

    I totally loved this system design video. it starts with a strong technical argument for a web3-oriented design (p2p) instead of a monopolistic one. I'm not sure that it makes sense when the video stream is one to many, just like you said. If you do need a hosted conversation, that could be serviced on demand. But for a small number of connections across various regions globally, this is only minimally improved by a central host, if at all, bc including that central host also adds latency, just like you said.

  • @subhamchowdhury6607
    @subhamchowdhury6607 Před 2 lety

    You are God of System Design!! Take a bow!!!

  • @OffbeatTravelVK
    @OffbeatTravelVK Před 2 lety

    Best system design videos Ive seen on youtube, thank you so much

  • @nhienle5137
    @nhienle5137 Před 6 měsíci

    Thank you thank you for these vauable videos, I love all of them and all your sharing knowledge. It's an eye opening for me even I worked as a swe for more than 7 years

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

    i like the way you explain all the different pieces, pros & cons along with different use cases for each service. thanks for sharing and wanted to see more system design like google search, uber, and also from design large scale API. thanks

  • @manojjain3501
    @manojjain3501 Před 2 lety

    I swore , I am overwhelmed.... Blown the brain.. Oh Man too much to know for system design. You nailed it.

  • @vivekpandey9807
    @vivekpandey9807 Před 3 lety

    One of the best video with in-depth knowledge . Amazing

  • @user-dn6el9mp2e
    @user-dn6el9mp2e Před 6 měsíci

    Very clear explaination

  • @samarth919
    @samarth919 Před 4 lety +2

    Great content and very nice explanation in a simple manner. Keep up the good work

    • @codeKarle
      @codeKarle  Před 4 lety

      Thanks!! Glad that you liked it :)

  • @princekm5902
    @princekm5902 Před 2 lety

    Please create more videos.These are really helpful for interviews.Lot of things to learn.

  • @ritukothariable
    @ritukothariable Před 4 lety +4

    Another awesome video! Thanks a lot. "File creator" could be called "Archiving service" :)

    • @codeKarle
      @codeKarle  Před 4 lety

      Oh yeah, that's a better name. I'm bad with naming 😅

  • @hmmoniruzzaman8537
    @hmmoniruzzaman8537 Před 2 lety

    Also a very good explanation of how WebRtc works in general.

  • @ashutak
    @ashutak Před 2 lety

    Wonder ful explanation, one of the best and finer details about each step. More power to you man.

  • @ameyjain3462
    @ameyjain3462 Před 2 lety

    This looks like such a specific area for a system design. Someone knows or not knows unless they know abouit these protocols/networking problems etc. Thanks for the depth though.

  • @nareshsherwal9244
    @nareshsherwal9244 Před 2 lety

    Your videos have great detail which actually helps in understanding.
    And thanks for making such great videos

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

    thanks! itd be nice if you let us see the whole system design chart without you in video so i can screenshot it for reference. e.g. at 34:20 mark. Keep up good work!

  • @ankita4priya
    @ankita4priya Před 3 lety

    Awesome explanation!!!! The best system design You tube channel !!! Keep up the good work :)

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

    Simply superb!!!

  • @TheNitin1997
    @TheNitin1997 Před 3 měsíci

    this channel is a gold mine 👏

  • @pikugoud1358
    @pikugoud1358 Před 2 lety

    Brilliant. Comprehensive and simple. Teaching is an art. Keep it up.

  • @lakshyabansal609
    @lakshyabansal609 Před 3 měsíci

    A very complex and interesting system design problem use case has been tried to explain here. Kudos for that. However has feedback the knowledge seems more like learnt system design Vs how actually a Vedio conferencing would work.
    For example: at the end when you U1 and U2 can dynamically switch from P2P to call server, how would this work if the call is getting recorded. In that case both U1 and U2 have to send packets to call server to allow later saving info to a database.

  • @NarayananPrabath
    @NarayananPrabath Před 2 lety

    Please post more such content codekarle.

  • @nkadoor
    @nkadoor Před 2 lety

    A good explanation along with details of underlying technologies involved.

  • @hex-tech4171
    @hex-tech4171 Před 2 lety

    I have seen a couple of your videos and really liked it. Thanks for such informative videos.
    Please keep uploading such videos.

  • @prabinpanda2882
    @prabinpanda2882 Před 2 lety

    Really nice clearity

  • @ramkrishnakulkarni8289
    @ramkrishnakulkarni8289 Před 4 lety +2

    Awesome content. Leaned a lot and absolutely loved it.

    • @codeKarle
      @codeKarle  Před 4 lety +1

      Glad to hear that it was helpful :)

  • @prerakchoksi2379
    @prerakchoksi2379 Před rokem

    Aweysome explanation

  • @godolsss2139
    @godolsss2139 Před 4 lety +2

    extremely nice explanation!!!thanks a lot...keep them coming

    • @codeKarle
      @codeKarle  Před 4 lety

      Thanks for the good words. Do share the channel with your friends :)

  • @VV-sb1hs
    @VV-sb1hs Před rokem

    Extremely informative and well explained. Thank you for creating this!!

  • @smrtiatrey4632
    @smrtiatrey4632 Před 2 lety +3

    For connector : there is Protocol SIP which is widely used for any IP calling system.

    • @tupaiadhikari
      @tupaiadhikari Před 2 lety

      I think SIP is not a transport layer like TCP/UDP. SIP is only used for call establishment. Once call is established, the transport layer takes over for sending actual audio/video contents in the form of packets.

  • @shrinilthakkar4589
    @shrinilthakkar4589 Před 2 lety

    Awesome video. Brilliantly explained, first the concepts and then fit that into the complete architecture.

  • @atvasundhra8489
    @atvasundhra8489 Před 6 měsíci

    webrtc explanation was on point!

  • @uniquekatnoria5380
    @uniquekatnoria5380 Před rokem

    very well explained

  • @this.arunsaini
    @this.arunsaini Před rokem

    💣explanation ! swiftly explained the design.

  • @Mahidhoni5227
    @Mahidhoni5227 Před 4 lety +1

    Very well explained video @codeKarle. Sandeep would love a video on Identity/User and Auth Manager.

    • @codeKarle
      @codeKarle  Před 4 lety +1

      Thanks!! That's an interesting topic to cover. We'll try to do that in near future!

  • @MuraliSprofile
    @MuraliSprofile Před 4 lety +2

    Great Content 👍.
    Thank you for making this video.
    Could you also share your sources and how you learn about new systems?

  • @igrai
    @igrai Před 3 lety

    Liked the progression of the planning and proposing a solution, good stuff!

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

    please add live streaming part in the header, that could be a life saver for some people

  • @sumitkumar03
    @sumitkumar03 Před rokem

    Amazing...Too well explained. Thank you.

  • @amitmandliya6577
    @amitmandliya6577 Před 3 lety

    Thank you so much! I like the brief tips you add to the abstracted services to handle stuff.

  • @SandipDas123
    @SandipDas123 Před 3 lety

    Brilliant explanation. You deserve more likes

  • @prblsoni
    @prblsoni Před 2 lety

    Just one word "Incredible" 👍

  • @richardnorth1881
    @richardnorth1881 Před rokem

    Your videos are great- as many have said, you just need a better sound/microphone quality! Some words you say don't come through clearly, but otherwise, excellent content.

  • @nikitasinghchauhan6239
    @nikitasinghchauhan6239 Před 4 lety +2

    You explain so well . Keep going.☺️👍

    • @codeKarle
      @codeKarle  Před 4 lety

      Thanks for the kind words Nikita!

  • @manojgoyal-y3k
    @manojgoyal-y3k Před 28 dny

    great video

  • @phssyk2
    @phssyk2 Před 3 lety

    Awesome video. Loved the explanation and how the level of details were just right

  • @ayajamesaya
    @ayajamesaya Před rokem

    Thank you so much for making the article and the youtube video! The article is concise and covering so many real world situations. It helps me understand the video call system greatly. I hope more people can see this!
    Got one question too, on the live section, is there a reason why the 2nd set of call servers only adopt one specific format from transcoder output instead of working with multiple? Curious if it is for simplicity.

  • @udrush
    @udrush Před 2 lety

    Thanks for all your efforts making amazingly great system design content. Such a depth and detailed explanation!

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

    36:30 good tip about the video chunk sizes !

  • @akshaymonga
    @akshaymonga Před 2 lety

    @Sandeep Kaul: at 27:58 how is Peer-to-Peer OK ? Didn't we decide before that Peer-to-Peer without "Call Server" is not possible, due to things like Symmetric NAT etc ? Aren't we always supposed to use "Call Server" ?

  • @ZhiHan
    @ZhiHan Před 4 lety +1

    Very nice presentation. Thanks!

  • @subhashnambiar9
    @subhashnambiar9 Před 2 lety

    This is great. Thank you.
    Just a suggestion, you are too much in the video which create distraction from the diagram. Try stay aside and explain.

  • @rumtek3559
    @rumtek3559 Před 10 měsíci

    I am STUNned

  • @ketan4221
    @ketan4221 Před 4 lety +3

    @codeKarle Really like the initiative. Really nice content coming out from you. I have been thinking of how the AarogyaSetu app might have been built. Essentially, have you crossed paths with a Covid 19 patient in near past ( ~ close to a month worth of data ). If you could spare some time on coming up with a video for the same, would love to learn your take on the same. Let me know :) Thanks

    • @shubhankar915
      @shubhankar915 Před 4 lety

      I got this question in my recent Amazon System design round, so it would be relevant if you cover that.

  • @takobaba8616
    @takobaba8616 Před 2 lety

    sound is terrible hard to watch the whole thing but content wise thank you so much

  • @smirkedShoe
    @smirkedShoe Před rokem

    For a video data-packet transfer we are using UDP, is it possible to have a websocket connection over UDP ? Since, in the current design even the video packets are going through web socket handler ?

  • @SaiPavanPothuri
    @SaiPavanPothuri Před 2 lety

    Very well explained video
    Didn't understood at the first time. but after browsing some couple of articles on websocket, tcp and udp made me more understandable for this video.
    Could you make a system design video on Telegram ?
    i think the telegram architecture is different than that of whatsapp. ( because telegram group chats have thousands of users whereas whatsapp has minimum set of users in group ).

  • @mohitmangal4654
    @mohitmangal4654 Před 3 lety

    I really appreciate your work sir, really got to learn so much. Thank you

  • @saanikagupta1508
    @saanikagupta1508 Před 29 dny

    Why input manager sends it to call server directly? Should it not send to some kind of manager which passes it to transcoders and from there to call servers?

  • @niteshkumar-cu5qo
    @niteshkumar-cu5qo Před 10 měsíci

    In webRTC world when we share our screen, are there different channels of data from where the Camera, mike, and share screen data move? Because the screen share data part is not require high bandwidth and does zoom or other tools actually does it?

  • @rajankalra893
    @rajankalra893 Před 3 lety +2

    If connector sends the pair of PublicIP:Port to each of the user device, wouldn't there be an upper bound on number of devices that can connect as number of ports the router has? As each user device needs to have a unique pair of PublicIP:Port, which will actually differ due to different port each user is connecting by. What is the caveat I am missing?

    • @kartikdubey762
      @kartikdubey762 Před 2 lety

      Same Doubt! @codeKarle Could you throw some light on this

  • @sagarakshayan1184
    @sagarakshayan1184 Před 3 lety +2

    Overall good video , but don't block the complete architecture diagram while explaining like 33:20. Instead stand at the corner and explain it in detail

  • @shashankshekhar8970
    @shashankshekhar8970 Před 3 lety +2

    I was comparing the differences between live streaming and video conferencing and one major difference was Live streaming can have up to 15-20s of latency and thus can afford live transcoding. But how does transcoding happen in video conferencing, because we don't have that flexibility here, how do we handle efficient live transcoding?

    • @as-fk7fe
      @as-fk7fe Před 2 lety

      This is niether the correct architecture , nor the right way to depict a system design, but I appretiate the effort. Good initiative . Will be defenitely helpful for programmers.(not for architects :))

  • @praveenjain183
    @praveenjain183 Před 3 lety

    Thanks a lot for sharing this. Appreciate your efforts.

  • @SergeyZimin
    @SergeyZimin Před 2 lety

    Great content. The only complaint is about the sound quality. Please buy a high quality mic.

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

    please make quick comm. delivery systems like blinkit/ swiggy

  • @user-pq7wm2nj4d
    @user-pq7wm2nj4d Před měsícem

    any of your video which gives overview on kafka?

  • @orvillepinto3553
    @orvillepinto3553 Před 4 lety +3

    Great Content,Thank you 👍🏻Could you do System Design of Google Drive or DropBox like systems

  • @SaurabhGupta-iu4sy
    @SaurabhGupta-iu4sy Před 7 měsíci

    Why is the bandwidth better or there are lesser issues in call server connection than peer to peer connection?

  • @inspiretheday1394
    @inspiretheday1394 Před 4 lety +1

    You are doing a good job 👍🏻

  • @sreevanin3777
    @sreevanin3777 Před 2 lety

    Thanks Sandeep for a very tutorial with great clarity. One section, I could not understand where is the 'connector' hosted? Is it also another machine which the app on the device knows how to connect to?

  • @subbamatta1947
    @subbamatta1947 Před 4 lety

    Excellent explanation.

  • @N51280
    @N51280 Před 3 lety

    AWESOME.. super happy with your content. Thanks a lot :-)

  • @saanikagupta1508
    @saanikagupta1508 Před 29 dny

    How does TURN know it has to transcode? Does signaling inform it via HTTP request?

  • @sachinmamadapur3000
    @sachinmamadapur3000 Před 4 lety +1

    Nice Explanation ☺️

    • @codeKarle
      @codeKarle  Před 4 lety +1

      Thank you!! Lots more to come your way :)

  • @RahulRai2048
    @RahulRai2048 Před 4 lety +1

    wow. Awesome Video.

    • @codeKarle
      @codeKarle  Před 4 lety

      Thanks! Glad that you liked it 😊

  • @Sakshambhushan
    @Sakshambhushan Před 4 lety

    Really great video on webrtc...!!

  • @amithreat
    @amithreat Před rokem

    Thanks

  • @nileshkumarjaiswal9794

    Excellent System design video ..Do you have any series on Low level design or any plan to create video on that ?

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

    Nice!!