system design

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

://
online_course;
всего за 4 недели без воды
во сколько
ПН,ПТ в 19:00
длительность
поток
поток №8
4 недели
23 сентября
дата начала

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

курс подойдет для специалистов
с опытом работы в IT
{
ффф"for_whom": {
ффффф"developer": true,
ффффф"designer": false,
ффффф"sys_admin": true,
ффффф"analyst": true,
ффффф"architect": true,
ффффф"product_manager": true
ффф}
}
системный администратор
Чтобы выжать из курса максимум, тебе необходимо владеть основами программирования, понимать, как работают компьютерные сети, знать базовые алгоритмы и структуры данных, а также иметь с ними примитивный опыт работы
разработчик
системный аналитик
архитектор
продакт менеджер
QA-инженер
Знакомая ситуация?
/1
На собеседованиях middle+ просят пройти system design интервью, а я ничего не знаю
/2
На работе приходится принимать участие в проектировании сложной системы, а у меня нет знаний в этой области, ничем не могу помочь
/3
Есть база по system design, но не разбираюсь в сложных темах и деталях. Не могу спроектировать большую систему / не понимаю, правильно делаю или нет
/4
Не понимаю, как работают сложные системы по типу «WhatsApp», «ВКонтакте», «Google Drive»
/5
Толком не понимаю, что такое репликация и шардирование, а также все, что с этим связано
/6
Не могу проявить себя на работе, когда обсуждают большие системы — нечего сказать, так как нет знаний в этой области
вопросов по system design ты закроешь На этом курсе
95%
ты закроешь На этом курсе 95% вопросов по system design
Подготовишься к прохождению System Design интервью — поймешь из чего оно состоит, узнаешь его особенности и научишься проходить его на реальной практике
Узнаешь, как проектируются большие отказоустойчивые высоконагруженные системы
Познакомишься с огромным количеством паттернов и приемов проектирования
Узнаешь, как работают репликация, шардирование, транзакции и многое другое
Научишься устанавливать требования к системе, считать нагрузку и требуемые ресурсы к будущей системе, проектировать API, модель данных и всю систему в целом
Повысишь текущий уровень зарплаты и увеличишь свою ценность в компании, как специалиста
ИЗУЧАЕМ ВСЕ, ЧТО BIGTECH-КОМПАНИИ ТРЕБУЮТ В ВАКАНСИЯХ
{
ффф"system design": {
ффффф"demand": 100%
ффф}
}
Программа курса состоит из тем, которые спросят на System Design-интервью
Скриншоты вакансий сделаны на 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?
На созвонах в Zoom, помимо теории, будешь регулярно обсуждать различные темы, получать ответы на свои вопросы и решать вместе с преподавателем задачи для закрепления полученных знаний

Урок длится 1.5−2 часа. Запись останется у тебя навсегда
Интерактивные онлайн-уроки в Zoom с записью
Посмеяться, обсудить проблему или задать вопрос — на связи целое комьюнити разработчиков
Поддерживающий чат с участниками курса
С нуля спроектируешь свою соцсеть для путешественников, которую сможешь использовать в качестве портфолио при трудоустройстве
Домашние задания и итоговый проект
ДЗ и итоговый проект необязательны. Без их сдачи
можно изучать все лекции и закончить обучение
Проектирование приложения на интервью или в компании — это не единоличная работа, поэтому тренировка с напарником полностью моделирует ситуацию из жизни и готовит тебя к этой задаче.

Вместе с напарником ты будешь совместно практиковаться в проектировании различных частей системы
Тренировки с напарником
Будешь совместно с другими учениками курса делать код-ревью друг другу — так ты сможешь дополнительно закрепить полученные знания
Code review сокурсников
Материалы курса наслаиваются друг на друга от занятия к занятию, поэтому тесты помогут проходить обучение последовательно

