Чему вы научитесь
- проектировать backend по Vertical Slice Architecture, где вся логика одной фичи собрана в одном месте;
- разделять операции на команды и запросы по принципу CQRS;
- строить REST API на ASP.NET Core с минимальными эндпоинтами (Carter);
- работать с PostgreSQL как с документной базой через Marten;
- применять паттерн «Посредник»: использовать MediatR — и написать собственный аналог с нуля, разобравшись в рефлексии и дженериках;
- переходить на Wolverine и сравнивать генерацию кода на старте с поиском обработчиков через рефлексию;
- настраивать валидацию (FluentValidation) и маппинг объектов (Mapster, затем Mapperly на source generators);
- обрабатывать ошибки через паттерн Result и библиотеку ErrorOr, а не только исключениями, и выбирать подходящую стратегию;
- реализовывать полнотекстовый поиск средствами самого PostgreSQL, со словоформами;
- переводить анемичную модель в Rich Domain Model — с инвариантами, фабриками и доменным поведением;
- применять event sourcing: хранить историю изменений, строить проекции и получать состояние на любой момент прошлого («time travel»);
- организовывать обновления в реальном времени через Server-Sent Events.
О курсе
Собираем backend-сервис на C# и .NET по Vertical Slice Architecture: CQRS, документное хранилище и event store Marten поверх PostgreSQL, Wolverine, полнотекстовый поиск, богатая доменная модель, event sourcing и живые обновления через Server-Sent Events — от чистого решения до продвинутых приёмов
Для кого этот курс
.NET-разработчики уровня, которые знают C#, но хотят вырасти в проектировании backend-архитектуры.
Те, кто пишет на ASP.NET Core и хочет уйти от классической многослойной архитектуры к Vertical Slice + CQRS.
Разработчики, которым интересны Marten, Wolverine, event sourcing, полнотекстовый поиск Postgres, но непонятно, с чего начать и как это сочетается вместе.
Все, кто готовится к собеседованиям, где спрашивают про архитектуру, CQRS, обработку ошибок и работу с БД.
Когда это особенно пригодится: старт нового сервиса «с чистого листа», рефакторинг легаси-проекта, желание навести порядок в разросшемся коде или просто прокачать инженерный кругозор на современном стеке.
Начальные требования
Чтобы курс шёл комфортно, желательно заранее:
- уверенно знать C#: классы и интерфейсы, дженерики и ограничения (
where),async/await, LINQ, nullable-ссылочные типы; - иметь базовое представление об ASP.NET Core и о том, как устроен HTTP/REST (методы, статус-коды, маршруты);
- уметь пользоваться Git и Docker на уровне базовых команд (клонировать репозиторий, поднять контейнер).
Не требуется заранее: опыт с Marten, Wolverine, Mapperly, event sourcing, CQRS или Vertical Slice Architecture — всё это объясняется в курсе с нуля
Преподаватели курса
Как проходит обучение
- Видео-уроки — по короткому ролику на каждый шаг разработки.
- Развёрнутые текстовые лекции к каждому уроку: то, что в видео пролетает быстро, здесь разобрано подробно — с листингами кода дословно из проекта, ссылками на документацию и врезками теории.
- Тесты с автоматической проверкой — чтобы закрепить понятия сразу после урока.
- Формат работы: посмотреть видео → прочитать лекцию → пройти тест → повторить шаг в своём проекте.
- Техническое задание с проверкой от автора курса.
- Вопросы и обсуждение — в комментариях к шагам и в Телеграм-чате
Что вы получите
- Навык проектирования backend по VSA/CQRS — то, что ценят работодатели и о чём спрашивают на собеседованиях.
- Готовый референс-проект современного .NET-сервиса, который можно показать в портфолио и переиспользовать как шаблон.
- Понимание трейд-оффов, а не только «как сделать»: когда уместен Result, а когда исключения; чем богатая модель лучше анемичной; когда генерация кода выигрывает у рефлексии.
- Знакомство с актуальным стеком: .NET 10, Marten, Wolverine, Mapperly, FluentValidation, ErrorOr, PostgreSQL full-text search.
- Материалы для самостоятельной практики: пошаговый код в Git, Postman-коллекция, живой дашборд и симулятор нагрузки.
- Сертификат Stepik об окончании курса.