Курс: микросервисы как в BigTech (8 недель)
Этот раздел, отдельный курс по микросервисам на Go, идущий после того как ты прошёл Go-трек (01, 02, 03, 04, 05, 06). Восемь недель практики по сборке системы, какую ожидают увидеть на ревью в BigTech.
Зачем этот курс
После Go-трека ты умеешь писать один сервис идиоматично. Реальная работа на Go, это как правило система из 5, 15 сервисов, общающихся через gRPC и Kafka, поднимаемых через docker-compose локально и k8s в проде. Это дополнительный набор требуемых навыков, который повсеместно требуют на рынке.
Ключевые темы которые покрываем:
- контрактное программирование (OpenAPI, Protobuf, code generation),
- чистая архитектура с разделением слоёв (api, service, repository),
- хранилища под характер нагрузки: Postgres (Order, Inventory, Payment, Auth), Redis (sessions), ClickHouse (события для аналитики),
- миграции и автоматическая накатка при старте,
- интеграционные и e2e-тесты через testcontainers,
- платформенная библиотека (logger, migrator, healthcheck),
- асинхронное общение через Kafka в KRaft-режиме,
- идемпотентность операций (Idempotency-Key, ReplacingMergeTree, processed_events),
- choreography-сага с явной компенсацией (OrderCancelled),
- сквозной
correlation_idот edge до consumer-а, - AuthService, gRPC API, сессии, middleware,
- Envoy как gateway с проверкой сессии,
- NotificationService с интеграцией Telegram,
- AnalyticsService на ClickHouse: событийная аналитика, бизнес-дашборды,
- observability: zap, ELK, Prometheus, Grafana, Alertmanager, OpenTelemetry tracing.
Система которую собираем
Космо-маркетплейс с заказом кораблей. Звучит шуточно, но домен достаточно богатый для реалистичной архитектуры: каталог запчастей по категориям (hull/engine/weapon/cosmetic), резерв на складе, оплата с защитой от двойного списания, асинхронная сборка и аналитика на потоке событий.
+----------------+
| Envoy Gateway | <- сессии, X-Correlation-Id, ext_authz
+-------+--------+
|
+--------+------------+-----+------+----------+----------+----------+
| | | | | | |
+--v---+ +-v----+ +------v------+ +---v-----+ +--v-----+ +--v-------+ +-v-------+
| Auth | |Order | | Payment | |Inventry | |Assembly| |Notifctn | |Analytics|
| gRPC | |HTTP+ | | gRPC | | gRPC | |Kafka i+| |Kafka in, | | gRPC |
| | |gRPC | |+Idempotency | |+Reserve | |Kafka o | |Telegram | |(read) |
+--+---+ +--+---+ +------+------+ +----+----+ +---+----+ +----+-----+ +----+----+
| | | | | | |
Postgres+ | Postgres Postgres \ / ClickHouse
Redis Postgres (idempotency) (catalog, \ / (event store)
JSONB, Kafka (KRaft) ^
category) ^ |
+----------------+
все события + correlation_id
К концу курса всё это работает локально через docker compose up, проходит интеграционные тесты, шлёт распределённые трейсы, отдаёт бизнес-аналитику из ClickHouse и присылает алерт в Telegram при пороге заказов.
Карта восьми недель
| Неделя | Тема | Ключевая практика |
|---|---|---|
| 1 | Контракты и три сервиса | OpenAPI + Protobuf, ogen, buf, go.work, категории запчастей |
| 2 | Чистая архитектура и тесты | api/service/repository, mockery, coverage 40%+ |
| 3 | Реальные хранилища | Postgres для Order и Inventory (JSONB, enum, GIN), миграции, docker-compose |
| 4 | Testcontainers и платформа | testcontainers, .env, /platform lib, DI, healthchecks |
| 5 | Kafka, сага, аналитика | KRaft Kafka, AssemblyService, OrderPaid/Cancelled/ShipAssembled, Idempotency-Key, AnalyticsService на ClickHouse |
| 6 | AuthService | gRPC API, Postgres + Redis sessions, middleware |
| 7 | Envoy и Notifications | Envoy Gateway, ext_authz, Telegram, маршрут на Analytics |
| 8 | Observability | zap + ELK, Prometheus + Grafana, ClickHouse-дашборды, OpenTelemetry с correlation_id |
премиум-урок
Продолжение в премиуме: 1 200 ₽ в месяц или 10 000 ₽ в год. Вместе с ним серверные проверки задач и школьные токены AI-коуча.
Оплата пока не подключена: премиум и курсы открываются промокодом.