Без тестов нельзя перейти к следующему занятию, а их выполнение займет не более 5 минут
Тесты для закрепления материала
Получишь список бесплатных книг, видео-уроков и статей, которые позволят тебе изучить 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
23 000+
менторства и личного обучения
> 600 часов
учеников обучились на моих курсах
> 700
занимаюсь программированием
6+ лет
средняя оценка учеников
{
ффф"reviews": {
ффффф"reliability": true
ффф}
}
Читай реальные отзывы моих студентов
4.94 / 5
видеоотзывы — смотри, что говорят ученики о курсе
Cтарший разработчик VK – @Temo_dj
Разработчик Яндекс – @IgoruAle
Разработчик ВКонтакте – @romansarvarov
Разработчик – @pgbnk
На этом курсе можно учиться от лица компании
{
ффф"it_companies": {
ффффф"trust": 100%
ффф}
}
Вот, кто уже обучил у нас своих сотрудников
Варианты участия
Курс можно оплатить из другой страны иностранной валютой
Премиум
51 900 Р
Всего от 16 025 руб./мес.
66 600 Р
Цена вырастет через:
дней
часов
минут
секунд
Стандарт
31 100 Р
42 900 Р
Цена вырастет через:
дней
часов
минут
секунд
Всего от 10 100 руб./мес.
8 практических уроков
Проектирование 6-ти систем
Домашняя работа
Общий чат с участниками
Подготовка к System Design интервью
Финальный проект
Проверка всех работ от преподавателя
4 групповые Q&A-сессии
1 mock-собеседование с подробным разбором в группе
8 практических уроков
Проектирование 6-ти систем
Домашняя работа
Общий чат с участниками
Подготовка к System Design интервью
Финальный проект
Проверка всех работ от преподавателя
4 групповые Q&A-сессии
1 mock-собеседование с подробным разбором в группе
РазвеиваЮ мифы
  • Сергей
    Владимир, мне кажется, я не смогу научиться System Design за 4 недели…
  • Владимир
    Сергей, если ты знаешь основы программирования, понимаешь как примерно работают компьютерные сети и у тебя есть база в алгоритмах, то все будет хорошо, можешь не переживать! Мы будем идти поэтапно от простого к сложному, от теории к практике + ты сможешь задавать любые вопросы, на которые получишь ответ
  • Виталий
    Это сложно для меня. Мне кажется, я ещё не дорос...
  • Владимир
    Все новое и неизведанное кажется для нас страшным и сложным, я тебя понимаю) Если ты соответствуешь всем требованиям специалиста, которому подходит курс, то справишься со всеми трудностями. Во-первых, я всегда на связи, во-вторых, у тебя будет напарник, с которым вы сможете поддерживать друг друга, да и в-третьих, весь курс объясняется простым языком. Отзывы соврать не дадут)
  • Евгений
    Я не смогу применять знания на практике
  • Владимир
    Весь курс наполнен практикоориентированной теорией, без которой невозможно построить высоконагруженную и отказоустойчивую систему.

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

    За моими плечами реальный практический опыт, которым я с радостью с тобой поделюсь!
Боишься, что курс не понравится?
Приходи на бесплатный открытый урок по System Design!
Узнаешь, что такое кэширование и когда его стоит применять
Познакомишься с тегированием и версионированием кэша
Поймешь, в чем разница между внутренним и внешним кэшированием
Разберешься с подходами к кэшированию (lazy caching, write-through, write-back, read-through, write-around)
Познакомишься с алгоритмами вытеснения данных из кэша (OPT, 2Q, LIFO, FIFO, LFU, LMU, LRU, SLRU, TLRU, LRU-k)
Смотри, как прошел открытый урок в прошлый раз
Частые вопросы
{
ффф"questions": {
ффффф"quantity": 9
ффф}
}
Для комфортного обучения на курсе нужно иметь уровень не ниже Middle, но если ты Junior и очень хочешь пройти обучение, то стоит понимать, что тебе будет достаточно трудно, и определенную часть информации ты не сможешь усвоить.

Чтобы выжать из курса максимум, тебе необходимо владеть основами программирования, понимать, как работают компьютерные сети, знать базовые алгоритмы и структуры данных, а также иметь с ними примитивный опыт работы.
Остались вопросы?
Если у тебя срочный вопрос, можешь написать нам в Telegram-бот
Если ты готов немного подождать, оставляй вопрос на сайте — мы свяжемся с тобой в ближайшее время