Архитектор программного обеспечения

В итоге обучения на курсе вы усилите навыки архитектурного планирования, проектирования, разработки приложений, распределённых и децентрализованных систем.

  • Площадка:Otus
  • Продолжительность:5 месяцев
  • Дата:28 июня
  • Стоимость:131 040 рублей
Оставить заявку
Архитектор программного обеспечения

О курсе

Навыки разработки архитектуры ПО - основной критерий профессионализма в создании масштабируемых и отказоустойчивых приложений. В рамках курса вы освоите backend-проектирование приложений, поработаете с паттернами, legacy-сервисам, распределёнными системами и Kubernetes. Профессиональные разработчики, тимлиды и сисадмины освоят на курсе лучшие практики разработки архитектуры ПО сложных децентрализованных систем.

Мы изучаем:

course-info
  • docker
    docker
  • kubernetes
    kubernetes

Кому подойдет курс

  • Разработчикам, team lead, администраторам.

Необходимые навыки

  • Знание и опыт в любом из стеков: Java, Node.js, C#, python, Golang, PHP.

Эксперты

Эксперты - опытные педагоги-практики

  • Станислав Щетинников
    Станислав Щетинников
    Директор команды разработчиков в «ДомКлик». В программировании более 10 лет, 6 из них профессионально занимается разработкой архитектуры систем
  • Владислав Родин
    Владислав Родин
    Руководитель команды разработчиков, преподаватель МФТИ и портала foxminded. Разработчик на С++. В МФТИ получил практический опыт работы инженером-исследователем на проекте вычислительного программного комплекса, последние 3 года занимается Enterprise разработкой на Java. Работал в НСПК и «Яндекс». Профессионально занимается улучшением инфраструктуры проектов, настраивает CI/CD процессы, выстраивает С4-архитектурные схемы
  • Евгений Аристов
    Евгений Аристов
    В профессиональной разработке программного обеспечения больше 20 лет. Проектировщик ПО для сетей магазинов, центров фитнеса, отелей. Большой опыт серверного администрирования

Карьера

Занимаясь на курсе, обучающиеся изучают современные инструменты и приобретают навыки работы, которые помогут им эффективно строить карьеру в IT-сфере.

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

    7 тем. Преимущества и недостатки монолитов, микросервисной архитектуры. Работа с Docker’ом. Kubernetes: архитектура, основы работы, написание манифестов. Шаблонизация манифестов. Мониторинг и алертинг: основные приёмы, сбор метрик, управление инцидентами. Инструментируем сервис с Prometheus. Grafana.

    8 тем. Основные шаблоны авторизации и аутентификации. Бэк для фронта, apigateway. Межсервисное взаимодействие, синхронный и асинхронный API. RESTful. GraphQL. gRPC. Основы архитектуры Event Driven. Распределённые очереди (пример - Kafka). Архитектурные шаблоны, принципы, алгоритмы кэширования.

    12 тем. Микросервисное тестирование. DDD, модульные монолиты. Микросервисная декомпозиция. Основные проблемы и принципы работы с распределёнными системами. HTTP-очереди, API идемпотетность и коммутативность. Проблемы и паттерны распределённых транзакций. Виды, стратегии шардирования. Паттерны и инструменты поддержки консистентности данных. Паттерны Event Sourcing, CQRS. Основы, преимущества, архитектура service mesh. Концепция opentracing, инициатива opentelemetry. Паттерны микросервисного рефакторинга.

    3 темы. CP и AP системы, основные алгоритмы и реализация. Архитектура: артефакты и развитие.

    В завершении слушателям курса предстоит защита выпускных проектов. Предварительно преподаватели проведут скрининг проектов, помогут разобраться со сложностями. На самостоятельную работу над проектом вам отводится месяц. Задача выпускного проекта - разработка каркаса приложения «интернет-магазин» с использованием всех пройденных паттернов, проведением нагрузочного тестирования и мониторингом проблем сетевой связности.

    course-program