Курс дал четкие рекомендации по выбору паттернов взаимодействия, таких как RPC, Messaging и Outbox, Saga.
Научился использовать Bounded Contexts и бизнес-домены, а также применять Event Storming для анализа и выделения сервисов.
“По каким принципам выделять сервисы?”
Я не понимал, как определить границы микросервисов и по каким критериям их выделять, чтобы избежать избыточной сложности.
“Завалил System Design интервью”
Cпросили, как спроектировать платежную систему. Завалился на вопросе о том, как обеспечить консистентность данных при сбое, не смог объяснить выбор.
На курсе я узнал о Contract Testing, Component Testing и End-to-End тестах для проверки надежности системы.
“Как перейти от монолита к микросервисам?”
Я изучил стратегии миграции, такие как Strangler Application Pattern, и смог внедрить микросервисы постепенно и безболезненно.
Было непонятно, как провести миграцию с монолита на микросервисы без рисков для бизнеса.
“Как тестировать микросервисы?”
Я не знал, какие подходы к тестированию использовать, чтобы учесть все возможные сценарии.
На курсе я освоил основные паттерны декомпозиции, такие как "Decompose by Subdomain", и теперь знаю, как это происходит.
“Все понимают MSA по-разному”
В нашей команде микросервисы каждый видел по-своему, что вызывало путаницу и замедляло работу. Это вызывало путаницу и мешало согласованно проектировать архитектуру.
Курс дал единое понимание подхода. Теперь команда работает согласованно и быстрее принимает решения.
“Изучал самостоятельно, но полный хаос в голове”
Я знал много теоретических концепций, но не понимал, как они связаны между собой и как применять их на практике.
Из-за этого проектирование казалось запутанным и хаотичным.
С какими проблемами приходят на курс?