Обзор курса Построение распределенных систем от Frontend Masters

Небольшое ревью курса Построение распределенных систем от FrontendMasters.
22-01-2026
О курсе
Посмотрел курс Backend System Design от Frontend Masters. Это практический курс по построению распределенных систем. Ведет курс Джем Янг (Jem Young), инженер и инженерный менеджер в Netflix. Смотрел у него курс Введение в инженерный менеджмент (или менеджмент инженеров?).
Джем учит системному мышлению — как разбивать любую задачу на компоненты, видеть взаимосвязи и принимать компромиссные решения. Как фронтендер, я постоянно работаю с API, состоянием, производительностью и ограничениями сети. Я хотел расширить свой кругозор и больше узнать почему бэкенд работает именно так и как он спроектирован для больших систем.
Ключевые темы курса:
- Требования: Перевод бизнес-требований и проектирование приложения путем определения масштаба проекта, формулирования требований и учета взаимодействия с пользователем. Разница между функциональными (что система делает) и нефункциональными требованиями (NFR). NFR — это про безопасность, масштабируемость, наблюдаемость (observability) и производительность. Именно здесь происходят компромиссы, например, теорема CAP (нужно выбирать между согласованностью, отказоустойчивостью и доступностью)
- Проектирование высокого уровня: Разбор моделей данных, API и протоколов (HTTP, WebSockets, gRPC, GraphQL). Почему для банковского API лучше REST, а для микросервисов — gRPC. Как выбор протокола влияет на время жизни батарейки мобильного устройства
- Масштабирование и хранение данных: Разбор горизонтального (добавление серверов) и вертикального (улучшение сервера) масштабирования, балансировщиков нагрузки. Затронули темы шардирования, репликации, кэширования и стратегий инвалидации кэша
- Безопасность и асинхронность: Разбор HTTPS termination (где расшифровывать трафик — на балансировщике или сервере), различия между аутентификацией и авторизацией, сравнение сессий и JWT. Также рассказал про асинхронные процессы на примере загрузки видео: очереди, message broker'ы, worker'ы
Итоги
Курс "Backend System Design" Джема Янга — это инвестиция в архитектурное мышление. После его прохождения не стать бэкенд-разработчиком или архитектором, но можно увидеть как работает система на разных слоях и понять, какие могут быть компромиссы при построении высокоуровневой архитектуры.
Стоит ли проходить это курс?
Да, если:
Никогда не задумывался, что под капотом всей системы или большого приложения
Нужно систематизировать знания о высокоуровневой архитектуре
Хочется спроектировать архитектуру приложения с нуля
Моя оценка: 7/10, хороший вводный курс