Zoom System Design | WhatsApp / FB Video Calling System Design | System Design Interview Question
Вставка
- Опубліковано 10 лют 2025
- 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
Randomly clicked it.. and the clarity of explanation blown me away. You definitely are the best system design youtuber!!
Thanks!! Glad that you liked it!
You are one of the best teachers in UA-cam !! Your explanations, clarity of though process and effort of building the content is unmatched !! Thanks a lot.
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.
Super detailed and informative. I hardly comment on YT and watch a 50+ minute video but this was nice. Loved it.
Great overview of TCP/UDP - enough to understand the context and avoids the need to review those concepts separately
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! 👏
the way you explained WebRTC, you earned a FAN!
Damn .. I just got recommendation from Google.. Wow - learned so much....
Thanks
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.
Thanks! Glad that you liked it!
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.
Best youtuber for system design. God bless you!!
Thanks!! That is great to hear.
Happy Learning, and do share our channel with your connections. It helps :)
You are definitely the best sys design youtuber. Thank you! I binge-watch your videos like Netflix.
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.
This series has best design videos I have seen so far! Love the level of details presented in this video as well. Respect!!! 🙌
These videos are pure gold!
Thank you so much for producing these, this channel is the best Sys Des content I've ever found!
This is the best system design based channel. Every video teaches something new and amazing!
One of best design video for video calling/live streaming.
As always, great explanation. Clear almost all the doubts.
But I have one question...
How does client and call server communicate with each other? Socket/WebRTC?
I'll check on the internet about this. Answer in the reply would help others...
Brilliantly explained. I owe you a cake
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: ua-cam.com/users/codeKarle
@@codeKarle For Sure
The explanation of this complicated system is made simple and easy to understand. It's really impressive and definitely worth watching.
Best system design videos Ive seen on youtube, thank you so much
You are God of System Design!! Take a bow!!!
I swore , I am overwhelmed.... Blown the brain.. Oh Man too much to know for system design. You nailed it.
God sent you to explain System Design to us 🙏🏻
This was very informative and well prepared video. Continue the awesome work! Appreciate the hardwork gone behind making it!
Thanks!! Glad that you liked it :)
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
One of the best video with in-depth knowledge . Amazing
Awesome explanation!!!! The best system design You tube channel !!! Keep up the good work :)
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.
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
Wonder ful explanation, one of the best and finer details about each step. More power to you man.
this channel is a gold mine 👏
Your videos have great detail which actually helps in understanding.
And thanks for making such great videos
Brilliant. Comprehensive and simple. Teaching is an art. Keep it up.
Brilliant explanation. You deserve more likes
Please create more videos.These are really helpful for interviews.Lot of things to learn.
I have seen a couple of your videos and really liked it. Thanks for such informative videos.
Please keep uploading such videos.
Extremely informative and well explained. Thank you for creating this!!
Amazing...Too well explained. Thank you.
💣explanation ! swiftly explained the design.
Great content and very nice explanation in a simple manner. Keep up the good work
Thanks!! Glad that you liked it :)
Just one word "Incredible" 👍
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.
Liked the progression of the planning and proposing a solution, good stuff!
Best Explaination So far
Awesome video. Brilliantly explained, first the concepts and then fit that into the complete architecture.
Also a very good explanation of how WebRtc works in general.
A good explanation along with details of underlying technologies involved.
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!
You explain so well . Keep going.☺️👍
Thanks for the kind words Nikita!
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 ).
webrtc explanation was on point!
Simply superb!!!
Awesome content. Leaned a lot and absolutely loved it.
Glad to hear that it was helpful :)
Awesome video. Loved the explanation and how the level of details were just right
36:30 good tip about the video chunk sizes !
extremely nice explanation!!!thanks a lot...keep them coming
Thanks for the good words. Do share the channel with your friends :)
Please post more such content codekarle.
Another awesome video! Thanks a lot. "File creator" could be called "Archiving service" :)
Oh yeah, that's a better name. I'm bad with naming 😅
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.
@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" ?
Really nice clearity
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.
Great Content 👍.
Thank you for making this video.
Could you also share your sources and how you learn about new systems?
Thanks for all your efforts making amazingly great system design content. Such a depth and detailed explanation!
very well explained
please add live streaming part in the header, that could be a life saver for some people
Very clear explaination
Thank you so much! I like the brief tips you add to the abstracted services to handle stuff.
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 ?
I really appreciate your work sir, really got to learn so much. Thank you
Great content. The only complaint is about the sound quality. Please buy a high quality mic.
AWESOME.. super happy with your content. Thanks a lot :-)
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?
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.
Aweysome explanation
Very well explained video @codeKarle. Sandeep would love a video on Identity/User and Auth Manager.
Thanks!! That's an interesting topic to cover. We'll try to do that in near future!
Thanks a lot for sharing this. Appreciate your efforts.
Very nice presentation. Thanks!
Thanks!
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.
You are doing a good job 👍🏻
Thanks 🙂
Excellent System design video ..Do you have any series on Low level design or any plan to create video on that ?
great video
any of your video which gives overview on kafka?
Really great video on webrtc...!!
Why is the bandwidth better or there are lesser issues in call server connection than peer to peer connection?
For connector : there is Protocol SIP which is widely used for any IP calling system.
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.
Nice Explanation!
can you also do some videos to understand the basics?
Excellent explanation.
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
Great perfect Content 👍.
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?
I am STUNned
Nice Explanation ☺️
Thank you!! Lots more to come your way :)
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?
Same Doubt! @codeKarle Could you throw some light on this
Great Content,Thank you 👍🏻Could you do System Design of Google Drive or DropBox like systems
Sure!
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?
great work, keep on
Great job! Executed like a tactical operation. Is there a book you recommend to read for learning some of this stuff?