К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
System Design Masterclass · LearnSpace
Назад в каталог
courseraIT и технологии

System Design Masterclass

Курс от Packt
Продвинутый≈ 20.5 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. In this masterclass, you'll learn how to design large-scale systems used by top companies like Instagram, WhatsApp, and YouTube. You'll master system design principles, including defining requirements, estimating capacity, and creating scalable, reliable architectures. Through case studies and hands-on exercises, you'll develop a repeatable framework for approaching system design challenges, from API design to database selection. You'll explore how to estimate storage, memory, throughput, and bandwidth, and design APIs for key actions like posting, liking, and messaging. The course will guide you through real-world scenarios, helping you make critical design decisions and ensuring your solutions are scalable, fault-tolerant, and efficient. This course is ideal for experienced engineers, system architects, or developers with strong understanding of software architecture, and familiarity with cloud computing and databases. By the end, you’ll be prepared to confidently design high-traffic, reliable systems and tackle system design interviews.

Навыки, которые вы освоите

Capacity ManagementScalabilitySystems DesignAPI DesignSystem Design and ImplementationData StorageSoftware ArchitectureDistributed ComputingNetwork ProtocolsSoftware SystemsDatabasesAPI GatewaySoftware DesignLive StreamingData Storage TechnologiesSystems ArchitectureApplication Programming Interface (API)Load BalancingRestful APIMicroservices

Программа курса

18 модулей · 261 учебных материалов

01Introduction4 материалов

Introduction

Course IntroductionВидеоFull Course ResourcesЧтениеHow this course is structured?ВидеоFramework for System Design InterviewsВидео
02Design Instagram Newsfeed27 материалов

Учитесь у экспертов

Packt - Course Instructors

Преподаватель курса

System Design Masterclass
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 20.5 ч

18 модулей

Язык: Английский

Часть программы вашего университета

Design Instagram Newsfeed

Deciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - IntroductionВидеоCapacity Estimation - Why should you do capacity estimation?ВидеоCapacity Estimation - DAU/MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - Create a Text PostВидеоAPI Design - Create an Image / Video PostВидеоAPI Design - Like / Comment on a PostВидеоAPI Design - Follow / Unfollow another UserВидеоAPI Design - Read the NewsFeed (aka Timeline)ВидеоHigh Level Design - Follow / Unfollow another UserВидеоHigh Level Design - Create a Text PostВидеоHigh Level Design - Create a Text Post (Continued)ВидеоHigh Level Design - Create an Image / Video PostВидеоHigh Level Design - Read the NewsFeed (aka Timeline)ВидеоHigh Level Design - Comment on a PostВидеоHigh Level Design - Like on a PostВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - Pre-Signed URLsВидеоDeep Dive Insights - Media ProcessingВидеоDefining Functional and Non-Functional Requirements in System DesignDIALOGUEDesign Instagram Newsfeed - AssessmentЗадание
03Design Youtube / Netflix18 материалов

Design Youtube / Netflix

Deciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - Upload ContentВидеоAPI Design - Stream ContentВидеоHigh Level Design - Upload ContentВидеоHigh Level Design - Upload Content (Continued)ВидеоHigh Level Design - Content Processor Workflow EngineВидеоHigh Level Design - Stream ContentВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - HLS EncodingВидеоDefining Functional & Nonfunctional Requirements for YouTube System DesignDIALOGUEDesign Youtube / Netflix - AssessmentЗадание
04Design TinyURL26 материалов

Design TinyURL

Introduction - What is a Tiny URL Service?ВидеоIntroduction - Why do we need a Tiny URL Service?ВидеоDeciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non Functional RequirementsВидеоCapacity Estimation - DAU/MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - Generate a Short URLВидеоAPI Design - Get Long URL backВидеоHigh Level Design - Generate Short URLВидеоHigh Level Design - Problem: CollisionsВидеоHigh Level Design - Approach 1: Random String GenerationВидеоHigh Level Design - Approach 2: Random String Generation using LongURLВидеоHigh Level Design - Approach 3: Check DB for CollisionsВидеоHigh Level Design - Approach 4: Lets Keep CountersВидеоHigh Level Design - Approach 4 (Continued): ZookeeperВидеоHigh Level Design - Approach 4 (Continued): Base 62 EncodingВидеоHigh Level Design - Approach 4 (Continued): Final Design DiagramВидеоHigh Level Design - Get Long URLВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - Redirection from Short URLВидеоDesigning a Scalable URL ShortenerDIALOGUEDesign TinyURL - AssessmentЗадание
05Design Rate Limiter21 материалов

