Специальная цена

System Design

26 декабря

4 месяца

Онлайн

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

Для кого этот курс

  • Разработчики программного обеспечения (Software Developers)
  • Архитекторы (Solution Architects, Software Architects, Highload Architects)
  • Технические лиды (Tech Leads)
  • Инженеры по данным (Data Engineers)
  • DevOps-инженеры

Необходимые знания

  • Языки программирования: Java, Python, C++, JavaScript, Go, или другие популярные языки
  • Базы данных: SQL, NoSQL, например, PostgreSQL, MongoDB, Redis
  • Облачные платформы: Яндекс.Облако
  • Инструменты и технологии: Docker, Kubernetes, микросервисная архитектура, REST и gRPC, CI/CD

Что даст вам этот курс

  • Разработчикам: позволит улучшить понимание системного дизайна, чтобы создавать более масштабируемые и устойчивые приложения;
  • Архитекторам: систематизируете и обновите свои знания по проектированию сложных систем;
  • Лидам: позволит глубже понять методы и подходы к разработке архитектуры решений;
  • Дата-инженерам: поймете, как проектировать распределенные системы;
  • DevOps'ам: научитесь применять системный дизайн при развертывании и управлении инфраструктурой.

Особенности курса

  • Практическая ориентация на реальные кейсы
    Курс будет построен на разборе реальных кейсов, которые используют ведущие IT-компании. Это позволит студентам лучше понять, как решаются практические задачи в реальном мире
  • Подготовка к интервью в крупных компаниях
    Основное внимание будет уделено подготовке к системным интервью, включая симуляции и разборы типичных вопросов, что является востребованным навыком на рынке труда
  • Проектная работа
    Завершение курса предполагает выполнение комплексного проекта, который можно использовать в портфолио. Этот проект будет ориентирован на решение реальной проблемы, что даст студентам конкурентное преимущество 
  • Уникальный контент
    Курс включает в себя эксклюзивные материалы и инструменты, которые используются в компаниях, работающих с большими и распределенными системами 
Зачем изучать системный дизайн?
 
  • Многие компании, ожидают, что кандидаты будут готовы к вопросам по системному дизайну на интервью. Это включает в себя разбор кейсов, проектирование системы с учетом нефункциональных требований (например, надежность, производительность) и оценку различных trade-offs.
  • Вакансии для средних и старших аналитиков часто включают задачи по проектированию архитектуры системы, взаимодействию с разработчиками и разработке технической документации. Знание системного дизайна помогает выполнять эти задачи на высоком уровне и часто требуется для работы в крупных компаниях или на сложных проектах.
  • Во многих вакансиях для системных аналитиков указывается необходимость глубокого понимания принципов системного дизайна. Например, компании требуют знания архитектурных паттернов, умения проектировать масштабируемые системы и опыт работы с распределенными системами. Эти навыки важны как для разработки новых систем, так и для анализа существующих, чтобы предложить оптимальные решения.

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в Telegram, сдача домашних работ и получение обратной связи от преподавателя.

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

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

После выполнения всех домашних заданий вы получите готовый выпускной проект.

Оптимальная нагрузка

Возможность совмещать учебу с работой

Портфолио

Индивидуальная разработка итоговой проектной работы 

Перспективы

 

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

Партнеры

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

  • Получите помощь с оформлением резюме, портфолио и сопроводительного письма
  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда

Обратная связь


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

Активное комьюнити


Чат в Telegram для общения преподавателей и студентов

Программа

Основные концепции системного дизайна

Тема 1: Основы системного дизайна

Тема 2: Требования и анализ

Тема 3: Шаблоны проектирования (Design Patterns)

Масштабирование и производительность

Тема 1: Масштабирование систем

Тема 2: Высокая доступность (High Availability) и отказоустойчивость

Тема 3: Производительность и оптимизация

Сетевые технологии и взаимодействие компонентов

Тема 1: Сетевые протоколы и взаимодействие

Тема 2: Работа с API и микросервисами

Тема 3: Системы сообщений и очередей

Хранение данных и работа с базами данных

Тема 1: Выбор и проектирование баз данных

Тема 2: Кэширование и хранение данных

Безопасность и управление доступом

Тема 1: Безопасность систем

Тема 2: Управление доступом и секретами

DevOps и CI/CD

Тема 1: Инфраструктура как код (IaC)

Тема 2: CI/CD и автоматизация

Кейсы и практические задания

Тема 1: Обзор типов вопросов на интервью по системному дизайну

Тема 2: Разбор популярных кейсов на интервью

Тема 3: Архитектура высоконагруженных систем

Тема 4: Подготовка к системным интервью

Тема 5: Проектирование систем хранения данных

Тема 6: Сетевые протоколы и их применение на практике

Тема 7: Безопасность и надежность систем

Тема 8: Работа с инфраструктурой и DevOps

Тема 9: Подготовка к системным интервью в топовых компаниях

Проектная работа

Тема 1: Выбор темы и организация проектной работы

Тема 2: Консультация по проектам и домашним заданиям

Тема 3: Защита проектных работ и подведение итогов курса

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

Выпускной проект

 

Каждый семестр завершается финальным проектом, который предстоит защитить перед преподавателями и командой. Вам будет, что обсудить на собеседовании!

 

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

 

Вы можете выбрать одну из предложенных преподавателем тем или реализовать свою идею.

