Dmitriy Zhiganov
Dmitriy Zhiganov
  • 16
  • 65 766
[Frontend System Design] Web performance
If you’re new to my channel, my name is Dima. I’m a Senior Frontend developer based in Berlin. On this channel, I talk about frontend architecture, technical interviews, and software development careers.
-------
Playlists:
🧩 th-cam.com/play/PL4OG1laG0gW9BNGye9I8LYroxIDoMU5Er.html
💎 th-cam.com/play/PL4OG1laG0gW_AcchCg1_adOzDAtnxMjPN.html
👥 Contacts:
LinkedIn: www.linkedin.com/in/dmitriy-zhiganov
00:00 Introduction
01:52 Loading time
06:53 UI Speed
10:14 Checklist
14:05 Loading time in detail
17:39 Time-to-First-Byte
32:28 First-Contentful-Paint
42:20 Largest-Contentful-Paint
51:45 Time-to-Interactive
56:45 UI Speed in detail
#frontenddesign #techinterviewtips #faang #maang #systemdesign #softwarearchitecture #patterns
มุมมอง: 3 295

วีดีโอ

Prepare for System Design Interviews with ChatGPT
มุมมอง 1.3K2 หลายเดือนก่อน
If you’re new to my channel, my name is Dima. I’m a Senior Frontend developer based in Berlin. On this channel, I talk about frontend architecture, technical interviews, and software development careers. In this video:Learn how to use ChatGPT to ace system design interviews. Simulate scenarios, refine your solutions, and tackle common questions with AI support. Playlists: 🧩 th-cam.com/play/PL4O...
How to successfully pass a behavioural interview?
มุมมอง 3663 หลายเดือนก่อน
I’m sure many of you have encountered the question in a behavioral interview: "Tell me about your biggest achievement." Many candidates struggle with this. In this video, we'll discuss how to prepare for this and other questions to successfully pass the behavioral part of the interview. If you’re new to my channel, my name is Dima. I’m a Senior Frontend developer based in Berlin. On this channe...
Web Rendering Patterns. SSR, CSR, Hydration, Static Generation, Resumability
มุมมอง 4.4K5 หลายเดือนก่อน
In this video, we explore essential web rendering patterns such as Server-Side Rendering (SSR), Client-Side Rendering (CSR), Hydration, and Static Site Generation (SSG), among others. Whether you’re preparing for a frontend system design interview or working as a software developer, this video provides valuable insights and practical examples to enhance your understanding of these crucial conce...
[Frontend System Design] Scaling Web Applications. Part 2
มุมมอง 2.3K7 หลายเดือนก่อน
Many of us have heard of scaling backend applications. But what about web applications? In this video, we will discuss Mono-repositories and Poly-repositories as tools for scaling web applications and making them reliable, testable, and easy to work on. This is the second part of the scaling series; if you missed the previous part, please watch it before continuing - th-cam.com/video/2qtgegNSUo...
[Frontend System Design] Scaling Web Applications | Part 1
มุมมอง 18K8 หลายเดือนก่อน
Many of us have heard of scaling backend applications. But what about web applications? In this video, we'll take a look at how web applications go from Monolithic Architecture to Micro-Frontends. 🧩 System Design Building Blocks Playlist: th-cam.com/play/PL4OG1laG0gW9BNGye9I8LYroxIDoMU5Er.html 💎 Frontend System Design Examples Playlist: th-cam.com/play/PL4OG1laG0gW_AcchCg1_adOzDAtnxMjPN.html ⏱ ...
[Frontend System Design] Client Server API. Part 3 | Summary, Examples, Interview Tips
มุมมอง 2.1K10 หลายเดือนก่อน
🌐 Design Client-Server API Playlist: th-cam.com/play/PL4OG1laG0gW-pk_5LgVt6rzoUsACT5dzu.html ▶️ Previous videos: Part 1 th-cam.com/video/5kBI1LadXVA/w-d-xo.html Part 2 th-cam.com/video/7VpX0PMzxOc/w-d-xo.html 🧩 System Design Building Blocks Playlist: th-cam.com/play/PL4OG1laG0gW9BNGye9I8LYroxIDoMU5Er.html 💎 Frontend System Design Examples Playlist: th-cam.com/play/PL4OG1laG0gW_AcchCg1_adOzDAtnx...
[Frontend System Design] Client Server API. Part 2 | GraphQL, gRPC, tRPC
มุมมอง 2.1K10 หลายเดือนก่อน
🌐 Design Client-Server API Playlist: th-cam.com/play/PL4OG1laG0gW-pk_5LgVt6rzoUsACT5dzu.html ▶️ Previous video: th-cam.com/video/5kBI1LadXVA/w-d-xo.html 🧩 System Design Building Blocks Playlist: th-cam.com/play/PL4OG1laG0gW9BNGye9I8LYroxIDoMU5Er.html 💎 Frontend System Design Examples Playlist: th-cam.com/play/PL4OG1laG0gW_AcchCg1_adOzDAtnxMjPN.html ⏱ Timestamps: 00:00 Intro 00:22 GraphQL Overvi...
[Frontend System Design] Client-Server API. Part 1 | REST
มุมมอง 3.9K10 หลายเดือนก่อน
▶️ Real-time updates. Web Sockets, Long Polling, Server Sent Events: th-cam.com/video/8Uyka3fzXek/w-d-xo.html 🌐 Design Client-Server API Playlist: th-cam.com/play/PL4OG1laG0gW-pk_5LgVt6rzoUsACT5dzu.html 🧩 System Design Building Blocks Playlist: th-cam.com/play/PL4OG1laG0gW9BNGye9I8LYroxIDoMU5Er.html 💎 Frontend System Design Examples Playlist: th-cam.com/play/PL4OG1laG0gW_AcchCg1_adOzDAtnxMjPN.h...
[Frontend System Design] Web Storages
มุมมอง 4.7K11 หลายเดือนก่อน
This is the second video in the System Design Building Blocks series. In this series, we're discussing various frontend topics that will help to ace system design interview, even if you've never seen the application you need to develop before. Today we're going to talk about web storages. We'll discuss Local, Session Storages, Indexed DB, and others. We'll also discuss when it's better to move ...
[Frontend System Design] Design Real-Time Updates
มุมมอง 13K11 หลายเดือนก่อน
In this video, we take a deep dive into designing real-time update systems. We'll look at four key techniques: Long Polling, Short Polling, Server Sent Events (SSE), and Web Sockets. We'll discuss the intricacies of each technique, understand how they work, and their respective use cases. We'll also look at scenarios where these techniques work best and where they may not. ⏱ Timestamps: 00:00 I...
Frontend System Design: Stack Overflow
มุมมอง 1.8Kปีที่แล้ว
🚀 Check out new video on designing a clone of Stack Overflow, one of the most popular websites among developers. Dive into many interesting features, such as real-time updates, browser's notifications, a text editor, and more. 💻💡 #frontenddesign #webdevelopment #techinterviewtips #systemdesign #websockets #faang Chapters: 00:00 Intro 00:25 Structure 01:24 Introduction 04:47 Requirements 06:45 A...
Frontend System Design: Table Component
มุมมอง 2.4Kปีที่แล้ว
🚀 Check out our new video on "Designing Table Components" to learn about frontend system design in a straightforward way! Whether you're preparing for an interview or just want to improve your frontend skills, discover the basics, optimization tricks, and useful insights to create efficient and user-friendly tables. 💻💡 #FrontendDesign #TableComponent #WebDevelopment #TechInterviewTips - AG Grid...
Frontend System Design: Music Streaming Service (Spotify)
มุมมอง 2.3Kปีที่แล้ว
Preparing for a frontend system design interview? 🚀 Dive into the details of designing a Music Streaming Service like Spotify in this video. We'll guide you through the essential steps and principles for building a seamless user experience in the world of music streaming 🎵. Whether you're gearing up for an interview or eager to understand the complexities of frontend architecture, this video is...
Frontend System Design: File Sharing Service (Dropbox, Google Drive)
มุมมอง 1.1Kปีที่แล้ว
Getting ready for a frontend system design interview? 🚀 This video is your resource for breaking down the steps involved in creating a File Sharing Service using Dropbox as a practical example. Dropbox infrastructure www.dropbox.com/business/trust/security/architecture Multiple uploader github.com/beforesemicolon/BFS-Projects/tree/multifile-resumable-uploader/multifile-uploader Server Side Desi...
Frontend System Design: Video Streaming Service (Netflix)
มุมมอง 3.1Kปีที่แล้ว
Frontend System Design: Video Streaming Service (Netflix)