Design Rate Limiter

Introduction - AnalogyВидеоIntroduction - What is a Rate Limiter?ВидеоIntroduction - Why do we need a Rate Limiter?ВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - Storage & MemoryВидеоCapacity Estimation - Network BandwidthВидеоHigh Level Design - Placement of Rate LimiterВидеоHigh Level Design - Basic High Level Design FlowВидеоHigh Level Design - Storing Request CountersВидеоHigh Level Design - Storing Rate Limiter RulesВидеоDeep Dive Insights - Rate limiting AlgorithmsВидеоDeep Dive Insights - Token Bucket AlgorithmВидеоDeep Dive Insights - Leaky Bucket AlgorithmВидеоDeep Dive Insights - Fixed Window Counter AlgorithmВидеоDeep Dive Insights - Sliding Window Log AlgorithmВидеоDeep Dive Insights - Sliding Window Counter AlgorithmВидеоDeep Dive Insights - Handling Race ConditionВидеоDesigning a Rate Limiter: Algorithms and Real-World ConsiderationsDIALOGUEDesign Rate Limiter - AssessmentЗадание
06Design Whatsapp24 материалов

Design Whatsapp

Deciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - 1:1 MessagingВидеоAPI Design - Message StatusВидеоAPI Design - Online StatusВидеоAPI Design - Group MessagesВидеоHigh Level Design - How is Websocket Connection established?ВидеоHigh Level Design - 1:1 MessagingВидеоHigh Level Design - 1:1 Messaging - Offline ClientВидеоHigh Level Design - 1:1 Messaging - Final DesignВидеоHigh Level Design - 1:1 Messaging (Image, Video, Document)ВидеоHigh Level Design - Message StatusВидеоHigh Level Design - Online StatusВидеоHigh Level Design - Group MessagesВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - End to End EncryptionВидеоDesigning WhatsApp: Real-Time Messaging System FundamentalsDIALOGUEDesign Whatsapp - AssessmentЗадание
07Design Search Systems19 материалов

Design Search Systems

Deciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - SearchВидеоHigh Level Design - Search (Suboptimal)ВидеоHigh Level Design - Search (Indexing)ВидеоHigh Level Design - How to Support Fuzzy Search?ВидеоHigh Level Design - Search (Ranking)ВидеоHigh Level Design - Search (Final Design)ВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - Query Correction ServiceВидеоDeep Dive Insights - Elastic SearchВидеоSystem Design for a Scalable Twitter Search SystemDIALOGUEDesign Search Systems - AssessmentЗадание
08Design Airbnb22 материалов

Design Airbnb

Deciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network BandwidthВидеоAPI Design - Add Property (Property Owner)ВидеоAPI Design - View Bookings (Property Owner)ВидеоAPI Design: Search Properties (Guest)ВидеоAPI Design - View Property (Guest)ВидеоAPI Design - Book Property (Guest)ВидеоHigh Level Design - Add / Update Property (Property Owner)ВидеоHigh Level Design - Search Properties (Guest)ВидеоHigh Level Design - View Property (Guest)ВидеоHigh level Design - Book PropertyВидеоHigh Level Design - View BookingsВидеоDeep Dive Insights - Database SelectionВидеоDeep Dive Insights - Data ModelingВидеоDeep Dive Insights - Handling Concurrent BookingsВидеоDesigning Airbnb API Flows & Database ChoicesDIALOGUEDesign Airbnb - AssessmentЗадание
09Design Notification System22 материалов

Design Notification System

Introduction - What is a Notification System?ВидеоIntroduction - Why do we need a Notification System?ВидеоDeciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non-Functional RequirementsВидеоCapacity Estimation - DAU / MAUВидеоCapacity Estimation - ThroughputВидеоCapacity Estimation - StorageВидеоCapacity Estimation - MemoryВидеоCapacity Estimation - Network/BandwidthВидеоAPI Design - Send NotificationВидеоHigh Level Design - Basic High Level FlowВидеоHigh Level Design - Problems with Basic High Level DesignВидеоHigh Level Design - Validation and PrioritizationВидеоHigh Level Design - Rate Limiting NotificationsВидеоHigh Level Design-Adjusting to User PreferencesВидеоHigh Level Design- Handling different types of NotificationsВидеоHigh Level Design Reorganizing servicesВидеоHigh Level Design- DecouplingВидеоDeep Dive Insights: Database SelectionВидеоDeep Dive Insights-Database ModelingВидеоDesigning a Scalable Notification SystemDIALOGUEDesign Notification System - AssessmentЗадание
10Design Distributed logging13 материалов

