Постройте стратегию развития своей карьеры. В этом помогут эксперты, коллеги-айтишники с разными карьерными треками, карьерные консультанты
Яндекс Практикум
Учебный центр IBS
Хекслет
STENET school
Слёрм
Stepik
Хекслет
Учебный центр IBS
Учебный центр IBS
Merion Academy
Учебный центр IBS
Учебный центр IBS
Учебный центр IBS
OTUS
OTUS
OTUS
OTUS
Нетология
Skillfactory
Слёрм
OTUS
OTUS
SkillboxПрограмма «Архитектор ПО. Путь к мастерству в проектировании систем» подробно рассказывает о работе программного архитектора. Начать обучение можно с 5 бесплатных уроков*, а затем перейти к полной версии программы. Курс учит планировать будущее развитие сложных систем с нуля: выбирать инструменты и средства моделирования архитектуры, формат документирования архитектурных решений, выбирать архитектурный стиль под конкретную бизнес-задачу, планировать будущее масштабирование, гибкость. Знакомит с лучшими практиками построения архитектуры программного обеспечения.
Тема 1: Понятия архитектуры: основные термины и определения.
Тема 2: Понятия архитектуры: критерии качества архитектуры.
Тема 3: Роли и виды архитекторов.
Тема 4: Архитектурные стили: монолит.
Тема 5: Архитектурные стили: микросервисы.
Тема 6: Принципы DDD.
Тема 7: Clean Architecture: правила создания архитектур.
Тема 8: Архитектурные стили: событийно-управляемая архитектура.
Тема 9: Архитектурные стили: классический ETL/DWH/BI.
Тема 10: Позиция архитектора в Agile-проекте.
Практика: Проект «Mobile Street Food». Этап работ: предложить разбиение системы на модули/микросервисы. Отобразить связи модулей/микросервисов на компонентной диаграмме.
Итого на курс 24 часа:
Тема 1: Управление заинтересованными сторонами (стейкхолдерами) проекта.
Тема 2: Виды требований и атрибуты качества.
Тема 3: Влияние нефункциональных требований на архитектуру.
Тема 4: Сбор и работа с функциональными требованиями.
Тема 5: Дополнительные виды требований: ограничения.
Тема 6: Управление критериями надёжности (SLA, SLO, SLI).
Тема 7: Работа с архитектурными изменениями.
Практика: Проект «Mobile Street Food». Этап работ: выделить наиболее приоритетные функциональные требования, сформулировать их в виде пользовательских историй. Сформулировать нефункциональные требования к системе в виде сценариев атрибутов качества. Составить требования к качеству системы с точки зрения масштабов и планов развития бизнеса.
Итого на курс 26 часов:
Тема 1: Проектирование от атрибутов качества.
Тема 2: Тактики и паттерны проектирования.
Практика: Проект «Mobile Street Food». Этап работ: ранжировать требования и выбрать тактики для достижения требований каждой из групп. Создать диаграмму/таблицу взаимосвязи требований.
Итого на курс 28 часов:
Тема 1: Задача коммуникации приложений.
Тема 2: Уровни (методы) интеграционных решений.
Тема 3: Шаблоны коммуникации в контексте приложений и микросервисной архитектуры: применение и практические сценарии.
Тема 4: Синхронное взаимодействие и REST: основы, генерация API и управление версиями.
Тема 5: REST API: рекомендации по дизайну, блокировкам, кешированию и версионированию.
Тема 6: OpenAPI Spec: интеграция и API First подход в создании удобных и гибких интерфейсов.
Тема 7: Архитектура сообщений: ключевые паттерны и методы разработки.
Тема 8: AsyncAPI: организация асинхронного взаимодействия.
Тема 9: Технологии асинхронного обмена сообщениями: RabbitMQ, Kafka в сравнении.
Тема 10: Интеграция баз данных и ETL: сильные стороны, метрики и методы оптимизации.
Тема 11: Capture Data Changes: анализ Debezium и его использование в различных сценариях.
Тема 12: Интеграция через файлы: особенности, преимущества и правила наименования.
Тема 13: Использование вспомогательных протоколов и средств интеграции API.
Практика: Этап работ: спроектировать REST API для работы с заказами с точки зрения клиентского приложения. Описать процессы взаимодействия «заказчик-исполнитель», приёма платежей, поддержки. Отобразить процессы на диаграмме потоков данных. Предложить значения для триггеров уведомлений службы поддержки.
Итого на курс 54 часа:
Тема 1: Реляционные и нереляционные базы данных: обзор, особенности и гарантии доступности.
Тема 2: Как выбрать базу данных на основании требований и контекста.
Тема 3: Организация конкурентного доступа: стратегии блокировок, изоляции транзакций и обеспечение согласованности; детали реализации транзакций и блокировок: обзор PostgreSQL, MySQL и их возможностей. CAP-теорема.
Тема 4: Современные тактики производительности реляционной базы данных.
Тема 5: Виды нереляционных баз данных: обзор, гарантии; отличия и детали реализации нереляционных баз данных.
Тема 6: Проектирование моделей данных.
Практика: Проект «Mobile Street Food». Этап работ: спроектировать модель данных системы, нарисовать ER-диаграмму. Выбрать базу данных и обосновать выбор.
Итого на курс 42 часа:
Тема 1: Технологии виртуализации.
Тема 2: Основы построения информационных сетей.
Тема 3: Архитектура Linux.
Тема 4: Основы CI/CD: построение процессов с использованием Jenkins, GitLab, Ansible.
Тема 5: Мониторинг и наблюдаемость системы: паттерны, инструменты и протоколы.
Тема 6: Проектирование облачной архитектуры: провайдеры, возможности, экономика.
Тема 7: Проектирование облачной архитектуры: паттерны.
Тема 8: Разработка 12-факторного приложения.
Тема 9: Контрактные обязательства сервиса: метрики надёжности, SLA, RTO, RPO и паттерны реализации.
Тема 10: Понимание Kubernetes: типы сущностей, Helm, CI/CD и балансировка трафика.
Практика: Проект «Mobile Street Food». Этап работ: выбрать технологии развертывания сквозного примера, нарисовать диаграмму развертывания, расположить программные элементы по элементам инфраструктуры. Описать метрики мониторинга, технические средства обеспечения отказоустойчивости и масштабирования. Выполнить предварительный расчёт оборудования продуктивной среды: CPU, RAM, Disk.
Итого на курс 42 часа:
Тема 1: UML для моделирования и анализа систем.
Тема 2: BPMN для моделирования бизнес-процессов.
Тема 3: Нотация 4+1 для анализа и проектирования архитектуры.
Тема 4: Нотация C4 для наглядного и эффективного проектирования архитектуры.
Тема 5: Изучение подхода ADR для документации архитектурных решений.
Тема 6: Язык ArchiMate.
Практика: Проект «Mobile Street Food». Этап работ: нарисовать BPMN-диаграмму для процесса заказа, оплаты и получения услуги с учётом начисления и списания баллов лояльности. Нарисовать две диаграммы последовательности (UML Sequence Diagram), отображающие работу с заказами.
Итого на курс 32 часа:
Тема 1: Сдавать задачи в срок: принципы личной эффективности.
Тема 2: Как развивать команду и выстраивать коммуникации.
Итого на курс 2 часа.
В ходе обучения вы будете работать над сквозным проектом «Mobile Street Food» под руководством опытного тренера. Проект предоставляет все необходимые материалы и шаблоны решений, которые станут полезными в вашей дальнейшей профессиональной деятельности. Выполняя задачи проекта, вы освоите навыки принятия решений, разработки архитектурных концепций и эффективного представления информации. Благодаря поддержке тренера, вы успешно завершите проект и получите ценные знания для уверенного старта в сфере разработки и инноваций.
Занятия включают:
Автоматизируйте тестирование бэкенда и асинхронный обмен сообщениями. Освойте Rest Assured, Postman, Kafka и RabbitMQ для повышения качества и эффективности. Узнайте, как автоматизировать тестирование API, работать с различными протоколами и использовать современные инструменты для асинхронного обмена сообщениями. Этот курс поможет ускорить разработку и повысить надежность ваших проектов.
Разбираемые темы:
Установка Postman.
Разбираемые темы:
Методы получения сообщений.
Разбираемые темы:
Освойте Java и автоматизацию тестирования, чтобы стать востребованным IT-специалистом в QA Automation. Программа научит уверенно писать код и автотесты, а также эффективно сотрудничать в команде, освоив современные методы разработки и тестирования.
Java Core — это фундаментальный курс, который познакомит вас с основами программирования на Java. Вы научитесь устанавливать и использовать среду разработки IntelliJ IDEA, поймете структуру Java-программ и освоите основные операторы языка. Курс охватывает типы данных и основы объектно-ориентированного программирования (ООП), включая работу со строками, массивами, интерфейсами, наследованием и полиморфизмом. Вы изучите иерархию коллекций, методы ввода-вывода и освоите работу с базами данных через JDBC, включая обработку ошибок и исключений. Кроме того, вы получите практические навыки ведения проектов с использованием системы контроля версий Git, научитесь работать с ветками и эффективно сотрудничать в команде. Пройдя этот курс, вы будете готовы к разработке и автоматизации тестирования на языке Java, что существенно повысит вашу профессиональную ценность в IT-сфере.
Разбираемые темы:
Это практический курс, который погрузит вас в мир автоматизированного тестирования серверной части приложений. Вы научитесь тестировать API, работать с тестовыми данными и освоите основы протоколов и взаимодействий, включая HTTP, WebSockets, SOAP и REST. Курс поможет вам развить навыки разработки и внедрения автотестов с использованием Rest Assured, а также выполнять запросы, сериализовать и десериализовать данные с помощью Java-библиотек. Вы освоите работу с Postman для выполнения различных типов запросов (GET, POST, PUT, DELETE), научитесь отправлять запросы с сертификатами, использовать переменные и сравнивать Postman с SoapUI. Кроме того, познакомитесь с технологиями асинхронного обмена сообщениями, такими как RabbitMQ и Kafka, изучите методы получения сообщений и принцип работы брокеров. Пройдя этот курс, вы станете специалистом, способным эффективно автоматизировать тестирование бэкенд с использованием современных инструментов и технологий.
Разбираемые темы:
Это продвинутый курс, который обучит вас эффективному автоматизированному тестированию пользовательских интерфейсов веб-приложений. Вы освоите основы качества и требований к ПО, познакомитесь с пирамидой автоматизации тестирования и инструментами для определения логики тестовых сценариев. Курс включает изучение фреймворков JUnit, Selenide и обзор Playwright. Вы научитесь использовать Selenium WebDriver для взаимодействия с браузером, освоите дизайн и структурирование тестов, включая паттерны автотестирования и проектирование тестовых проектов. Курс также охватывает современные модели и методологии разработки и тестирования, такие как TDD и BDD, и научит вас использовать Allure для создания отчетов и Cucumber для написания тестов в стиле BDD.
Разбираемые темы:
Специализированный курс, который обучит вас современным методологиям и инструментам для эффективного сопровождения автоматизированных тестов и генерации отчетов. Вы освоите основы работы с командной строкой и управления правами, познакомитесь с концепциями CI/CD и научитесь использовать инструменты, такие как Jenkins, для автоматизации процессов. Курс включает изучение контейнеризации с Docker, развертывание приложений в Kubernetes и использование Selenoid и Moon для параллельного запуска автотестов. Вы также познакомитесь с Apache JMeter для проведения нагрузочного тестирования. Пройдя этот курс, вы сможете эффективно сопровождать автотесты, автоматизировать процессы и создавать подробные отчеты, повышая качество и скорость разработки в проектах.
Разбираемые темы: