Архитектурные паттерны разработки ПО

✔ Онлайн обучение
✔ Все материалы в ЛК
✔Много практики
✔ Проверка ДЗ
Курс в записи

Что вас ждет на курсе


Спроектируее распределенную систему

Спроектируете интеграционное взаимодействие в распределенной системе

Разберете кейс по рефакторингу монолитной системы и переводу на микросервисную архитектуру


Овладеете терминологией, принятой в проектировании архитектуры ИС

Узнаете и научитесь применять на практике наиболее распространенные архитектурные паттерны

Научитесь проектировать распределенную архитектуру

Систематизируете свои знания о способах реализации интеграций.

Много практики

Актуальные знания


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

На интенсиве мы разберем и обсудим примеры реальных RESTful API

Полезные умения

Программа курса

1
Занятие 1. Введение в архитектуру ИС
1. Подходы к разработке ПО
1.1. Data-driven
1.2. Test-driven
1.3. Code-driven
1.4. Contract-driven
2. Роль системного аналитика в принятии архитектурных решений
3. Генерализованные архитектурные модели
3.1. Модель MVC/MVVM
3.2. Модель слоев
4. Понятие «связности» и «сцепленности»
5. Монолитная vs. распределенная архитекутра
6. Использование структурных диаграммы UML для проектирования архитектуры

Домашнее задание: выполнение теста по теме лекции


2
Занятие 2. Распределенная архитектура

1.    Технологии горизонтального масштабирования
1.1. Контейнеризация приложений средствами Docker
1.2. Технологии облачного развертывания: Kubernetes и др.
2.    Виды распределенной архитектуры
2.1. Клиент-серверная модель
2.2. Сервис-ориентированная архитектура (SOA)
2.3. Микросервисная архитектура
3.    Паттерны распределенной архитектуры
3.1. Service Mesh
3.2. Database per Service
3.3. Event-Driven Architecture
4.    Трассировка, мониторинг и другие служебные сервисы

Домашнее задание: проектирование распределенной системы


3
Занятие 3. Интеграционные паттерны

1.    Синхронные и асинхронные интеграции
1.1. Критерии выбора между синхронным и асинхронным взаимодействием
1.2. Интеграции через оперативные БД и брокеры сообщений: Kafka, Reids, JMS и другие
2.    Типичные паттерны интеграций в микросервисной архитектуры
2.1. АPI Gateway
2.2. Event Bus
2.3. «Бэкенды для фронтендов»
3.    Корпоративная шина (ESB)
4.    Распределенные транзакции: паттерн Сага

Домашнее задание: проектирование интеграционного взаимодействия в распределенной системе

4
Занятие 4. Практикум: рефакторинг монолита

1.    Разбор домашнего задания
2.    Разбор кейса по рефакторингу монолитной системы и переводу на микросервисную архитектуру
4 вебинара по 2 академических часа
По cредам на площадке Webinar
20:00 по МСК
Все материалы будут у вас в ЛК
Домашнее задание с обратной связью
Нужно будет делать раз в неделю и присылать на
проверку преподавателю (в зависимости от тарифа)
Все вопросы и общение с одногруппниками в нем
В зависимости от выбранного тарифа можно будет задавать вопросы преподавателю по обучению
Расписание
Домашние задания
Закрытый чат и канал
Организация учебы
Комюнити
В течение курса вы будете делать групповые работы, в конце мы устраиваем отдельный круглый стол по теме с нашими выпускниками

Также мы бесплатно приглашаем наших выпускников на все мероприятия

Автор курса


Тихонов Владимир. Закончил
МГУ им Ломоносова и долгое
время работал менеджером
ВЭД. Но в 2015 году понял, что
обладает способностями к IT
и решил начать свой путь
системного аналитика.

Владимир проработал ведущим
системным аналитиком на
проектах банка ВТБ, занимался
ML проектом по предсказанию
спроса для KFC и проектировал
систему фродмониторинга для
государственного контроля.

Наши эксперты

  • Шелобаев Владислав
    Lead аналитик Промсвязьбанк
    У Вячеслава более 15 лет опыта в сфере IT, работал, как архитектором сервисов, так и техническим директором. Работал в таких компаниях, как Аэрофлот, НИУ ВШЭ, Автор статей на хабре https://habr.com/ru/users/Vlad64gven/posts/

    Технологический стек:

    1. Java 8 (Spring framework), JS (React framework)
    2. СУБД - PostgreSQL, MSsql.
    3. Интеграция - ActiveMQ, Factor-ESB.
    4. Postman, SOAP UI для тестирования.
    5. OpenShift, Docker.
    6. CI/CD - Stack Atlassian (Jira, Bitbucket, Bamboo, Crucible, Confluence).
    7. Linux.
  • Тихонов Владимир
    CTO Calipso tech, ex tech lead VTB
    Более 7 лет опыта в IT на должности системного аналитика. Владимир занимался ML проектами для розницы, айти системой управления транспорта г. Москвы. Системой по фрод-мониторингу для иностранных банков

    Технологический стек:

    Jira, Git, Visio (и т.п), нотациями UML/BPMN, методологиями Scrum/Kanban/Waterfall,
    SQL (Oracle, PostgreSQL), REST/SOAP, инструментом тестирования API - Postman.
  • Ким Алексей
    Lead аналитик Modeus (система модульного образования в РФ).
    В системном анализе с 2012 года, прошел путь от джуна до руководителя отдела системного анализа в компании ITFB Solutions.
    Принимает участие на проектах заказной разработки и продуктовой, на готовых решениях и на самописных системах.

    Принимал участие в проектах Сбербанка, Зенит Банка, МТС Банка, Сибур, Бинбанк, Сбер КИБ

    Принимал участие в разработке продукта компании TEDU Inc для высшего образования США.

    Технологический стек:
    Oracle Siebel CRM, Sugar CRM/Suite CRM, BPM Camunda
    БД: Postgres, MS Sql, Mysql
    BI: Power BI, Microsoft reporting, Tableau, Qlik
  • Владимир Баскаков
    Senior Development at DoorDash
    https://www.linkedin.com/in/vladimir-baskakov/
    Владимир закончил физфак МГУ, долгое время работал в Mail Group. Позже переехал в Америку, работал над стартапом в Cherrylab

    На данный момент работае с DataBricks, Kotlin, ElasticSearch, SnowFlake, PostgreSQL. Занимается улучшением качества поиска

    Special Skills:
    Hand-on experience in design microservice and service oriented architectures
    Hand-on experience with scalable cluster systems
    Strong algorithmic skills
    Understanding of computer science fundamentals: Processes, Threads, Memory management, Synchronization primitives, Coroutines
    Hand-on experience with Cloud Computing services Like AWS, Google Cloud, Microsoft Azure
    Experience with Python, Java, C++. Deep understanding and experience with Object Oriented and Functional programming
    Experience with search engine development
    Unit testing


  • Артемий Климов
    Старший разработчик ГК Иннотех https://ru.linkedin.com/in/artemyklimov

    Артемий закончил МГТУ им Баумана. Опты в IT 5 лет. За 5 лет прошел путь от джуниор разработчика до старшего разработчика проектов ГК Иннотех для цифровой трансформации банка ВТБ. На данный момент переходит на позицию Архитектора проекта.

    Технологический стек: PHPJavaScriptLinuxPostgreSQLMySQLLaravelYii frameworkC++DevOpsAPI Интерфейсы



Наши ученики
Курс в записи
Дополнительные материалы/Чеклисты/Возможность сдать проект на проверку
Курс в записи
11800 7900
начать
Проверка итоговой работы
7000 6200
Проверить