ความคิดเห็น

  • @АртёмЗенковец-к1й
    @АртёмЗенковец-к1й 3 วันที่ผ่านมา

    I wish i had such teacher when i studied in the university!

  • @timurkasiev
    @timurkasiev 8 วันที่ผ่านมา

    Бог. Третье видео от тебя, рекоммендованное мне алгоритмом и снова 10/10. Спасибо!

  • @avinashurala5131
    @avinashurala5131 11 วันที่ผ่านมา

    Hi , These contents are highly informative. Could you please share the presentations shown in the videos ?

  • @arunkrishnan5312
    @arunkrishnan5312 11 วันที่ผ่านมา

    In the SSR section, it mentions that the page will be interactive from the start. However, this is not entirely correct. The page becomes interactive only after hydration, when the client-side JavaScript takes over and attaches event listeners and dynamic functionality to the server-rendered HTML. Without hydration, the page remains static and non-interactive.

  • @naehalmulazim
    @naehalmulazim 13 วันที่ผ่านมา

    Your video here is really valuable not just because it gives a great self practice method but its also a way to ease into System Design study itself. I couldnt get myself to start big huge videos or buy courses. I'm really short on time though. I'm a developer with 3 years of scattered stack experience but i need to get somewhere solid before new year's 😅 and it suggested 10 applications already.

  • @zerotoherofacts7106
    @zerotoherofacts7106 22 วันที่ผ่านมา

    Simply Awesome ❤

  • @robertkameni5975
    @robertkameni5975 22 วันที่ผ่านมา

    Amazing Video Dmitriy❤‍🔥

  • @yornadnaps4602
    @yornadnaps4602 23 วันที่ผ่านมา

    You, sir, are a legend! _/\_

  • @coderabdullahi444
    @coderabdullahi444 23 วันที่ผ่านมา

    thanks for sharing great content🔥🔥❤❤

  • @Tony.Nguyen137
    @Tony.Nguyen137 23 วันที่ผ่านมา

    What is the most common way to defer CSS and js in 2024. can you recommend some articles I can read about it?

  • @prashlovessamosa
    @prashlovessamosa 23 วันที่ผ่านมา

    thanks for sharing this very very helpful.

  • @Benyamin-parsa
    @Benyamin-parsa 23 วันที่ผ่านมา

    Great content

  • @malvino4ka55
    @malvino4ka55 23 วันที่ผ่านมา

    Very useful 🔥

  • @VenkatRamanKS
    @VenkatRamanKS 23 วันที่ผ่านมา

    Thank you making our life better

  • @mscomps
    @mscomps 23 วันที่ผ่านมา

    thanks, Dima for sharing this

  • @sushantsharma4463
    @sushantsharma4463 24 วันที่ผ่านมา

    Great job ❤

  • @yornadnaps4602
    @yornadnaps4602 25 วันที่ผ่านมา

    Better than a 100 google searches lol

  • @yornadnaps4602
    @yornadnaps4602 25 วันที่ผ่านมา

    Woah, this is amazing, cheers man!

  • @17tadeu1989
    @17tadeu1989 หลายเดือนก่อน

    This is really good, I really enjoy the way you expose content. I noticed you stopped posting videos. If possible would be amazing if you could do some more of these, explaining the different points on design system like this one. Thanks for the content, cheers!

  • @believesuresh2742
    @believesuresh2742 หลายเดือนก่อน

    Can you please do a SD video for ecommerce and booking application

  • @carefree_ladka
    @carefree_ladka หลายเดือนก่อน

    subed man. Thank you :)

  • @kahaanpatel7916
    @kahaanpatel7916 หลายเดือนก่อน

    Easily the best FE systems design content creator, thank you!

  • @VenkatRamanKS
    @VenkatRamanKS 2 หลายเดือนก่อน

    Hello Dmitriy, Love 💖from Tamilnadu and Tamil Eelam. Thanks for saving me with helpful contents.

  • @HossamMohamed-r4l
    @HossamMohamed-r4l 2 หลายเดือนก่อน

    can you provide a link for the slides please?, i want to review them later

  • @kootahaitoo
    @kootahaitoo 2 หลายเดือนก่อน

    What should be in focus if we want to prepare for Data/API, caching topics related to front end design?

    • @d.zhiganov
      @d.zhiganov 2 หลายเดือนก่อน

      I would suggest: - Backend-side caching: CDN, Redis - Client-side caching: browser cache, response cache (see Tanstack query, RTK Query, etc.) - Follow up: Service Workers + Cache API

  • @VthePeople4156
    @VthePeople4156 2 หลายเดือนก่อน

    Exact road map for system design ( is coding required for system design)

    • @kootahaitoo
      @kootahaitoo 2 หลายเดือนก่อน

      Coding per se is not asked in system design interviews. But will be needed to clear previous rounds. Generally system design is towards the end of interview cycle, if you are mid to senior position. For Architect positions could be different.

  • @hossamoka4a
    @hossamoka4a 2 หลายเดือนก่อน

    Thank you so much for the great explanation in this video! But what about DRM? How can I protect my on-demand streaming video from being stolen? Also, should I implement HLS/DASH and DRM myself, or is it better to subscribe to a service?

    • @d.zhiganov
      @d.zhiganov 2 หลายเดือนก่อน

      I was surprised I didn't touch on this topic in the video :D In short: yes, you need to use DRM. More info here: www.vdocipher.com/blog/2018/11/encrypted-media-extensions-eme As for tools - if they fit your needs and you can afford it, I would suggest using services.

  • @saqomelqon1618
    @saqomelqon1618 2 หลายเดือนก่อน

    In terms of dealing with scaling either Redis pub/sub or Kafka

  • @Benyamin-parsa
    @Benyamin-parsa 2 หลายเดือนก่อน

    amazing man! your knowledge is excellent but your teaching is fantastic. keep going it please! 👌

  • @murhafal-msri5479
    @murhafal-msri5479 3 หลายเดือนก่อน

    in 17:40 I think the build-time definition is not quite right. build time is the process before the project is served to the server not to the client.

  • @saber-med
    @saber-med 3 หลายเดือนก่อน

    thanks

  • @mgrm7031
    @mgrm7031 3 หลายเดือนก่อน

    💫

  • @YaserAz
    @YaserAz 3 หลายเดือนก่อน

    thanks for all details

  • @YaserAz
    @YaserAz 3 หลายเดือนก่อน

    Great content ❤

  • @a7mdbest15
    @a7mdbest15 3 หลายเดือนก่อน

    Gem channel.

  • @utsavagrawal5920
    @utsavagrawal5920 3 หลายเดือนก่อน

    Superb content.. thanks for clearing the gaps..🎉

  • @mgrm7031
    @mgrm7031 3 หลายเดือนก่อน

    great

  • @rod8128
    @rod8128 3 หลายเดือนก่อน

    Perfectly explained!

  • @vikash5318
    @vikash5318 3 หลายเดือนก่อน

    Hi, thank you for the detailed video explanation, just a request can you share the images as slides, so that we have a reference for future.

  • @manikanta138
    @manikanta138 3 หลายเดือนก่อน

    thanks a lot man, really i owe you alot , the way you are providing content is very usefull for senior and lead level and manager level thank you once again keep going

  • @mayankupreti6966
    @mayankupreti6966 4 หลายเดือนก่อน

    Great explanation. Is it possible to get the slides of the video

  • @HyperXD_YT
    @HyperXD_YT 4 หลายเดือนก่อน

    How about scaling in server side rendered application, don't we need to worry about traffic there?

  • @dprophecyguy
    @dprophecyguy 4 หลายเดือนก่อน

    Notes: ## Introduction - Web rendering includes steps from user opening a site to full page display - Key steps: DNS lookup, HTTP request, HTML parsing, CSS parsing, JavaScript execution - Different rendering approaches exist due to varied site requirements ## Key Metrics 1. Time to First Byte (TTFB): Time between clicking a link and first content byte loading 2. First Contentful Paint (FCP): Time when any part of page content is rendered 3. Largest Contentful Paint (LCP): Time until largest image/text block is rendered 4. Total Blocking Time (TBT): Measures main thread blocking during page load ## Business Considerations - Types of applications: - B2B (Business-to-Business) - B2C (Business-to-Consumer) - Internal Tools - Profit Centers vs. Cost Centers ## Rendering Patterns ### 1. Server-Side Rendering (SSR) - Types: Dynamic SSR, Static Site Generation (SSG) - Advantages: - Fast time to content - Good SEO - Improved Core Web Vitals - Disadvantages: - Full page reloads - Increased server load - More complex server configuration ### 2. Static Site Generation (SSG) - Generates static HTML files during build time - Advantages: - Fast load times - Reduced server load - Good SEO - Disadvantages: - Limited to static content - Frequent rebuilds for content updates ### 3. Client-Side Rendering (CSR) - Renders content in the browser using JavaScript - Advantages: - Smooth user experience - Easier development and maintenance - Reduced server load - Disadvantages: - Poor SEO (if not mitigated) - Slower initial load - Performance issues on low-power devices ### 4. Hydration - Process of making server-side rendered static HTML interactive - Types: - Full Hydration - Partial/Selective Hydration - Progressive Hydration - Island Architecture - Challenges: - Uncanny Valley effect - "One app for the price of two" problem ### 5. Resumability - Recovers application state without re-executing components on client-side - Implemented in Qwik framework - Solves "one app for the price of two" problem ### 6. Pre-rendering - Creates SEO-friendly single-page applications - Serves different versions for users and web crawlers - Advantages: - Good SEO for SPAs - Smooth single-page experience - Disadvantages: - More complex setup - Higher server load ## Advanced Techniques 1. Code Splitting 2. Preloading 3. Lazy Loading 4. Application Shell Architecture 5. Trimorphic Rendering (combines SSR, CSR, and Service Workers) ## Choosing the Right Approach Consider: - Website vs. Web Application - Static vs. Dynamic content - SEO requirements - Initial loading time importance - UI responsiveness needs - Budget constraints - Offline support requirements Use the decision tree provided in the lecture to guide your choice. ## Use Cases 1. Social Network: SSR with Hydration (Progressive/Island Architecture) 2. Dashboard: Client-Side Rendering with optimization techniques 3. Marketplace (e.g., Amazon): SSR or SSR with Hydration Remember to always consider specific project requirements and constraints when choosing a rendering pattern.

  • @arjunvaidy8466
    @arjunvaidy8466 4 หลายเดือนก่อน

    You gave the great explanation of rendering patterns and I am fortunate I found this channel in recommendations

  • @JihedSalhi-s9c
    @JihedSalhi-s9c 5 หลายเดือนก่อน

    Great video, thank you. Just one small advice, in your next videos speak slower ❤

  • @prashlovessamosa
    @prashlovessamosa 5 หลายเดือนก่อน

    can you please share the slides that you have used in the video. Thanks for free knowledge.

  • @ksubramanyeshwara
    @ksubramanyeshwara 5 หลายเดือนก่อน

    About to start reactjs and i found the goldmine I guess. as soon as I complete reactjs ill study from you. keep them coming

  • @DebashishGhoshOfficial
    @DebashishGhoshOfficial 5 หลายเดือนก่อน

    Is there a way to filter out the breathing noise? It's hurting my ears. :'(

  • @AvinashSingh-tr5vt
    @AvinashSingh-tr5vt 5 หลายเดือนก่อน

    thank you , great video

  • @MuhammadAhmad-ie5xh
    @MuhammadAhmad-ie5xh 5 หลายเดือนก่อน

    Your explanation is clear as crystal! Thank you❤