How to Optimize Network Performance for Web Apps? | Frontend Interview | Chakde System Design Ep.4

  Рет қаралды 32,557

Chirag Goel

Chirag Goel

Күн бұрын

This episode is part of Performance optimization techniques for web apps, which is covered in multiple episodes of Chakde System Design.
0:00 Introduction
0:30 Overview of Network Optimization Techniques
2:56 Load Javascript Asynchronously
8:50 Lazy attribute [Lazy loading]
12:58 Intersection Observer [Lazy loading]
17:44 Content Visibility [Lazy loading]
20:19 Serving Critical CSS [Lazy loading]
22:57 Resource Hinting
32:20 Service Worker
42:24 CSR, SSR, Prerendering, Static SSR
50:46 Compression
53:57 Layout Shifts & repaints
🔴 How to Optimize Network Performance for Web Apps? • How to Optimize Networ...
🔴 How to Optimize Assets Performance for Web Apps • How to Optimize Assets...
🔴 You Still Need To Learn Javascript! Performance Optimization | Memory Leaks • You Don't Know Javascr...
In case you have missed other episodes of the #ChakdeSystemDesign series, do check out :
• Frontend System Design...
⭐️ Courses: learnwithchirag.engineerchira...
Connect to learn & grow together in our career❤️:
✅ Linkedin: / engineerc. .
✅ Twitter: / engineerchirag
✅ Instagram: / engineerchirag
#Performance #Optimization #PerformanceOptimization #WebApps #NetworkOptimization #SystemDesign #FrontendSystemDesign #frontend #interview #frontendInterview #interviewQuestions

