Domain Driven Design и асинхронная архитектура
28 августа
3 месяца
Онлайн
Для кого этот курс:
- Software Engineers
- Frontend-developer
- Backend-developer
- Tech lead developer
- Team lead developer
- Senior DevOps engineer
Необходимые знания:
- Язык программирования:
Уверенное знание одного из языков (Python, Java, C#, JavaScript/TypeScript, Go и т.д.)
Понимание основных парадигм: ООП, функциональное программирование - Базы данных:
Понимание реляционных баз данных (SQL, PostgreSQL, MySQL) и NoSQL (MongoDB, Redis)
Базовые навыки работы с транзакциями, индексами и запросами - Инструменты разработки:
Опыт работы с Git (ветки, merge, pull requests)
Базовые навыки работы с Docker (запуск контейнеров, создание образов) - Общие знания:
Понимание основ сетевых протоколов (HTTP, TCP/IP)
Что даст вам этот курс
- Основы асинхронности: Понимание принципов асинхронной архитектуры и разницы между синхронным и асинхронным взаимодействием, что позволит осознанно подходить к проектированию систем
- Освоение стратегических и тактических шаблонов Domain Driven Design, включая связь с принципами SOLID, что улучшит способности к проектированию сложных бизнес-решений
- Архитектурные паттерны: Навыки проектирования асинхронных систем с использованием популярных архитектурных паттернов, таких как Event Sourcing и CQRS, что поможет создавать устойчивые и масштабируемые приложения
- Работа с инструментами: Умение использовать специализированные инструменты для обработки событий, логирования и анализа ошибок, что повысит качество разработки и поддержки приложений
- Решение специальных вопросов: Понимание приемов для управления распределенными транзакциями и оптимизации масштабируемых приложений, что позволит улучшить архитектуру уже существующих проектов.
Вы научитесь:
- Проектировать асинхронные приложения: способы разработки и внедрения надежных асинхронных систем, с учетом особенностей распределенных технологий
- Применять DDD: анализ бизнес-требования и разработка архитектуры программных решений с использованием принципов DDD
- Работать с архитектурными паттернами: интеграция паттернов Event Sourcing, CQRS в свои проекты, обеспечивающие масштабируемость и гибкость
- Анализировать и оптимизировать: анализ производительность систем и внесение изменений для оптимизации, что позволяет снижать издержки и повышать устойчивость приложений
- Взаимодействовать с командой: эффективная работа в команде, обсуждение архитектурных решений и применение подходов DDD в совместных проектах
Процесс обучения
Оптимальная нагрузка
Возможность совмещать учебу с работой
Портфолио
Индивидуальная разработка итоговой проектной работы
Перспективы
Получите знания, которые помогут повысить вашу востребованность и доход
Партнеры
Многие студенты еще во время прохождения первой части программы находят или меняют работу, а к концу обучения могут претендовать на повышение в должности. Мы оказываем помощь в вопросах карьеры на протяжении всего обучения и спустя полгода после его завершения.
- Получите помощь с оформлением резюме, портфолио и сопроводительного письма
- Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
- Пройдете карьерную консультацию с нашим HR-специалистом
- Получите рекомендации, как искать работу, и советы по прохождению собеседования
Формат обучения
Интерактивные вебинары
2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда
Обратная связь
Домашние задания с поддержкой и обратной связью наших преподавателей помогут освоить изучаемые технологии
Активное комьюнити
Чат в Telegram для общения преподавателей и студентов
Программа
Введение в асинхронность
Этот модуль знакомит с фундаментальными принципами асинхронной архитектуры, объясняя, почему асинхронность стала ключевым элементом современных распределённых систем, показывает разницу между синхронным и асинхронным взаимодействием.
Тема 1: Сравнение синхронных и асинхронных систем
Тема 2: Базовые концепции
Тема 3: Системы обмена сообщениями
Тема 4: Инструменты аснихронного взаимодействия
Введение в DDD
Тема 1: Стратегические шаблоны
Тема 2: Тактические шаблоны
Тема 3: Связь DDD и SOLID принципов
Тема 4: Практика проектирования в соответствии с DDD
Тема 5: Q&A занятие по ДЗ
Архитектуры асинхронных сервисов
Проектирование и построение современных асинхронных систем. Ключевые архитектурные паттерны и подходы, которые используются для создания масштабируемых и надёжных распределённых приложений
Тема 1: Основы Event Sourcing
Тема 2: Восстановление состояния и Projections
Тема 3: Event Processing
Тема 4: Сложные потоки обработки данных
Тема 5: KSQL
Тема 6: Обработка ошибок
Тема 7: Логирование и анализ ошибок
Тема 8: CQRS паттерн
Тема 9: Q&A занятие по ДЗ
Специальные вопросы
Тема 1: Управление распределёнными транзакциями
Тема 2: Оптимизация и масштабирование
Тема 3: Интеграция с внешними системами
Проектная работа
Тема 1: Выбор темы и организация проектной работы
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Тема 4: Проектная работа
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Выпускной проект
Каждый курс завершается финальным проектом, который предстоит защитить перед преподавателями и командой. Вам будет, что обсудить на собеседовании!
Вы сможете объединиться с группой и разрабатывать один масштабный проект. А ваши домашние задания станут частью проектной работы.
Преподаватель
Евгений Тюменцев
Директор компании по разработке программного обеспечения. 20 лет преподаю компьютерные дисциплины в ВУЗе: C++, Kotlin, C#, ООП. Технологии программирования. В прошлом занимался профессионально разработкой многопоточных кросс-платформенных приложений на С++. Код, написанный 14 лет назад, до сих пор работает в составе IBM Watson. Один из результатов - успешная разработка технически сложного коммерческого проекта командой из 7 студентов.
Преподает на курсах
- C# ASP.NET Core разработчик
- Математика для программистов
- C# Developer. Basic
- C# Developer. Professional
- Computer Science
- Microservice Architecture
- Архитектура и шаблоны проектирования
- Software Architect
- GA-Microservice Architecture
- GA-Математика для программистов
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Подтверждение знаний и навыков
OTUS осуществляет лицензированную образовательную деятельность.
В конце прохождения специализации вы получите сертификат OTUS и официальный диплом о получении новой специальности

После обучения:
-
Удостоверение о повышении квалификации: если вы успешно защитили выпускной проект
и готовы предоставить копию документа о высшем или среднем профессиональном образовании -
Доступ к учебным материалам курса
-
Ваш личный проект, который поможет проходить собеседования
Domain Driven Design и асинхронная архитектура
Полная стоимость
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно