Чему вы научитесь
- Описывать контракты сервисов в .proto и понимать, во что превращается protobuf-описание в Go-коде
- Реализовывать gRPC-сервисы и клиентов: unary-вызовы, серверные, клиентские и двунаправленные стримы
- Возвращать корректные gRPC-статусы и ошибки и писать интерсепторы для логирования, авторизации и метрик
- Проектировать взаимодействие микросервисов: API gateway, распространение таймаутов и context между сервисами
- Делать вызовы устойчивыми: повторы с экспоненциальной задержкой, circuit breaker, разумные дедлайны
- Работать с очередями: зачем брокер, чем различаются Kafka, RabbitMQ и NATS, гарантии доставки, идемпотентность, паттерн outbox
- Готовить сервис к продакшену: конфигурация по 12-factor, структурные логи slog, метрики и трассировка, Docker-упаковка и graceful shutdown
- Собрать капстоун: два сервиса shopdb, общающихся по gRPC, с резервированием товара, сагой и откатом при сбое
О курсе
Как работает бэкенд, когда сервисов больше одного: контракты protobuf и gRPC, стримы, интерсепторы, таймауты и retry, circuit breaker, очереди и идемпотентность, конфиги, slog, метрики и трассировка, Docker и graceful shutdown. 183 задачи с автопроверкой в браузере на Go 1.26. Финал — микросервис заказов shopdb: Orders и Inventory общаются по gRPC, с сагой и откатом.
Для кого этот курс
Курс — для тех, кто уже пишет сервисы на Go и переходит к распределённой системе.
- Бэкендерам на Go, которые уверенно пишут один сервис и впервые сталкиваются с задачей «сервисов будет несколько».
- Тем, кто идёт на вакансии с gRPC, Kafka и микросервисной архитектурой в требованиях и хочет говорить о них предметно, а не по статьям.
- Разработчикам, которым нужен артефакт в портфолио сложнее CRUD: два сервиса, контракты, сага с откатом.
- Выпускникам курса «Go: веб-сервисы и базы данных», у которых REST API уже есть, и следующий вопрос — как этот сервис живёт в продакшене рядом с другими.
Начальные требования
Что нужно:
- Уверенный Go: интерфейсы, ошибки, структуры, работа с context. Это курсы «Go с нуля» и «Go: идиоматичный код», context — курс по конкурентности.
- Общее понимание HTTP и клиент-серверного взаимодействия; опыт с REST желателен.
- Компьютер с браузером и интернетом.
Что НЕ нужно:
- Не нужно ставить protoc, Docker, Kafka или Kubernetes: gRPC-задачи решаются в браузере на харнессе, инфраструктурные темы разбираются на реальных конфигах и манифестах.
- Не нужен опыт работы в микросервисной команде: архитектурные решения объясняются с нуля, на домене магазина.
- Не нужно знать protobuf заранее: контракты вводятся с первого урока.
Преподаватели курса
Как проходит обучение
- Формат: 7 модулей, 31 урок, 362 коротких шага. Текстовые лекции с примерами на домене shopdb, без видео.
- Практика: 79 % шагов — активные, это самая высокая доля в линейке. 183 задачи на Go с автопроверкой, 98 интерактивных тестов, 4 локальных задания.
- Проверка: скрытые тесты на движке Go 1.26.1. gRPC-вызовы проверяются роундтрипом в одном процессе — вы пишете метод сервиса, тест вызывает его как клиент; сгенерированный proto-код даётся готовым в условии.
- Темп: свой, без дедлайнов. Доступ бессрочный, попыток неограниченно.
- Поддержка: комментарии под каждым шагом.
Ориентир нагрузки: при 6–8 часах в неделю курс проходится примерно за 4–5 недель; общий объём — около 29 часов.
Что вы получите
- Навык проектировать и реализовывать межсервисное взаимодействие на gRPC: контракты, стримы, статусы, интерсепторы.
- Понимание, что делает распределённую систему устойчивой: дедлайны, повторы с backoff, circuit breaker, идемпотентность, outbox.
- Production-минимум: конфигурация, структурные логи, метрики и трассировка, упаковка в Docker, graceful shutdown.
- 183 решённые задачи с автопроверкой и 98 тестов.
- Капстоун: микросервис заказов shopdb — Orders и Inventory по gRPC с сагой и откатом — сильный артефакт портфолио.
- Бессрочный доступ и обновления, сертификат Stepik. Курс завершает линейку Go из 7 ступеней.
Нагрузка
6–8 часов в неделю, 4–5 недель (общий объём ~29 часов)