СТАРТ:
23 сентября
ДЛИТЕЛЬНОСТЬ:
18 онлайн-занятий
[по вторникам и четвергам]
Комплексный курс, который даст фундаментальные знания в сфере системного дизайна, научит строить сложные высоконагруженные системы и организовывать весь процесс разработки: от планирования и расчетов затрат на реализацию ― до анализа и масштабирования.
курс подойдет:
-
Middle & Senior Developers которые хотят систематизировать знания, научиться создавать легкомасштабируемые ІТ-системы, получить практический опыт и «право на ошибку» с курсовым, а не реальным проектом.
-
Developers & Software Engineers которые хотят стать Software Architect, Solution Architect, Security Architect или СТО и которым не хватает актуальных знаний, хард-скилов и навыков управления командой, коммуникации между заказчиками и разработчиками.
-
Tech Lead & Team Lead которые хотят разобраться в атрибутах больших систем и принципах построения высоконагруженной архитектуры и научиться отвечать не только за технические задачи, но и за стратегию, бюджет и команду.
-
Качественная и тщательно продуманная архитектура может уберечь ваш проект от проблем, убытков и неэффективных решений. Как проектировать и реализовывать сложные разветвленные системы, удовлетворять запросы заказчика и гарантировать безопасность и отказоустойчивость — вы узнаете на этом курсе.
-
Сначала мы рассмотрим требования современного ІТ-бизнеса и тренды в разработке. Затем подробно разберем все атрибуты больших систем и научимся проектировать сложную масштабируемую архитектуру. Далее ― научимся анализировать дизайн-системы и прорабатывать возможные ошибки. В результате вы создадите собственную архитектуру с нуля и получите полный скилсет Software Architect.
У ПРОГРАММУ КУРСУ ВХОДЯТ
-
БАЗА СИСТЕМНОГО ПРОЕКТИРОВАНИЯ Получите фундаментальные знания в сфере системного дизайна, узнаете все тренды в архитектуре и поймете, какие технологии лежат в основе масштабируемых и отказоустойчивых систем.
-
ПРАКТИКА Подробно разберете все атрибуты больших IT-систем, научитесь производить расчеты, выбирать оптимальные решения, свободно проектировать высоконагруженную архитектуру и заключать SLA- и SLO-соглашения.
-
РАЗРАБОТКА АРХИТЕКТУРЫ С НУЛЯ Получите требования к финальному проекту и самостоятельно разработаете сложную архитектуру, используя high-level дизайн-схемы, в том числе draw.io и Microsoft Visual Studio Designer. Добавите проект в портфолио.
-
РАЗРАБОТКА АРХИТЕКТУРЫ С НУЛЯ Получите требования к финальному проекту и самостоятельно разработаете сложную архитектуру, используя high-level дизайн-схемы, в том числе draw.io и Microsoft Visual Studio Designer. Добавите проект в портфолио.
-
КАРЬЕРА Научитесь анализировать преимущества и недостатки разных архитектур, сможете реализовывать сложные проекты, организовывать весь процесс проектирования и разработки.
-
БОНУС Студент с наибольшим количеством баллов получит возможность пройти техническое интервью на роль Software Architect и рекомендации в Microsoft от лектора.
ПРОГРАММА
-
01
Intro в architecture in practice
- Поймете, что такое architecture in practice.
- Разберете ключевые задачи, стоящие перед архитектором.
- Ознакомитесь с воркфлоу курса и возможными финальными проектами.
- Поймете основные концепции Software Architect.
-
02
Современные архитектурные практики и тренды в разработке
- Поймете, какие архитектурные практики существуют для разработки высоконагруженных систем и облаков.
- Научитесь делать research и development новых трендов, а также делать план архитектуры и грубые расчеты.
- Разберете тренды в Energy Efficiency, OpenAI, Quantum Computing, Blockchain и IoT.
-
03
Роль Software Architect в команде
- Разберетесь в задачах Software Architect, поймете, какие из них можно делегировать, а какие — нет.
- Поймете, как работает IT-бизнес, и научитесь понимать требования заказчика.
- Научитесь собирать и документировать требования к программе, разберете самые распространенные ошибки во время этого процесса.
- Получите советы по менеджменту больших технических команд.
-
04
Архитектура для Open AI, Big Data and Machine Learning
- Поймете, что такое data-intensive программы и какие задачи стоят перед архитектором высоконагруженных систем при использовании искусственного интеллекта.
- Научитесь делать high level архитектуры для data science проектов.
- Поймете, на что нужно обращать внимание в data science проектах.
-
05
Блокчейн, энергоэффективность и квантовые вычисления
- Поймете, что такое blockchain и quantum computing и зачем использовать их в архитектуре.
- Разберете задачи, стоящие перед архитектором при изменениях климата.
- Узнаете, как проектировать программы энергоэффективными.
- Научитесь производить грубые расчеты CO2 для архитектуры.
- Узнаете, как сделать редизайн существующих систем в соответствии с новыми трендами.
-
06
Паттерны проектирования, атрибуты и виды больших систем
- Поймете, что такое паттерны проектирования, атрибуты и виды больших систем
- Узнаете, как улучшить коммуникацию в команде, когда над проектом работают специалисты с разными ролями и разным пониманием требований.
- Научитесь общаться с supply chain, hardware, security и operations.
- Получите советы по построению эффективной коммуникации на всех уровнях: от C-level и продакт-менеджеров — до девелоперов.
-
07
Персоналии, инфраструктура и взгляды разработчиков
- Поймете, что такое highload и data-intensive приложения.
- Научитесь делать грубые расчеты для архитектуры программы.
-
08
Availability, Deployability, and Integrability
- Узнаете, что такое атрибуты availability и как это связано с возможностью развертывания и интеграции.
- Научитесь анализировать метрики этих атрибутов.
- Сделаете план и дизайн масштабирования системы, используя DevOps и конвейеры развертывания.
-
09
Modifiability, Scalability, and Performance
- Поймете, как работают и какую архитектурную специфику имеют распределенные системы.
- Узнаете best practices архитектора, когда нужно реализовать горизонтально масштабируемую систему с ограниченным бюджетом.
- Рассмотрите проблемы, которые могут возникнуть в результате масштабирования, и поймете, как они влияют на производительность.
-
10
Safety, Security, and Threat Modeling
- Поймете, что такое threat modelling.
- Научитесь производить грубые расчеты для архитектуры безопасности и защиты программ.
-
11
Usability, Testability, and Accessibility
- Поймете, что такое usability, testability и accessibility.
- Разберете задачи конструктора для этих атрибутов и поймете, какие базовые моменты нужно обсудить до старта реализации проекта.
- Научитесь делать грубые расчеты для user friendly и easy to use.
-
12
Как работать с виртуализацией и бессерверной архитектурой
- Поймете, что такое edge, virtualization и serverless-программы.
- Научитесь делать грубые расчеты для архитектуры программы.
-
13
Как разрабатывать mobile и data science приложения и чем они отличаются
- Поймете, что такое highload и data-intensive приложения.
- Разберете задачи, стоящие перед архитектором высоконагруженных систем.
-
14
Как анализировать архитектуру и определять ее преимущества и недостатки
-
15
Как задокументировать product visions, требования клиентов и заинтересованных сторон
- Научитесь собирать и документировать требования к программе.
- Научитесь определять преимущества и недостатки того или иного подхода и выбирать лучший вариант в соответствии с требованиями бизнеса.
-
16
Best practices и распространенные ошибки общей архитектуры
-
17
Работа над финальным проектом
- Сделаете survey с открытыми вопросами к лектору
- Сравните начальную и финальную архитектуру, чтобы увидеть собственный прогресс.
- Получите задания и требования к финальному проекту.
-
18
Презентация финального проекта
- Разработаете собственную архитектуру.
- Представите архитектуру лектору и коллегам.
Регистрация