Пікірлер: 122
@bookishbureaucrat
@bookishbureaucrat 2 жыл бұрын
I was looking for these things, but it was always in small chunks in different places. Good to have all of it in one video. Thanks for the effort Chirag!
@engineerchirag
@engineerchirag 2 жыл бұрын
Glad I could help @ashim. Keep watching and sharing #chakdeSystemDesign
@soumakmaji2766
@soumakmaji2766 2 жыл бұрын
Thanks, Chirag excellent explanation looking forward to more great content in the upcoming days.
@VijayKumar-vv6yw
@VijayKumar-vv6yw 2 жыл бұрын
Awesome content Chirag ! Love the breadth and the depth ! Explained succinctly ! ! Keep them coming
@engineerchirag
@engineerchirag 2 жыл бұрын
Thank you! Will do! More in pipeline. Keep watching #chakdeSystemDesign
@shobhitgarg6897
@shobhitgarg6897 Жыл бұрын
The way you teach these concepts is just awesome...Thanks for creating such a great content.
@engineerchirag
@engineerchirag Жыл бұрын
It's my pleasure. Keep watching #chakdeSystemDesign
@RajnishKumarlive
@RajnishKumarlive Жыл бұрын
This whole series is on another level. I cannot thank you enough! 🙌
@engineerchirag
@engineerchirag Жыл бұрын
Glad you enjoy it! Do share it and help me to make it big ❤️🙏
@RajnishKumarlive
@RajnishKumarlive Жыл бұрын
@@engineerchirag 100%. I ask everyone I know to look at this series.
@user-lw2mk2yz8b
@user-lw2mk2yz8b 5 ай бұрын
Liked last part "render cycle" you covered. Basically omitting layout setup. I was not aware of this. Thanks :)
@engineerchirag
@engineerchirag 5 ай бұрын
Glad it was helpful!
@priyasivakumar3607
@priyasivakumar3607 2 жыл бұрын
you nailed it. Got to learn a lot of new things in this 1 hr video. Thanks Chirag
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks Priya. Keep watching #chakdeSystemDesign and do share it in your network 🙂
@nikhil6842
@nikhil6842 Жыл бұрын
your channel is pure gem. Thanks for creating such great and easy to understand content
@engineerchirag
@engineerchirag Жыл бұрын
Glad you think so! Keep watching and sharing #chakdeSystemDesign
@lksjfadlk
@lksjfadlk 2 жыл бұрын
This is great!!
@kevinmaria2456
@kevinmaria2456 2 жыл бұрын
This video is super helpful. Great, thanks dude 🙏🙏👏👏. Do more videos to the community 👍
@engineerchirag
@engineerchirag 2 жыл бұрын
More to come! Thanks Kevin. Keep watching #chakdeSystemDesign and do share it in your network 🙂
@shivaliraghav8524
@shivaliraghav8524 Жыл бұрын
This series is great!! Must watch for all frontend devs
@engineerchirag
@engineerchirag Жыл бұрын
Awesome ❤️ Help me to spread the series 🙏
@aburayhanprince8164
@aburayhanprince8164 2 жыл бұрын
I can't thank you enough. I just started my career as Front End Engineer.
@engineerchirag
@engineerchirag 2 жыл бұрын
Great @abu. Welcome to Frontend community. Long way to go!. Keep watching @chakdeSystemDesign
@miteshkumar3757
@miteshkumar3757 2 жыл бұрын
Bro after watching this video , became fan of you . Please make more and more videos , your videos and content is of highest quality .
@engineerchirag
@engineerchirag 2 жыл бұрын
Thank you so much 😀I never thought folks will become my fan 😂. I'm glad 🙏
@kapilthukral618
@kapilthukral618 Жыл бұрын
Great Content! respect the efforts you have put in.
@engineerchirag
@engineerchirag Жыл бұрын
Glad you enjoy it!
@YuHsinShih
@YuHsinShih Жыл бұрын
Very useful information to catch up with the latest technology. Thank you for sharing!
@engineerchirag
@engineerchirag Жыл бұрын
Glad it was helpful! 🙏
@pranshuchittora5444
@pranshuchittora5444 2 жыл бұрын
A real gold in the sea of noise. Keep making such awesome videos.
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks Pranshu, I'm glad you think so. I will need support to make it reachable to more audidence. Thanks in advance!
@deepaknegi4385
@deepaknegi4385 2 жыл бұрын
Chirag bhai keep it up!! Kudos to you for bringing up this topic and you explained it really well.
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks Deepak. I'm glad you liked it. Keep watching. Pls do share it in your network ☺️
@naruto5437
@naruto5437 Жыл бұрын
what an awesome channel...finally advance frontend stuff
@engineerchirag
@engineerchirag Жыл бұрын
Thanks 🙏
@madhurya141292
@madhurya141292 8 ай бұрын
Phenomenal stuff!
@engineerchirag
@engineerchirag 8 ай бұрын
Thanks a ton 😊
@tushar54983
@tushar54983 Жыл бұрын
This is years of knowledge I got to know by crawling so many resources all explained in 1 video. I would love an in depth video series on each of these modern web performance topics in future. Thank you for this
@engineerchirag
@engineerchirag Жыл бұрын
Will do! 👍 Keep watching, keep growing 🚀
@tushar54983
@tushar54983 Жыл бұрын
1 thing I noticed, you said while prefetching, resource is not going to execute. But, execution won't happen for neither preload nor prefetch. The difference b/w them is that preload is a directive/command to browser while prefetch is merely a suggestion
@marhawk6468
@marhawk6468 Жыл бұрын
As someone who has frontend experience but looking to improve my skills….this is great. TY!
@engineerchirag
@engineerchirag Жыл бұрын
Glad it was helpful! ❤️🙏
@gauthamvijayan
@gauthamvijayan 8 ай бұрын
Top notch content. Absolute Gem😇
@engineerchirag
@engineerchirag 8 ай бұрын
Thanks a ton ❤️
@mdnawazishalam5222
@mdnawazishalam5222 2 жыл бұрын
Can thank you enough for the great video
@engineerchirag
@engineerchirag 2 жыл бұрын
My pleasure! @nawazish
@forceboxed
@forceboxed Жыл бұрын
Good collection of optimizations. I learned many new things.
@engineerchirag
@engineerchirag Жыл бұрын
Glad it was helpful, Abhishek!
@prakashnaikwadi
@prakashnaikwadi Жыл бұрын
Thank you for the videos, please make more 😊
@engineerchirag
@engineerchirag Жыл бұрын
More to come! Keep watching 😍
@bhaveshgupta7736
@bhaveshgupta7736 2 жыл бұрын
again thanks for this, even I have applied concept of lazy loading, resource hinting in my project...
@engineerchirag
@engineerchirag 2 жыл бұрын
Glad to help!
@yadwindersingh9722
@yadwindersingh9722 Жыл бұрын
Very informative series, Please make more such type of contents 🥳
@engineerchirag
@engineerchirag Жыл бұрын
Thank you! Will do!
@aryanrahman3212
@aryanrahman3212 9 ай бұрын
Your knowledge is exceptional sir thank you for sharing
@engineerchirag
@engineerchirag 8 ай бұрын
So nice of you ❤️🙏
@ajayprakash1167
@ajayprakash1167 4 ай бұрын
Need more content like this which are not available in the you tube. Many jobless people and waste people are publishing wrong content video. Ur video are awesome. Try to make production level application for entire frontend backend and db
@engineerchirag
@engineerchirag 4 ай бұрын
More video to come. Need lot of your support to make this video reach more curious developer like you. Thanks in advance!
@gururajchadaga
@gururajchadaga 7 ай бұрын
Hi Chirag, dns-prefetch is not a fallback for pre-connect. dns-prefetch just does the DNS lookup in advance, and it does not establish a connection with the crossorigin. and rel="prerender" has been deprecated.
@amitankur11
@amitankur11 Жыл бұрын
Awesome work Chirag, you are really a GEM :) 😃
@engineerchirag
@engineerchirag Жыл бұрын
Thank you so much 😀
@makkarpuneet
@makkarpuneet 2 жыл бұрын
thanks Chirag. lot of learnings from the video.
@engineerchirag
@engineerchirag 2 жыл бұрын
Great to know that @puneet. Keep watching and spreading love for #chakdeSystemDesign 🙂
@deepamohan5177
@deepamohan5177 Жыл бұрын
It is always better to use async and defer for loading the script file which will significantly reduce the DOM Load time than even adding the script tag below the body. Thanks Chirag for the awesome content.
@engineerchirag
@engineerchirag Жыл бұрын
Thanks for watching 👍
@yashpreetbathla4653
@yashpreetbathla4653 2 жыл бұрын
Awesome content bhaiya , really appreciate your efforts ! Keep making such knowledgable content.
@engineerchirag
@engineerchirag 2 жыл бұрын
Yeah, keep watching #chakdeSystemDesign. Pls help me to spread #chakdeSystemDesign series to more folks 🙂🙏
@yashpreetbathla4653
@yashpreetbathla4653 2 жыл бұрын
@@engineerchirag for sureeee
@Bakwasteacher
@Bakwasteacher 2 жыл бұрын
I didn’t got single concept .. but seeing my “bachpan ka yrr” on screen feels good … god bless u .. keep growing 😎
@SachinDolta
@SachinDolta Жыл бұрын
this is GOLDEN stuff
@engineerchirag
@engineerchirag Жыл бұрын
I'm glad Sachin, you think so 😍
@scalpertrader61
@scalpertrader61 2 жыл бұрын
Quality Content
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks Scalper. Keep watching #chakdeSystemDesign and do share it in your network 🙂
@aurangzebhusain8366
@aurangzebhusain8366 Жыл бұрын
One day this series is going to cross million views ❤. Its very obvious from the content quality. This is pure gold❤‍🔥. Looking forward to complete the whole playlist.
@engineerchirag
@engineerchirag Жыл бұрын
Thank you so much 😀 Need your support to make it happen 🙏
@swapnilrenge335
@swapnilrenge335 Жыл бұрын
I always wanted to try out these things but never understood these concepts due to the technical jargon used in the docs and articles, Thanks a lot for coming up with this brilliant series and taking efforts to explain the concepts in so simple ways. Also I don't know if someone has observed this but I think caching using CDN is skipped. Correct me If I am wrong.
@engineerchirag
@engineerchirag Жыл бұрын
Glad I could help! I will be covering CDN as part of build time optimization.
@namanjiandani4593
@namanjiandani4593 Жыл бұрын
Thanks!
@engineerchirag
@engineerchirag Жыл бұрын
This means a lot to me ❤️🙏
@pranjalagnihotri6072
@pranjalagnihotri6072 Жыл бұрын
Netflix is not pure "SSR" and it also uses "CSR" in a way, as when the static page (pre-rendered on the server) is painted on the browser, the user can go and play the content which is dynamic and JS takes care to fetch and load it in the media frame
@RohitYadav-bo9mm
@RohitYadav-bo9mm Ай бұрын
Hey Chirag, this helps a lot but It would have been a lot better if you could have given examples and implemented that in React projects. This way, we would also know its implementation in our projects.
@pratyushkaran
@pratyushkaran Ай бұрын
If you put the script tag at the bottom of the body tag, it will first parse the HTML completely and then fetch the JavaScript file and execute it and then the DOMContentLoaded event will fire. In the normal vs async vs differ, you forgot to mention one point that in async, scripts are not guaranteed to execute in order whereas in defer they are guaranteed to execute in order
@harshsinha7642
@harshsinha7642 2 жыл бұрын
Very well explained!! . thank you so much for the insight details about performance optimization. I am currently working on react application, could you please make video on how we make optimize react application?
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks Harsh, will plan framework specific optimization soon
@harshsinha7642
@harshsinha7642 2 жыл бұрын
@@engineerchirag Thank you !!
@forceboxed
@forceboxed Жыл бұрын
@22:07 onload is called when the stylesheet has been loaded, NOT on document load as you said.
@MrAbhay0007
@MrAbhay0007 2 жыл бұрын
Great Video! One correction - "preload" attribute only downloads the assets and doesn't execute it immediately.
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks for highlighting it, Abhay. It loads and just caches it. I have rectified the video.
@js__talks
@js__talks 2 жыл бұрын
I really like your videos on system design. why the way which tool you are using here for writing and drawing.
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks JS fever.
@viditgoel2909
@viditgoel2909 7 ай бұрын
Thanks a lot sir for this awesome series, but I wonder if it is completed? Also as you've mentioned in earlier comments that you will be making optimisation techniques specific to react, any update on those?
@engineerchirag
@engineerchirag 6 ай бұрын
Thanks for the feedback 🙂. Wait for a big announcement 😀
@viditgoel2909
@viditgoel2909 6 ай бұрын
@@engineerchirag @akshaymarch7 (Akshay saini)revealed the big surprise and that's one of the best things you both could've done for us, super excited to join the course. Thanks a lot both to both of you in advance. ❤️❤️
@venkateshpachigulla
@venkateshpachigulla 2 жыл бұрын
@chirag please add timestamps so that it will helpful to refer again as video length is more.
@engineerchirag
@engineerchirag 2 жыл бұрын
Thanks for suggestion. Added the timestamps. Keep watching #chakdeSystemDesign
@vasudevrao1434
@vasudevrao1434 2 жыл бұрын
Is it possible to get that ppt slides ? Would be really helpful to brush up them before interview ?
@engineerchirag
@engineerchirag 2 жыл бұрын
Vasudev, I would suggest to create your known notes in your wording. This will help to remember it. :)
@abhishekdhillon7110
@abhishekdhillon7110 9 ай бұрын
I feel that you unnecessarily use analogies sometimes and things would be a lot clearer if you just explain things to the point. In the layout shifts and repaints, you spoke so much about building construction that you missed out on few of the important concepts that would have easily been mentioned if you had spoken to the point.
@siddharthjoshi3328
@siddharthjoshi3328 Ай бұрын
Agreed to your point but Those unnecessary analogies are important to know for the interviews otherwise they don't take you for a knowledgeable candidate and can you please mention the points that he missed according to you. It'll be helpful.
@4444-c4s
@4444-c4s 4 ай бұрын
just reading what's in the flow charts...will be better if each topic has a separate video with real demonstration with code. BTW good video compared to other creators
@engineerchirag
@engineerchirag 2 ай бұрын
Thanks. Feedback noted!
@4444-c4s
@4444-c4s 2 ай бұрын
@@engineerchirag You keep constantly improving ❤️❤️❤️ I like this about you 😍
@kanishkbadola
@kanishkbadola 17 күн бұрын
Really liked the topics you covered but the explanation could have been better. Most of the time I was confused with the explanation and have to watch another video to understand the concept, but thanks for listing those topics here.
@engineerchirag
@engineerchirag 5 күн бұрын
Thanks for feedback
@pratyushkumar7999
@pratyushkumar7999 Жыл бұрын
can you please make videos of implementing these technique in details with examples😅
@engineerchirag
@engineerchirag Жыл бұрын
It's in pipeline, keep watching #chakdeSystemDesign 🚀
@coolme7437
@coolme7437 7 ай бұрын
What's the difference b/w if we add 'defer' in the and if we write the at the bottom?
@engineerchirag
@engineerchirag 6 ай бұрын
Both using the defer attribute and placing the tag at the bottom of the HTML document can achieve deferred script execution, allowing for faster page rendering.
@Ashish-_-
@Ashish-_- 4 ай бұрын
I believe adding defer will help in the script downloading in parallel due to the prescanner
@pramithasdhakal5367
@pramithasdhakal5367 Ай бұрын
The preload does not execute the script actually. According to the documentation, even though the name contains the term load, it doesn't load and execute the script but only schedules it to be downloaded and cached with a higher priority. Prefetch is used for improving the load time of subsequent pages while preload works best on critical resources for the current page
@4444-c4s
@4444-c4s 3 ай бұрын
How this is relevant in Modern JS Frameworks like React, Angular?
@engineerchirag
@engineerchirag 2 ай бұрын
Fundamentals remains the same.
@ganeshshetty8441
@ganeshshetty8441 Жыл бұрын
Hi Guys , Lets make this channel very famous
@engineerchirag
@engineerchirag Жыл бұрын
Thanks a ton Ganesh. Need more support for the channel. Thanks in advance 🙏🙂💖
@susmitamitra3955
@susmitamitra3955 2 жыл бұрын
ye ho chuka hai kya real life me party me jate huye bike saaf karna?!
@engineerchirag
@engineerchirag 2 жыл бұрын
I think, it's story of most of the boys 😜
@codedusting
@codedusting 2 жыл бұрын
NextJS optimization? Because these techniques cannot always be used in such indepth control!
@engineerchirag
@engineerchirag 2 жыл бұрын
I haven't covered any framework level optimization. But will be covering them soon. Knowing fundamentals is important. Some time these are supported out of box by framework, else we can implement them.
@RajYadav-yh7vv
@RajYadav-yh7vv 8 ай бұрын
not useful video, no specific practical information #time wasting
@engineerchirag
@engineerchirag 8 ай бұрын
Thanks for the view
@shagunpreetsingh7105
@shagunpreetsingh7105 2 ай бұрын
Hey God, Bless this channel with lakhs of subscribers
@engineerchirag
@engineerchirag 2 ай бұрын
Thanks a ton ❤️❤️❤️❤️❤️❤️❤️❤️
Heartwarming moment as priest rescues ceremony with kindness #shorts
00:33
Fabiosa Best Lifehacks
Рет қаралды 38 МЛН
Front End System Design Fundamentals (All In One Comprehensive Guide)
37:50
Front-End Performance Optimization: Techniques and Tools
1:40:31
[Front-End System Design] - Chat application
44:44
Front-End Engineer
Рет қаралды 29 М.
Google Frontend Interview With A Frontend Expert
47:59
Clément Mihailescu
Рет қаралды 1 МЛН
Heartwarming moment as priest rescues ceremony with kindness #shorts
00:33
Fabiosa Best Lifehacks
Рет қаралды 38 МЛН