О материале
Описание
Освойте разработку микросервисов на Go: от основ до сложных архитектурных решений для высокой производительности.
Для кого этот курс:
1. Полный цикл разработки и публикации микросервисов на Go в Kubernetes
Научитесь проектировать микросервисы по принципам чистой архитектуры, покрывать их интеграционными и нагрузочными тестами, настраивать CI/CD (GitHub/GitLab CI, Docker, Helm), публиковать в K8s с управлением конфигурациями и обнаружением сервисов (Consul), а также обеспечивать отказоустойчивость через Health Checks, Liveness Probes и автоматическое масштабирование.
2. Наблюдаемость (Observability) и сетевую безопасность распределённой системы
Настроите логирование (ELK, slog, zap), метрики (Prometheus + Grafana с бизнес-дашбордами), распределённую трассировку (OpenTelemetry, Jaeger) и научитесь коррелировать данные между сервисами через correlation_id. Внедрите защищённое сетевое взаимодействие с использованием gRPC, REST, HTTP/2 и WebSockets. Настроите API Gateway, mTLS, JWT для обеспечения безопасности и Keycloak для аутентификации и авторизации.
3. Распределённые данные и системный дизайн микросервисов
Изучите отказоустойчивые и масштабируемые хранилища: PostgreSQL (Patroni, шардирование), MongoDB, Redis, Tarantool, Kafka, RabbitMQ, S3, Cassandra. Примените шаблоны проектирования — декомпозиция монолита, CQRS, Event Sourcing, Saga через Temporal, Circuit Breaker — и сможете настраивать асинхронное взаимодействие для достижения высокой доступности и устойчивости к нагрузкам.
После обучения вы сможете:
Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в отдельном чате, сдача домашних работ и получение обратной связи от преподавателя.
Формат обучения:
1. Архитектура приложения
В этом модуле вы рассмотрите подходы к чистой архитектуре приложения на Go.
В этом модуле вы рассмотрите механику совместной работы и публикацию результатов на рабочих серверах.
В этом модуле вы изучите механику наблюдения и реагирования на работу микросервисов.
В этом модуле вы рассмотрите, как микросервисы общаются между собой.
В этом модуле вы изучите, как работать с разными вариантами хранения данных при взаимодействии с микросервисами.
В этом модуле вы рассмотрите реализацию паттернов системного дизайна.
Заключительный месяц курса посвящен проектной работе. Проект – это самая интересная часть обучения. Вы будете разрабатывать его на основе полученных на курсе навыков и компетенций. В процессе работы над проектом можно получить консультацию преподавателей.
Для кого этот курс:
- Для программистов с опытом разработки на Go, стремящихся углубить знания в микросервисной архитектуре и применении языка.
- Для архитекторов, желающих освоить современные подходы к проектированию микросервисов и улучшить управление распределенными системами.
- Для руководителей, управляющих проектами по декомпозиции монолита.
- Для выпускников курсов Go-разработчик. Продвинутый уровень и Проектирование систем, которые хотят закрыть пробелы в чистой архитектуре и расширить свои компетенции.
- Уверенное знание Go
- Понимание микросервисной и монолитной архитектур, взаимодействия между отдельными компонентами
- Понимание работы с СУБД и Брокерами сообщений
- Навыки работы с git и linux
- Опыт разработки от 2-3 лет
1. Полный цикл разработки и публикации микросервисов на Go в Kubernetes
Научитесь проектировать микросервисы по принципам чистой архитектуры, покрывать их интеграционными и нагрузочными тестами, настраивать CI/CD (GitHub/GitLab CI, Docker, Helm), публиковать в K8s с управлением конфигурациями и обнаружением сервисов (Consul), а также обеспечивать отказоустойчивость через Health Checks, Liveness Probes и автоматическое масштабирование.
2. Наблюдаемость (Observability) и сетевую безопасность распределённой системы
Настроите логирование (ELK, slog, zap), метрики (Prometheus + Grafana с бизнес-дашбордами), распределённую трассировку (OpenTelemetry, Jaeger) и научитесь коррелировать данные между сервисами через correlation_id. Внедрите защищённое сетевое взаимодействие с использованием gRPC, REST, HTTP/2 и WebSockets. Настроите API Gateway, mTLS, JWT для обеспечения безопасности и Keycloak для аутентификации и авторизации.
3. Распределённые данные и системный дизайн микросервисов
Изучите отказоустойчивые и масштабируемые хранилища: PostgreSQL (Patroni, шардирование), MongoDB, Redis, Tarantool, Kafka, RabbitMQ, S3, Cassandra. Примените шаблоны проектирования — декомпозиция монолита, CQRS, Event Sourcing, Saga через Temporal, Circuit Breaker — и сможете настраивать асинхронное взаимодействие для достижения высокой доступности и устойчивости к нагрузкам.
После обучения вы сможете:
- Проектировать микросервисы под любую бизнес-задачу
вы поймёте, когда микросервисы действительно нужны, как их правильно разделить и организовать их взаимодействие, чтобы система была гибкой и надёжной. - Выстроить надёжный процесс разработки в команде
настроите автоматическую сборку, тестирование и доставку кода на серверы, чтобы каждое обновление отправлялось на сервер без страха всё сломать. - Безопасно обмениваться данными между сервисами
организуете защищённое взаимодействие, чтобы ваши API были надёжными, а доступ к ним контролируемым. - Масштабироваться под любую нагрузку
спроектируете систему, которая не ляжет под наплывом пользователей, а плавно расширится за счёт добавления ресурсов или новых сервисов.
- Программа нашего курса разработана с нуля в 2025 году с учетом последних трендов и реальных требований вакансий.
- Вы изучите новейшие инструменты и практики (eBPF, service mesh, managed k8s), которые только начинают набирать популярность. Это даст вам знания трендов и конкурентное преимущество на рынке труда.
Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в отдельном чате, сдача домашних работ и получение обратной связи от преподавателя.
Формат обучения:
- Интерактивные вебинары
2 занятия по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда.
1. Архитектура приложения
В этом модуле вы рассмотрите подходы к чистой архитектуре приложения на Go.
- Тема 1: Чистая архитектура приложения
- Тема 2: Доменная модель и Агрегаты
- Тема 3: Репозитории и адаптеры
В этом модуле вы рассмотрите механику совместной работы и публикацию результатов на рабочих серверах.
- Тема 1: Совместная работа с Github, Gitlab
- Тема 2: Публикация приложений // ДЗ
- Тема 3: Модульное тестирование и профилирование
- Тема 4: Тестирование микросервисов // ДЗ
В этом модуле вы изучите механику наблюдения и реагирования на работу микросервисов.
- Тема 1: Логирование
- Тема 2: Мониторинг
- Тема 3: Трассировка // ДЗ
В этом модуле вы рассмотрите, как микросервисы общаются между собой.
- Тема 1: HTTP/х и WebSockets
- Тема 2: TLS // ДЗ
- Тема 3: REST
- Тема 4: Раскрываем горизонты REST
- Тема 5: gRPC // ДЗ
В этом модуле вы изучите, как работать с разными вариантами хранения данных при взаимодействии с микросервисами.
- Тема 1: PostgreSQL
- Тема 2: NoSQL (MongoDB)
- Тема 3: InMemory DB // ДЗ
- Тема 4: RabbitMQ
- Тема 5: Apache Kafka
- Тема 6: Распределённые хранилища // ДЗ
- Тема 7: Q&A-сессия
В этом модуле вы рассмотрите реализацию паттернов системного дизайна.
- Тема 1: Разделение монолита на микросервисы
- Тема 2: Дизайн микросервисов - Event sourcing
- Тема 3: Дизайн микросервисов - CQRS
- Тема 4: Отказоустойчивость микросервисов // ДЗ
Заключительный месяц курса посвящен проектной работе. Проект – это самая интересная часть обучения. Вы будете разрабатывать его на основе полученных на курсе навыков и компетенций. В процессе работы над проектом можно получить консультацию преподавателей.
- Тема 1: Выбор темы и организация проектной работы // Проект
- Тема 2: Консультация по проектам и домашним заданиям
- Тема 3: Защита проектных работ
- Тема 4: Подведение итогов курса
- Александр Хохлов
Архитектор платформенных решений, ГК Иннотех - Александр Литкевич
Fullstack-разработчик, VK.com - Евгений Федосеев
Ведущий разработчик, МТС - Роман Грицуляк
Разработчик, консультант - Юра Рубаха
Golang-разработчик - Константин Войта
Team Lead, Fluence Siemens
Другие курсы в наличии
Материалы, которые можно приобрести уже сейчас