Лучшие Курсы архитектора программного обеспечения 2024 года. Информация постоянно обновляется и добавляются новые курсы. Изучите как стать архитектором программного обеспечения на онлайн-курсах от лучших онлайн-школ.
Длительность | 4 месяца |
Цена в месяц | Цена 5159 ₽ |
Вы познакомитесь с инструментами и лучшими практиками построения архитектуры ПО. Научитесь выбирать архитектурный стиль под конкретную бизнес-задачу, сможете создавать масштабируемые отказоустойчивые приложения и повысите свой доход.
Цель | Обучение профессии |
Тип обучения | Самостоятельно с наставником |
Уровень | Для опытных |
Результат обучения | Сертификат |
Форматы обучения | Сообщество, Домашняя работа, Видеоуроки, Тексты |
Основы архитектуры ПО
Узнаете, что такое архитектура ПО и что должен уметь грамотный специалист. Разберётесь в важных аспектах архитектуры ПО и поймёте, как включить архитектурное мышление.
Архитектурные стили
Познакомитесь с фундаментальными стилями и шаблонами. Научитесь выбирать между монолитной и распределённой архитектурой в зависимости от бизнес-потребностей.
Распределённая архитектура
Изучите особенности распределённой архитектуры и познакомитесь с Service-Based Architecture, Space-Based Architecture, EDA и микросервисной архитектурой. Поймёте, как выстроить разработку микросервисов, и научитесь выбирать подходящий шаблон построения распределённой архитектуры в зависимости от задачи.
Функциональная декомпозиция
Научитесь выделять операции над системой и сервисы, которые участвуют в архитектуре, — и сможете их связывать. Узнаете, как декомпозировать задачи по бизнес-возможностям и доменной области. Поймёте, как определить верхнеуровневый API.
Нефункциональные требования
Научитесь выявлять нефункциональные требования к проекту и на их основе разделять систему на компоненты.
Монолит и его рефакторинг
Познакомитесь с классификацией интеграции приложений и разберётесь в фундаментальных проблемах интеграции между компонентами. Изучите подходы к интеграции в распредёленной архитектуре и научитесь проектировать системы с учётом особенностей каждого подхода.
Проектирование API
Подробно разберётесь в протоколе HTTP и познакомитесь с архитектурным стилем REST. Изучите стандарт OpenAPI и сможете проектировать API с его помощью.
API Gateway
Узнаете, какие проблемы решает паттерн API Gateway и какие у него функции: маршрутизация, балансировка, кеширование и другие. Сможете использовать возможности паттерна при проектировании систем.
Security
Познакомитесь с открытым проектом обеспечения безопасности веб-приложений OWASP, научитесь работать с аутентификацией, SSL и TLS. Сможете учитывать вопросы безопасности при проектировании веб-приложений.
Рефакторинг монолита
Узнаете, с какими трудностями столкнётесь при рефакторинге и как их преодолеть. Научитесь выделять части системы для переноса в микросервисы и познакомитесь с подходами к интеграции сервисов и монолита.
Управление транзакциями. «Сага»
Изучите транзакции в микросервесной архитектуре и познакомитесь с паттерном «Сага». Научитесь проектировать этот паттерн для разных задач по управлению транзакциями.
EDA: Event-source и CQRS
Познакомитесь с архитектурным стилем EDA, его плюсами и минусами. Узнаете, что такое события и инверсия зависимостей. Поймёте, как и когда применять подходы из Event Sourcing и паттерна CQRS.
Service Discovery & Configuration
Узнаете, как решить проблемы обнаружения сервисов и централизованного управления конфигурациями, на примере фреймворка Spring.
Observability
Изучите проблемы отладки системы в распределённой архитектуре и узнаете, что такое Observability и Monitoring. Познакомитесь с тремя столпами Observability — Logs, Metrics и Tracing. Узнаете, как наделить систему свойством наблюдаемости, научитесь собирать метрики, встраивать трассировку и аудировать действия пользователей.
Инфраструктура и среда исполнения
Разберётесь в инфраструктурных решениях для запуска приложений, познакомитесь с инструментами для контейнеризации и оркестрации. Сможете подобрать среду исполнения исходя из бизнес-задачи.
Cloud Native Application
Поймёте, какими свойствами должно обладать cloud-native-приложение. Получите чек-лист соответствия приложения стандартам cloud-native.
Soft skills и развитие карьеры
Научитесь эффектно презентовать архитектурные решения и работать в команде. Получите чек-лист с основными задачами архитектора и список ресурсов для саморазвития. Поймёте, как построить успешную карьеру архитектора ПО.
Длительность | 6 месяцев |
Цена в месяц | Цена 6 172 ₽ |
Курс по архитектуре ПО от сервиса Яндекс Практикум. Обучение на архитектора программного обеспечения за 6 месяцев с нуля. Научитесь проектированию архитектурных решений онлайн.
Цель | Изучение навыка |
Тип обучения | В группе с наставником |
Уровень | Для опытных |
Результат обучения | Сертификат |
Форматы обучения | Домашняя работа, Вебинары, Тексты |
Сбор и анализ требований
Вы узнаете, какие составляющие должны быть в ТЗ на архитектуру, и научитесь собирать требования к системе от заказчика любого уровня технической подготовки. Узнаете, как декомпозировать систему на компоненты и спроектировать взаимодействие между ними, а также познакомитесь с принципами разработки MVP и сможете определить состав MVP своего ПО, демонстрирующий основную функциональность.
Базы данных
Вы познакомитесь с популярными видами БД и возможностями их настройки, сможете подобрать вид БД и подходящее технологическое решение для проектируемой системы. Научитесь задавать необходимые настройки БД в виде требований для DevOps, сможете при проектировании сервиса учитывать требования к отказоустойчивости и закладывать настройки, позволяющие системе предсказуемо деградировать.
Межсервисные взаимодействия
Узнаете, как устроены сетевые взаимодействия, сможете сформулировать требования к настройкам сети проектируемого сервиса и проанализировать логи на предмет наличия проблем сети.
Безопасность и надёжность
Вы сможете обеспечить надёжную работу сервиса и своевременно информировать разработчиков о возникновении ошибок. Также вы научитесь настраивать логирование и мониторинги и узнаете, как диагностировать ошибки по логам.Кроме того, научитесь выбирать подходящее внешнее хранилище и определять, какие данные хранить там. Поймёте, как организовать безопасную передачу чувствительных данных.
Поддержание и обновление архитектуры
Вы сможете определить, когда необходим рефакторинг архитектуры системы. Научитесь обеспечивать миграцию данных без потерь и презентовать архитектурное решение с учётом ЦА презентации. Также узнаете, почему архитектору важно следить за реализацией решений и как это делать.
Финальный проект и архитектурное интервью
Закрепите материалы, изученные на курсе, и реализуете от начала до конца архитектуру проекта: проанализируете требования, предложите решение, подготовите документацию, детально разберёте настройки компонентов и презентуете решение. Также наставник проведёт с вами архитектурное интервью, поможет оценить ваши навыки и даст рекомендации по дальнейшему развитию.
Длительность | 3 месяца |
Цена в месяц | Цена 4 044 ₽ |
Эксклюзивный курс от архитекторов ПО, лидов и разработчиков Альфа-Банка. Научитесь создавать независимые сервисы и интегрировать их в одно крупное приложение. Сделаете несколько микросервисов и решите задачи на основе реальных кейсов из практики сотрудников банка.Длительность – 3 месяца.
Цель | Изучение навыка |
Тип обучения | Самостоятельно с наставником |
Уровень | Для опытных |
Результат обучения | Сертификат |
Форматы обучения | Сообщество, Домашняя работа, Видеоуроки, Тексты |
Этап 1. Создание простого сервиса
Научитесь разрабатывать несложные микросервисы и создавать доменную модель для будущей системы. Узнаете, как создать схему хранения информации в базе данных и настроить ее взаимодействие с сервисом. Сможете создать контейнер для приложения, который будет автоматически подключаться к базе данных. Освоите инструменты: DDD, SQL, DDL, Constraint, Spring Boot, Spring Data, RESTful, юнит-тесты, Docker Container, Docker Compose, PostgreSQL, Swagger Open API, Liquibase, UX.
Этап 2. Создание pipeline lite
Вы научитесь проводить модульное тестирование вашего сервиса вместе с базой данных и раскатывать сервисы в Kubernetes на среду разработки. Сможете создавать тестовые стенды, настраивать статистический анализ кода и поставку артефактов в хранилище. Узнаете, как выкатить поставку в продакшн с пайплайна. Познакомитесь с созданием и настройкой процесса разработки от написания кода до попадания его в продакшн. Освоите инструменты: Kubernetes, Helm; Feature, Dev- и prePROD-стенды; Smoke testing, регрессионное тестирование, SonarQube, Artifactory, GitLab CI/CD.
Этап 3. Работа с файловой системой
Поймете, как создавать HTTP/REST EndPoint’ы для взаимодействия с данными в S3. Сможете создать контейнер для приложения, который подключится к S3 хранилищу в Kubernetes. Освоите инструменты: Zero Trust, TLS, подходы ABAC и RBAC, Keycloak, OpenSSL, Spring Security, OpenID Connect, OAuth 2.0.
Этап 4. Основы безопасности
Узнаете, как обеспечить безопасность интеграций сервисов и баз данных, межсервисных взаимодействий, и познакомитесь с ролевыми моделями. Освоите инструменты: AWS Amazon S3, Endpoint, HTTP, трейсинг, логирование.
Этап 5. Интеграция сервисов через Kafka и работа с MongoDB
Научитесь использовать Kafka для интеграции и MongoDB для хранения аналитических данных. Вы сделаете микросервис, который общается через Kafka со своими соседями, и сервис, в котором будет проработана аналитика для микросервиса с данными. Освоите инструменты: SQL, MongoDB, Kafka.
Формирование целостного понимания современных архитектурных практик проектирования ПО
Модуль посвящен базовым компетенциям архитектора, которые не относятся к уровню проектирования и архитектурного решения.
Тема 1: Архитектура. Архитектурное решение.
Тема 2: Атрибуты качества архитектуры. Артефакты архитектуры
Тема 3: Семинар // ДЗ
Тема 4: Представления архитектуры
Тема 5: Cеминар 2 + разбор ДЗ
В модуле рассматриваются актуальные архитектурные решения для управления продуктом
Тема 1: Управление проектом и продуктом
Тема 2: Процесс разработки. Роль архитектора в жизненном цикле ПО
Тема 3: Модели аллокации ответственности. DDD.
Тема 4: Тактики работы с модифицируемостью // ДЗ
Тема 5: Консультация по ДЗ. Семинар
Тема 6: Тактики работы с отказоустойчивостью. #1
Тема 7: Тактики работы с обнаруживаемостью
Тема 8: Модели взаимодействия
Тема 9: Взаимодействия на основе событийной модели
Тема 10: Консультация по ДЗ. Семинар
Тема 11: Тактики работы с отказоустойчивостью. #2 // ДЗ
Тема 12: Тактики работы с масштабируемостью
Тема 13: Производственный процесс и сопровождение
Тема 14: Тактики работы с сопровождаемостью
Тема 15: Консультация по ДЗ. Семинар
Тема 16: Тактики работы с безопасностью // ДЗ
Модуль посвящен паттернам, которые встречаются при решении определенных видов задач.
Тема 1: Микросервисы
Тема 2: Frontend архитектуры
Тема 3: Микрофронтенды
Тема 4: Big Data и ML архитектуры пайплайнов
Тема 5: Mobile архитектуры
Тема 6: Модели хранения данных
Тема 7: Консультация по ДЗ. Семинар
Заключительный месяц курса посвящен проектной работе. Свой проект — это то, над чем интересно поработать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.
Тема 1: Выбор темы и организация проектной работы
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Вы научитесь настраивать пайплайны CI/CD, использовать подход «Инфраструктура как код» для настройки серверов и развёртывания инфраструктуры в облаке. Узнаете, в чём преимущество микросервисной архитектуры по сравнению с традиционной. Сможете работать с Docker и Kubernetes.
Длительность: 24 месяца по 12 часов в неделю
Курс для опытных специалистов:
Программа обучения:
Вы начнёте с основ и получите знания, необходимые для проектирования информационных систем.
В программе пять модулей, в каждом — практические задания, тесты и онлайн-вебинары.
74 часа образовательного контента, 120 часов практики, 2 вебинара в неделю
I модуль. Введение в разработку ПО. Парадигмы программирования
Расскажем о современных парадигмах программирования, их взаимосвязи, достоинствах и недостатках.
II модуль. Базовые принципы проектирования. Объектно-ориентированное проектирование ПО
Расскажем об ООП и паттернах объектно-ориентированного проектирования. Вы узнаете, как строить чистые архитектуры, проектировать библиотеки и собирать ПО для бизнес-задач.
III модуль. Проектирование прикладных приложений
Вы научитесь проектировать приложения с базами данных и пользовательским интерфейсом, а также организовывать передачу и обработку данных.
IV модуль. Проектирование сервис-ориентированных архитектур (SOA) и их производных
Получите навыки проектирования систем на основе сервис-ориентированной (SOA) и микросервисной архитектуры.
V модуль. Развертывание, сопровождение, поддержка (CI/CD)
Узнаете, как управлять, развертывать, сопровождать и поддерживать информационные системы.
🎓 Нетология 197 отзывов
Описание: Нетология — это онлайн-образовательная платформа, специализирующаяся на IT-курсах. Они предлагают широкий спектр курсов по программированию, дизайну, 3D Max, маркетингу, Android разработке, C++, VR/AR и другим IT-направлениям. Нетология стремится обеспечить практическую ориентацию своих курсов, предлагая проекты, тренировки и сопровождение опытных преподавателей.
Преимущества:
Недостатки:
🎓 Skillbox 201 отзыв
Описание: Skillbox — это онлайн-образовательная платформа, предлагающая курсы в различных областях, включая дизайн, дизайн интерьеров , разработку и маркетинг. Они предлагают практические курсы Android разработки, C++, VR/AR основанные на реальных проектах, и поддержку опытных специалистов.
Преимущества:
Недостатки:
🎓 GeekBrains 208 отзывов
Описание: GeekBrains — это онлайн-образовательная платформа, предлагающая курсы по различным IT-направлениям, включая программирование C++, VR/AR, дизайн, 3D Max, дизайн интерьеров и аналитику данных. Они стремятся предоставить студентам практические навыки и знания, необходимые для успешной карьеры в IT-сфере.
Преимущества:
Недостатки:
🎓 SkillFactory 76 отзывов
Описание: SkillFactory — это онлайн-образовательная платформа, специализирующаяся на IT-курсах. Они предлагают обширный каталог курсов по программированию C++, VR/AR, Android разработки, 3D Max, аналитике данных, дизайну, дизайн интерьеров и другим IT-направлениям. SkillFactory стремится предоставить студентам актуальные знания и навыки для успешной карьеры в IT-сфере.
Преимущества:
Недостатки:
🎓 ProductStar 61 отзыв
Описание: ProductStar — это онлайн-платформа, предоставляющая образовательные курсы по разработке программного обеспечения и продуктовому менеджменту. Они ставят целью развить у студентов навыки разработки и управления продуктами, помогая им создать успешные IT-проекты.
Преимущества:
Недостатки:
🎓 SkyPro 39 отзывов
Описание: SkyPro — это онлайн-школа, специализирующаяся на обучении различным IT-направлениям, включая дизайн интерьеров , Java-разработку, VR/AR, веб-разработку, 3D Max, C++ и аналитику данных. Они предлагают интенсивные программы обучения с акцентом на практическом опыте и проектной работе.
Преимущества:
Недостатки:
🎓 Хекслет 35 отзывов
Описание: Хекслет — это онлайн-образовательная платформа, специализирующаяся на курсах по программированию и разработке программного обеспечения. Они предлагают практическое обучение, фокусируясь на решении реальных проблем и создании проектов.
Преимущества:
Недостатки:
🎓 Hedu 30 отзывов
Описание: Hedu — это онлайн-платформа, предлагающая курсы по различным IT-направлениям, включая программирование, веб-разработку и аналитику данных. Они стремятся предоставить студентам актуальные знания и навыки, необходимые для успешной карьеры в IT-сфере.
Преимущества:
Недостатки:
🎓 OTUS 55 отзывов
Описание: OTUS — это онлайн-платформа, специализирующаяся на обучении IT-специалистов. Они предлагают широкий спектр курсов по программированию, разработке, VR/AR, тестированию и другим IT-направлениям. OTUS стремится обеспечить глубокое и практическое обучение, чтобы студенты могли стать профессионалами в своей области.
Преимущества:
Недостатки:
🔑 Для становления архитектором программного обеспечения необходимы глубокие знания в области разработки программного обеспечения, понимание архитектурных паттернов и принципов, а также опыт работы с различными технологиями и языками программирования. Опыт в разработке больших и сложных проектов также является ценным.
🔑 Архитектор программного обеспечения должен обладать навыками в области проектирования систем, пониманием архитектурных стилей и паттернов, оценкой и управлением рисков, коммуникацией и взаимодействием с заинтересованными сторонами, а также навыками принятия решений и решения проблем. Знание различных технологий, архитектурных подходов и методологий также является важным.
🔑 Существуют различные способы получить образование и обучение в области архитектуры программного обеспечения. Вы можете пройти специализированные курсы в университете или на онлайн-платформах, посещать семинары и конференции, прочитывать книги и статьи, изучать практические случаи из реального мира и работать под руководством опытных архитекторов.
Не существует единственного “правильного” языка программирования для архитекторов программного обеспечения. Однако, полезно иметь опыт работы с различными языками программирования и технологиями, так как архитектор должен понимать, как они взаимодействуют между собой и как выбрать наиболее подходящий язык и технологии для конкретного проекта.
🔑 Опыт работы играет важную роль в становлении архитектором программного обеспечения. Работа на различных проектах позволяет понять проблемы и вызовы, связанные с разработкой ПО, и приобрести практические навыки в области проектирования и архитектуры. Поэтому, параллельно с обучением, рекомендуется получать опыт работы в различных проектах и командах.
Обновлено 9 апреля, 2024 4:37 пп
Курсы Fullstack разработчик вам помогут не только разобраться в базовых понятиях специальности, но и найти…
Курсы Golang научитесь разработке с нуля. Информация постоянно обновляется и добавляются новые онлайн-курсы по программированию…
Курсы Аndroid помогут освоить язык программирования на платформе с нуля. Информация постоянно обновляется и добавляются…
Собрали лучшие курсы по созданию мобильных приложений. Информация постоянно обновляется и добавляются новые онлайн-курсы по…
Здесь собраны лучшие курсы Java программирования. Информация постоянно обновляется и добавляются новые онлайн-курсы по программированию…
Собрали для вас лучшие курсы разработчик игр на Unity. Информация постоянно обновляется и добавляются новые…