What problem does it solve?
Microservices often fail in practice due to poor service boundaries, fragile communication, shared-data coupling, and weak resilience/observability, which leads to cascading outages and slow debugging.
Core Features & Use Cases
- Service decomposition & topology: Guides splitting by business capabilities, applying the strangler fig extraction pattern, and shaping API gateway/BFF edges for clean client contracts.
- Correct communication choices: Helps choose sync vs async patterns (REST/gRPC/events) and defines practical rules of thumb for when each fits.
- Data ownership & failure recovery: Enforces DB-per-service and pairs changes with outbox/event patterns and saga coordination where multi-service workflows require it.
- Operational resilience & observability: Covers timeouts, retries with backoff + jitter, circuit breakers, bulkheads, idempotency, correlation IDs, and distributed tracing to make production behavior diagnosable.
Quick Start
Use this skill to design how your system should split responsibilities and communicate reliably when you’re extracting services because your app is getting too big or you’re struggling with failures between services.