Складчина: Системный дизайн [Тариф Стандартный] [Хекслет] [Виталий Лихачев, Кирилл Мокевнин]
При росте сервиса разработчику приходится учитывать не только число запросов, но и возможные отказы зависимостей и целых зон доступности. С курсом Хекслета вы разберётесь, как рассчитывать нагрузку, выбирать хранилища и проектировать поведение системы при отказах на примере сервиса такси.
На секции System design разработчику дают открытую задачу и оценивают, как он уточняет требования и защищает архитектурные решения. Курс Хекслета поможет подготовиться к такому собеседованию: вы научитесь оценивать нагрузку, выбирать решения с учётом ограничений и объяснять свои компромиссы.
- Спроектируете сервис такси и доведёте его от одного сервера до платформы в нескольких регионах
- Научитесь обосновывать архитектуру цифрами: RPS, объём данных, пиковый профиль
- Пройдёте секцию System design. Отдельный модуль про критерии оценки на собеседовании
Продакшен-подход к проектированию систем. Навык, нужный программисту в 2026 году. Подготовка к секции System design.
Системный дизайн: ключевой навык для роста разработчика:
Понимание системного дизайна нужно, чтобы проектировать сервисы под нагрузку, обосновывать решения на ревью, проходить собеседования и обсуждать повышение.
Что происходит в 2026 году в разработке?
ИИ ускоряет написание кода, облачные сервисы упрощают запуск. Решения о нагрузке, данных и отказах остаются на разработчиках. Системный дизайн помогает увидеть их последствия до продакшена.
Работодателям нужны разработчики, которые умеют:
- Оценивать нагрузку и объём данных
- Выбирать архитектуру под требования системы
- Проектировать взаимодействие сервисов
- Учитывать узкие места и сценарии отказа
- Обосновывать решения и компромиссы на ревью
Системный дизайн показывает, что разработчик умеет видеть систему целиком и готов к задачам следующего грейда. Этот навык проверяют на технических собеседованиях и учитывают при обсуждении повышения.
Курс поможет разобраться, как проектировать систему по мере роста продукта: от монолита на одном сервере до распределённой платформы в нескольких регионах. Вы рассчитаете нагрузку, выберете хранилища, продумаете сценарии отказа и подготовитесь к секции System design.
Кому подойдет курс:
- Разработчикам уровня middle и middle+
Разберётесь, как проектировать систему целиком: рассчитывать нагрузку, выбирать хранилища, учитывать сценарии отказа и обосновывать архитектурные решения на ревью - Тимлидам и техлидам
Сможете проводить дизайн ревью, оценивать архитектурные риски и планировать развитие системы при росте нагрузки - Разработчикам перед собеседованием
Разберётесь в критериях секции System design, научитесь структурировать решение и защищать архитектурные компромиссы
Как проходит обучение на курсе по системному дизайну:
Вы разбираете каждое архитектурное решение на сквозном кейсе сервиса такси и выполняете практические задания. Каждый этап закрывается проектом: за курс их четыре.
Спойлер: Часто задаваемые вопросы 1. Как проходит обучение на курсе?
Вы разбираете каждое архитектурное решение на сквозном кейсе сервиса такси и выполняете практические задания. Программа состоит из пяти модулей и 54 уроков, система в них растёт от одного сервера до платформы в нескольких регионах.
2. Нужен ли опыт коммерческой разработки?
Да, курс рассчитан на действующих разработчиков. Нужен опыт коммерческой разработки и понимание того, как устроены базы данных, HTTP и деплой. Язык и стек значения не имеют: программа посвящена архитектурным решениям и их последствиям, поэтому подходит backend, frontend и fullstack-разработчикам, тимлидам, техлидам и инженерам, отвечающим за надёжность.
3. Поможет ли курс пройти секцию System design на собеседовании?
Да, этому посвящён отдельный, пятый модуль программы. В нём разбирается устройство секции: этапы и распределение времени, критерии оценки, уточнение требований и границ задачи, расчёт нагрузки, сборка high-level design, выбор deep dive под главный риск и защита компромиссов. Ведёт курс Виталий Лихачев, SRE-инженер, который сам проводит такие секции на собеседованиях.
4. Что я смогу делать после курса?
После курса вы сможете оценивать нагрузку и объём данных до выбора технологий, находить узкое место системы по симптомам, выбирать между репликацией, шардированием, кэшем и очередью по цифрам задачи, проектировать поведение системы при отказе зависимости или целой зоны, планировать безопасные миграции и защищать архитектурные решения перед командой и на собеседовании.
5. Нужно ли знать математику и алгоритмы для системного дизайна?
Специальная математическая подготовка для системного дизайна не нужна, алгоритмическая секция здесь ни при чём. Расчёты сводятся к арифметике порядков: сколько запросов в секунду даёт заданное число активных пользователей, сколько данных накопится за год, сколько памяти займёт кэш. Нужен опыт коммерческой разработки и понимание того, как устроены базы данных, сеть и деплой.
6. Как проходит секция System design на собеседовании?
На секции дают открытую задачу на проектирование системы и оценивают ход решения: как вы уточняете требования и границы задачи, считаете нагрузку, собираете high-level design, проектируете API и модель данных, выбираете тему для deep dive и защищаете компромиссы. Этим этапам посвящён пятый модуль курса. Итог модуля — готовое решение System design задачи и план его презентации на собеседовании.
7. Хватит ли для подготовки книги Алекса Сюя «System Design. Подготовка к сложному интервью»?
Книга разбирает типовые задачи с готовыми решениями. На курсе вы проектируете систему сами: сервис такси растёт от одного сервера до платформы в нескольких регионах, и на каждом этапе вы считаете нагрузку и обосновываете выбор цифрами.
8. Сколько длится курс и как часто проходят занятия?
Курс длится 5 месяцев. Каждый этап закрывается проектом, всего их четыре.
9. Какой проект будет в портфолио?
Сервис такси, который вы доводите от монолита до глобальной системы за четыре проекта: масштабируемый монолит; событийный контур с потоком координат и аналитикой; мультисервисное приложение в нескольких зонах доступности; глобальная маршрутизация, надёжность и безопасность в нескольких регионах.
Программа обновлена в сентябре 2026.
Программа:
Монолитное приложение:
Спроектируете первую версию сервиса такси и разберётесь, где находится реальный предел одного сервера. Подготовите монолит к росту нагрузки.
- Работа сервера: CPU, память, процессы, потоки, сеть и системные лимиты
- Требования и оценка нагрузки: DAU, RPS, пики и объём данных
- Первая архитектура, модель поездки, транзакции и уровни изоляции
- Индексы, планы запросов, нагрузочное тестирование и поиск узких мест
- Горизонтальное масштабирование, балансировка, кэш и реплики
- Выбор хранилищ, геопоиск, полнотекстовый поиск, конфигурация и секреты
Результат: масштабируемый монолит сервиса такси, рассчитанный на рост нагрузки.
События и стриминг:
Добавите в сервис такси событийный контур, обработку координат в реальном времени и отдельную систему аналитики.
- Доменные события и контракты, надёжная публикация через transactional outbox и CDC
- Очередь и распределённый журнал: партиции, порядок, consumer groups, offset и replay
- Гарантии доставки, идемпотентность и обработка ошибок через dead-letter queue
- Поток координат: event time, окна, watermarks и опоздавшие события
- Пересчёт ETA и динамического тарифа, потоковые представления
- Аналитический контур и вебхуки для внешних систем: подпись запроса, retries, backoff
Результат: событийный контур, поток координат и аналитика сервиса такси.
Распределённая система:
Разделите монолит на сервисы, распределите данные и подготовите приложение к работе в нескольких зонах доступности.
- Границы сервисов и владение данными
- API Gateway и внешние контракты
- Межсервисное взаимодействие
- Сеть и частичные отказы
- Модели согласованности
- Репликация данных
- Кворумы и конфликты записи
- Партиционирование данных
- Распределённые транзакции и SAGA
- Service discovery и внутренний DNS
- Зоны доступности
Результат: мультисервисное приложение такси, работающее в нескольких зонах доступности.
Глобальная система:
Запустите сервис такси в нескольких регионах и спроектируете глобальную маршрутизацию, отказоустойчивость и безопасность.
- Глобальная маршрутизация
- CDN и edge кэширование
- Мультирегиональные данные
- Мультирегиональный событийный контур
- Timeouts, deadlines и retries
- Rate limiting и load shedding
- Каскадные отказы и graceful degradation
- Disaster recovery
- Наблюдаемость и управление инцидентами
- Безопасные изменения и миграции
- Модель угроз и границы доверия
- Пользовательские и сервисные identity
- Защита чувствительных данных
Результат: глобальная маршрутизация, надёжность и безопасность сервиса такси.
System design интервью:
Перенесёте архитектурный подход на новые задачи и подготовитесь к прохождению секции System design.
- Устройство секции и критерии оценки
- Уточнение требований
- Оценка нагрузки
- High level design
- Проектирование API и модели данных
- Архетипы систем
- Выбор deep dive
- Презентация решения и защита компромиссов
Результат: готовое решение System design задачи и понятный план его презентации на собеседовании.
Авторы:
Кирилл Мокевнин
- 18 лет в коммерческой разработке
- 10+ лет обучает программированию
- Более 30 выступлений на конференциях, митапах, подкастах
- Сооснователь Хекслета
- Разработчик
- Хекслет: сооснователь и автор курсов, web-разработчик
- undev: VP of Engineering
- Skype: Software Engineer
Виталий Лихачев
- 10+ лет опыта в инженерии: бэкенд, фронтенд, devOps, SRE
- 44 доклада на митапах и конференциях
- 4 курса для крупных IT-школ
- SRE, System Design, разработка
- Сейчас: Нидерланды, SRE в международном тревел-сервисе
- Avito Tech: старший разработчик платформы авторизации
- EPAM: разработчик системы управления складами
Тариф Стандартный
- Материалы пяти модулей и 54 уроков
- Практические задания
- Четыре проекта
Старт 16 ноября.
Цена 45000 руб.