이 강의는 시스템 디자인 경험이 부족한 개발자들을 위한 실용적인 온라인 클래스입니다. 뛰어난 코딩 스킬에도 불구하고 대규모 시스템 설계 경험이 부족한 많은 개발자들의 현실적인 어려움을 해결하고자 기획되었습니다.
클래스의 핵심은 '경험'입니다. NBC, CBC, Paramount+와 같은 대규모 비디오 스트리밍 서비스의 시스템을 설계한 전문가가 직접 강의를 진행합니다. 수강생들은 이론적 지식과 함께 실제 프로젝트에서 마주칠 수 있는 다양한 시나리오와 문제 해결 과정을 경험하게 됩니다.
이 클래스는 복잡한 개념을 쉽게 이해할 수 있도록 단계별 학습을 제공합니다. 기본적인 시스템 설계 원칙부터 시작하여 점진적으로 더 복잡한 주제로 나아가며, 파트 3에서는 주제별 실습 프로젝트를 통해 배운 내용을 즉시 적용해 볼 수 있습니다.
이 클래스는 단순한 이론 학습이 아닙니다. 시스템 디자인의 전체 프로세스를 다루는 실전 과정입니다. 복잡한 분산 시스템의 세계를 항해하는 데 필요한 지식과 기술을 체계적으로 습득할 수 있도록 구성되어 있습니다.
PART 01: 시스템 디자인하기
시스템 디자인의 본질과 중요성, 기능적/비기능적 요구사항을 이해합니다. 이는 여러분의 시스템 디자인 기초를 탄탄히 다지는 데 도움을 줄 것입니다.
PART 02: 핵심 구성요소 이해하기
네트워킹 기초, 서버-클라이언트 모델, HTTP, WebSocket, API 등의 통신 프로토콜부터 캐싱, 프록시, 스토리지, 메시지 큐와 같은 중요한 요소들을 깊이 있게 학습합니다. 이는 시스템의 효율성과 확장성을 높이는 핵심이 될 것입니다.
PART 03: 시스템 디자인 문제 실습하기
이 파트에서는 체계적인 시스템 디자인 문제 해결 프로세스를 따라 6가지 실제 사례를 깊이 있게 탐구합니다. Key-Value Store부터 Instagram과 같은 글로벌 소셜 미디어 플랫폼의 설계까지, 다양한 난이도의 문제를 다룹니다. 이를 통해 이론적 지식을 실제 문제 해결에 적용하는 능력을 키울 수 있습니다.
특히, YouTube와 Instagram 같은 대규모 플랫폼의 아키텍처를 심층적으로 분석하며 최신 기술 트렌드를 경험하게 됩니다. 동영상 스트리밍, 실시간 피드 생성, 대규모 데이터 처리 등 실제 서비스에서 마주치는 도전과제들을 해결하는 방법을 배웁니다.
각 단원마다 명확한 학습 목표를 제시하여 체계적인 학습이 가능하도록 했습니다. 이 과정을 통해 여러분은 시스템 디자인에 대한 포괄적인 이해를 하고, 실무에 즉시 적용 가능한 기술을 습득하게 될 것입니다.
대규모 시스템의 설계 원칙을 이해하고, 실제 프로젝트에 적용할 수 있습니다.
복잡한 아키텍처 문제를 체계적으로 분석하고 해결할 수 있습니다.
확장성, 안정성, 효율성을 고려한 시스템을 설계할 수 있습니다.
실무에서 자주 마주치는 시스템 디자인 패턴과 최적화 기법을 활용할 수 있습니다.
1 | 01차시_강사 소개와 오리엔테이션 | 18:23 |
2 | 02차시_시스템 디자인 개요 | 13:41 |
3 | 03차시_네트워킹 기초 | 20:44 |
4 | 04차시_서버와 클라이언트 | 19:39 |
5 | 05차시_HTTP, WebSocket, API | 37:55 |
6 | 06차시_캐싱과 CDN | 17:22 |
7 | 07차시_프록시와 로드 밸런서 | 18:25 |
8 | 08차시_스토리지 | 34:40 |
9 | 09차시_빅 데이터 | 22:06 |
10 | 10차시_시스템 디자인 문제 해결 프로세스 | 11:34 |
11 | 11차시_Key-Value Store 시스템 디자인 | 40:39 |
12 | 12차시_Rate Limiter 시스템 디자인 | 34:28 |
13 | 13차시_URL Shortener 시스템 디자인 | 32:52 |
14 | 14차시_Distributed Message Queue 시스템 디자인 | 44:57 |
15 | 15차시_YouTube 시스템 디자인 | 48:47 |
16 | 16차시_Instagram 시스템 디자인 | 48:46 |
마크 리처즈 , 닐 포드
마이클 킬링