Преподаватель

Руководитель курса

Кирилл Дикалин

Альфа-банк

Руководитель направления аналитической инфраструктуры

27 занятий
543 студента

Руководитель направления аналитической инфраструктуры в Альфа-Банке Автор и код-ревьювер курса по Data Engineering Имеет более пяти лет опыта в области дата-инжиниринга. Эксперт в создании высоконагруженных и распределённых систем, а также в развёртывании облачных инфраструктур Выпускник МГТУ им. Н.Э. Баумана по специальности "Прикладная информатика"

Преподает на курсах

  • Data Warehouse Analyst
  • Data Engineer
  • ClickHouse для инженеров и архитекторов БД
  • Highload Architect
  • System Design

Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания

Ближайшие мероприятия

Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.

Введение в системный дизайн и архитектурные паттерны
Кирилл Дикалин
Вы узнаете:
На занятии вы познакомитесь с ключевыми концепциями системного дизайна, включая основные архитектурные паттерны для построения масштабируемых и устойчивых систем. Мы обсудим, как учитывать нефункциональные требования — производительность, надежность, безопасность — и научимся анализировать их влияние на архитектуру. Также разберем примеры из реальных кейсов, чтобы понять, как эти принципы работают на практике.

Кому подходит этот урок:
- Разработчикам, стремящимся лучше понять системный дизайн для создания стабильных и надежных приложений
- Архитекторам и техническим лидам, которым необходимо систематизировать знания в области проектирования
- Всем, кто хочет перейти на более высокую позицию, связанную с созданием сложных IT-решений

Результаты урока:
Вы получите четкое представление о базовых принципах системного дизайна и распространенных архитектурных паттернах, научитесь учитывать нефункциональные требования при проектировании, что позволит создавать оптимизированные и эффективные системы.
...
5 декабря в 17:00
Открытый вебинар
Проектирование распределённых систем и управление масштабируемостью
Кирилл Дикалин
Вы узнаете:
На занятии вы изучите основы проектирования распределённых систем, включая методы обеспечения масштабируемости, отказоустойчивости и работы с высокими нагрузками. Мы обсудим, как решать проблемы, связанные с согласованностью данных и сетевой латентностью, и рассмотрим подходы к выбору компромиссов между доступностью и производительностью.

Кому подходит этот урок:
- Дата-инженерам и DevOps-инженерам, работающим с распределёнными системами и управлением инфраструктурой
- Архитекторам и техническим лидам, которым важно понимать особенности распределённых систем
- Разработчикам, которые хотят углубить знания в создании высоконагруженных и отказоустойчивых решений

Результаты урока:
Вы узнаете, как проектировать распределённые системы, способные эффективно обрабатывать большие объёмы данных. Научитесь применять принципы масштабируемости и управлять компромиссами при проектировании, что поможет разрабатывать устойчивые и высокопроизводительные решения.
...
12 декабря в 17:00
Открытый вебинар

Корпоративное обучение для ваших сотрудников

OTUS помогает развивать высокотехнологичные команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Сертификат о прохождении курса

OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса и удостоверение о повышении квалификации.

После обучения вы:

  • Получите материалы по пройденным занятиям (видеозаписи курса и дoполнительные материалы)
  • Создадите свой проект, который поможет при прохождении собеседований
  • Повысите свою ценность и конкурентоспособность как IT-специалист
  • Получите сертификат об окончании курса

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

Почему OTUS?
Мы обучаем IT-сотрудников уже 6 лет, через OTUS прошли 20 000 студентов. Специализируемся на программах для людей с опытом, а ещё – быстро переформатируем учебные программы под изменения в сфере информационных технологий.
Обязательно ли выполнять и защищать выпускной проект?
Для получения сертификата OTUS и УПК (удостоверение повышения квалификации государственного образца) необходимо сдать проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем. Для получения УПК также понадобится предъявить документ об образовании.
Обязательно ли выполнять все домашние задания?
Да, если хотите хорошо отточить навыки. На курсе будут практические домашние задания, их выполнение занимает примерно 2-3 часа.
Помогаете ли вы с трудоустройством после курса?
В Otus Club проводятся вебинары на тему трудоустройства, разбор резюме, прохождения собеседований, особенности реферальных программ при найме. Также обратим ваше внимание, что преподаватели курса занимают ведущие позиции в разных компаниях. Будьте активны, выполняйте домашние задания, стройте network с сокурсниками и преподавателями, и вам будет проще найти работу, расширив свои контакты.
Смогу ли я совмещать учебу с работой?
Да. Программа курса рассчитана на студентов, у которых мало времени. Лекции проводим дважды в неделю, домашние задания — не чаще 1 раза в неделю.
Что, если в середине курса я не смогу продолжать обучение?
Вы можете бесплатно перейти в другую группу. Но только один раз.
Я могу вернуть деньги?
Да, мы можем вернуть деньги за то время курса, которое вы ещё не успели отучиться. Например, если курс длится пять месяцев, а вы отучились один, мы вернём деньги за оставшиеся четыре месяца.
Может ли мой работодатель оплатить курс?
Да. Когда свяжетесь с нашим менеджером, уточните, что оплачивать курс будет ваш работодатель.
Остались вопросы?
Оставляйте заявку и задавайте вопросы менеджеру, команда курса с ним на связи и постарается дать вам исчерпывающую информацию.