system design

+ подготовишься к System Design интервью для трудоустройства в |

всего за 4 недели без воды
рейтинг курса
4.94 / 5
длительность
4 недели
как попасть
предзапись
поток №14
поток

Научишься проектировать высоконагруженные отказоустойчивые системы

подойдет специалистам с опытом работы в IT

{
ффф"for_whom": {
ффффф"developer": true,
ффффф"designer": false,
ффффф"sys_admin": true,
ффффф"analyst": true,
ффффф"architect": true,
ффффф"product_manager": true
ффф}
}
системный администратор
Нужно владеть основами программирования, понимать работу компьютерных сетей, знать базовые алгоритмы и структуры данных, а также иметь с ними примитивный опыт работы
разработчик
системный аналитик
архитектор
продакт менеджер
QA-инженер

Middle — минимальный грейд для комфортного обучения

Знакомая ситуация?

/1
Боюсь секцию по System Design — даже у senior нет таких задач, а на собеседованиях спрашивают
/2
Не умею проектировать большие системы с нуля — что и зачем нужно применять для той или иной проблемы
/3
Не хватает насмотренности и практики в проектировании — работал(-а) только в одной компании
/4
Хочу расти в сторону архитектуры — поменять специализацию или работу, поднять грейд или вырасти в зарплате
/5
Нужно улучшать сервис под нагрузками — с чего начать и как сделать правильно
/6
Чтение книг по System Design только все усложнило — знания хаотичны, в голове нет структуры

вопросов по system design закроешь На этом обучении

95%
ты закроешь На этом обучении 95% вопросов по system design
Подготовишься к System Design интервью — поймешь из чего оно состоит, узнаешь его особенности и научишься уверенно его проходить на практике
Узнаешь best practices по проектированию больших отказоустойчивых систем, как в Google, Яндекс или Озон
Познакомишься с огромным количеством паттернов и приемов проектирования высоконагруженных систем
Узнаешь, как работают репликация, шардирование, транзакции и многое другое
Научишься устанавливать требования для высоконагруженных систем, считать нагрузку и ресурсы, проектировать API, модель данных и всю систему в целом
Увеличишь шансы на повышение грейда, зарплаты и повысишь свою ценность, как специалиста

На курсе Изучаем все, что bigtech-компании требуют в вакансиях

{
ффф"system design": {
ффффф"demand": 100%
ффф}
}
Программа состоит из тем, которые спросят на собеседовании
Скриншоты вакансий сделаны на hh.ru
На скриншотах представлены вакансии в:

  1. Яндекс
  2. SBER Tech
  3. ВКонтакте
  4. Т-Банк

в программе 8 практических уроков с домашней работой и практикой

{
ффф"ratio": {
ффффф"theory": 60%,
ффффф"practice": 40%
ффф}
}
Систематизированно и без воды изучаем все, что нужно для работы и собеседований
Свойства информационных систем
  • Надежность
  • Масштабируемость
  • Производительность
  • Удобство сопровождения
  • Безопасность

Критерии информационных систем
  • Data / compute intensive системы
  • Read / write intensive системы
  • Low latency системы
  • High throughput системы

Балансировка нагрузки
  • клиентская / серверная
  • DNS и geoDNS балансировка
  • L4 / L7 балансировка
  • алгоритмы балансировки - random / round robin / weighted round robin / least connections / least response time / least bandwidth / sticky sessions / power of two choises

Проксирование
  • forward / reverse

  • Функциональные и нефункциональные требования
  • Расчет нагрузки
______________________________

Результат:
  • знаешь основные критерии и свойства информационных систем, без которых невозможно спроектировать большую отказоустойчивую систему.
  • разбираешься в балансировке нагрузки и проксировании, а также умеешь устанавливать требования к системе и считать нагрузку.

Бонус:
  • вместе установим функциональные и нефункциональные требования для одного популярного приложения, а также оценим будущую нагрузку на него.

Домашнее задание:
  • установить функциональные и нефункциональные требования, а также рассчитать нагрузку для будущей социальной сети

Открыть ДЗ
Здесь собраны знания из личного опыта, книг, статей, конференций и реальных собеседований
Все темы можно найти по кусочкам, но это долго и неэффективно. Мы систематизировали весь контент в одном месте на понятном языке и с практикой

как ты разберешься в system design?

Сделали качественные записи вместо online-уроков, чтобы можно было учиться в любое время. Вся информация актуальна на текущий год

Уроки длятся по 1.5−2 часа

Записанные уроки студийного качества

Занятия открываются по вторникам и четвергам в 10:00 по МСК
Будешь решать тесты для закрепления материала и выполнять небольшие ДЗ, из которых в конце вырастет соцсеть для путешественников. Ты спроектируешь ее с полного нуля за месяц учебы

Домашние задания и итоговый проект

Тесты обязательны. Они открываются после каждого модуля, а их прохождение занимает <5 минут

ДЗ и итоговый проект необязательны. Без их сдачи
можно изучать все лекции и закончить обучение
На общих zoom-созвонах можно задавать любые вопросы по урокам, домашкам, собеседованиям по System Design и проектированию систем на работе

4 Q&A-сессии в свободное от работы и учебы время

Q&A-сессии проходят по будням в 19:00 по МСК. Запись остается
Посмеяться, обсудить проблему или задать вопрос — на связи целое комьюнити разработчиков

Поддерживающий чат с участниками курса

Будешь совместно с другими учениками курса делать код-ревью друг другу и дополнительно закрепишь полученные знания о высоконагруженных системах