Design Distributed logging

IntroductionВидеоDeciding Requirements - Functional RequirementsВидеоDeciding Requirements - Non Functional RequirementsВидеоHigh Level Design -Client Request and Correlation IDВидеоHigh Level Design -Collecting Logs on each ServiceВидеоHigh Level Design - Kafka for bufferingВидеоHigh Level Design - Processing with FlinkВидеоHigh Level Design - Storage BackendsВидеоHigh Level Design - Query and DashboardsВидеоDeep Dive Insights- Protobuf and Aro SerializationВидеоDeep Dive Insights- FlinkВидеоDesigning a Distributed Logging SystemDIALOGUEDesign Distributed logging - AssessmentЗадание
11Appendix - The Ultimate System Design Template13 материалов

Appendix - The Ultimate System Design Template

Client & ServerВидеоDatabaseВидеоVertical vs Horizontal ScalingВидеоLoad BalancerВидеоDatabase ShardingВидеоDatabase ReplicationВидеоCacheВидеоContent Delivery Network (CDN)ВидеоMonolith & MicroserviceВидеоMessage QueueВидеоAPI GatewayВидеоFundamentals of Modern Web System DesignDIALOGUEAppendix - The Ultimate System Design Template - AssessmentЗадание
12Appendix - Design Goals Buzzwords7 материалов

Appendix - Design Goals Buzzwords

IntroductionВидеоScalabilityВидеоAvailabilityВидеоConsistency - Strong / EventualВидеоFault Tolerance / No SPOFВидеоExploring Key System Design Goals: Scalability, Availability, Consistency, and Fault ToleranceDIALOGUEAppendix - Design Goals Buzzwords - AssessmentЗадание
13Appendix - Networking Buzzwords11 материалов

Appendix - Networking Buzzwords

IP AddressВидеоDNS - Domain Name ServiceВидеоClient & ServerВидеоProtocols - IntroductionВидеоProtocols - TCPВидеоProtocols - UDPВидеоProtocols - HTTPВидеоProtocols - WebsocketВидеоForward Proxy & Reverse ProxyВидеоUnderstanding IP Addresses, DNS, Protocols, and ProxiesDIALOGUEAppendix - Networking Buzzwords - AssessmentЗадание
14Appendix - Communication Buzzwords7 материалов

Appendix - Communication Buzzwords

IntroductionВидеоGraphQLВидеоgRPCВидеоMessage QueuesВидеоRest APIВидеоComparing Common Communication APIs: REST, GraphQL, gRPC, and Message Queues DIALOGUEAppendix - Communication Buzzwords - AssessmentЗадание
15Appendix - Database & Storage Buzzwords9 материалов

Appendix - Database & Storage Buzzwords

IntroductionВидеоRelational Database / SQL DatabaseВидеоNon-Relational Database / NoSQLВидеоSQL vs NoSQLВидеоObject StorageВидеоCacheВидеоCDN - Content Delivery NetworkВидеоChoosing Between SQL and NoSQL DatabasesDIALOGUEAppendix - Database & Storage Buzzwords - AssessmentЗадание
16Appendix - Caching Deep Dives6 материалов

Appendix - Caching Deep Dives

Read Caching StrategiesВидеоWrite Caching StrategiesВидеоRead Cache Strategies - Pros and ConsВидеоWrite Cache Strategies - Pros and ConsВидеоComparing Cache Strategies for Reads and WritesDIALOGUEAppendix - Caching Deep Dives - AssessmentЗадание
17Appendix - Extra Buzzwords4 материалов

Appendix - Extra Buzzwords

Cloud ComputingВидеоLogging & MonitoringВидео Understanding Cloud Computing, Logging, and MonitoringDIALOGUEAppendix - Extra Buzzwords - AssessmentЗадание
18Common FAQs8 материалов

Common FAQs

Database IndexingВидеоWhy should you do capacity estimation?ВидеоApache Kafka Event StreamingВидеоBeginners guide to Graph QLВидеоConsistent HashingВидеоCommon FAQs - AssessmentЗаданиеFull Course Practice AssessmentЗаданиеFull Course AssessmentЗадание