Code review сокурсников

Проектирование приложения на интервью или в компании — это не единоличная работа, поэтому тренировка с напарником полностью моделирует ситуацию из жизни и готовит тебя к этой задаче.

Вместе с напарником ты будешь совместно практиковаться в построении различных частей системы

Тренировки с напарником

Выбирается один участник из группы. Остальные вместе с преподавателем дают обратную связь и учатся на чужом опыте

Групповое mock-собеседование для подготовки к System Design-интервью

Разбиваемся на группы. Каждая проектирует одну и ту же систему, а потом защищает ее перед сокурсниками и преподавателем

Групповое проектирование системы для практики на работе

Получишь список бесплатных книг, видео-уроков и статей, которые позволят тебе изучить System Design еще глубже

Дополнительные материалы

Получишь чек-листы и методички по установке нефункциональных требований, оценке нагрузки и расчету ресурсов для будущей системы, чтобы не забыть важные детали на работе или во время интервью

Чек-листы и методички

После прохождения курса получишь именной сертификат, который будет служить подтверждением твоих навыков

Сертификат

Преподаватель — владимир балун, ex-team lead в яндекс

руководил разработкой системы трейсинга (11ГБ/с трафик)
Yandex
разрабатывал системы трейсинга и непрерывного профилирования
Ozon
разрабатывал движок по подбору таргетированной рекламы
Tinkoff
разрабатывал Kaspersky Endpoint Security
Kaspersky Lab
поддерживал ICQ и разрабатывал My Teams
Mail.ru
руководил курсом Golang Developer.Professional
OTUS
спикер конференций
CodeFest и Saint HighLoad++
прошел mock-собеседования по System Design с разработчиками из Microsoft и Google, по результатам которых получил только положительные оценки
Microsoft и Google
подписчиков на YouTube
30 000+
менторства и личного обучения
> 600 часов
учеников обучились на моих курсах
> 1000
занимаюсь программированием
6+ лет

средняя оценка учеников

{
ффф"reviews": {
ффффф"reliability": true
ффф}
}
Читай реальные отзывы моих студентов
4.94 / 5

видеоотзывы — смотри, что говорят ученики о курсе

Cтарший разработчик VK – @Temo_dj
Разработчик Яндекс – @IgoruAle
Разработчик ВКонтакте – @romansarvarov
Разработчик – @pgbnk

На этом курсе можно учиться от лица компании

{
ффф"it_companies": {
ффффф"trust": 100%
ффф}
}
Вот, кто уже обучил у нас своих сотрудников
Как только курс будет доступен к прохождению, ты первым (-ой) узнаешь о самой выгодной цене для покупки
Забронируй за собой место в анкете предзаписи
предзапись бесплатная

Развеиваю мифы

  • Сергей
    Владимир, мне кажется, я не смогу научиться System Design за 4 недели…
  • Владимир
    Сергей, если ты знаешь основы программирования, понимаешь как примерно работают компьютерные сети и у тебя есть база в алгоритмах, то все будет хорошо, можешь не переживать! На курсе мы будем идти поэтапно от простого к сложному, от теории к практике + ты сможешь задавать любые вопросы, на которые получишь ответ
  • Виталий
    Это сложно для меня. Мне кажется, я ещё не дорос...
  • Владимир
    Все новое и неизведанное кажется для нас страшным и сложным, я тебя понимаю) Если ты соответствуешь всем требованиям специалиста, которому подходит курс, то справишься со всеми трудностями. Во-первых, я всегда на связи, во-вторых, у тебя будет напарник, с которым вы сможете поддерживать друг друга, да и в-третьих, весь курс объясняется простым языком. Отзывы соврать не дадут)
  • Евгений
    Я не смогу применять знания на практике
  • Владимир
    Весь курс наполнен практикоориентированной теорией, без которой невозможно построить высоконагруженную и отказоустойчивую систему.

    Я поработал уже в 5 ведущих IT-компаниях России, успешно прошел mock-собеседования с сотрудниками из Google и Microsoft по System Design на платформе pramp.com, а мои ученики проходят System Design интервью и устраиваются в ведущие IT-компании.

    За моими плечами реальный практический опыт, которым я с радостью с тобой поделюсь!

Начни бесплатно

Виды и способы + сценарии использования
Партиционирование
Руководство • 12 минут

Как подготовиться к system design интервью

Что будут спрашивать, какие задачи встречаются, типовые ошибки кандидатов и советы по подготовке от ex-Team Lead из Яндекса

Частые вопросы

{
ффф"questions": {
ффффф"quantity": 12
ффф}
}
Для комфортного обучения на курсе нужно иметь уровень не ниже Middle.

Чтобы выжать из курса максимум, необходимо владеть основами программирования, понимать, как работают компьютерные сети, знать базовые алгоритмы и структуры данных, а также иметь с ними примитивный опыт работы.

Курс не рассчитан на Junior’ов — учиться можно, но часть информации усвоить не получится.

По статистике последних потоков на курсе учатся:
  • junior — 6%
  • middle — 42%
  • senior — 36%
  • lead — 16%

Остались вопросы?

Если у тебя срочный вопрос, можешь написать нам в Telegram-бот
Если ты готов немного подождать, оставляй вопрос на сайте — мы свяжемся с тобой в ближайшее время
Следующий урок
Шардирование: способы шардирования
и перебалансировка

Начни бесплатно

Партиционирование: виды и способы + сценарии использования