microservices-design

Design microservices architectures with service boundaries, communication patterns, and deployment strategies.

1|Updated Mar 21, 2026
One-click install
npx skills add https://github.com/kalilurrahman/kr-claudiator-skills-original-prompts --skill microservices-design-kalilurrahman
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: microservices-design
Source: https://github.com/kalilurrahman/kr-claudiator-skills-original-prompts/tree/main/01-software-dev/microservices-design
Command: npx skills add https://github.com/kalilurrahman/kr-claudiator-skills-original-prompts --skill microservices-design-kalilurrahman

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Splitting a monolith or designing a new distributed system without clear service boundaries leads to tangled dependencies, shared databases, and cascading failures. This Skill produces a concrete microservices architecture with defined bounded contexts, API contracts, event schemas, and operational plans. ## Core Features & Use Cases - Service Boundary Definition: Applies Domain-Driven Design to identify bounded contexts and assign each service a single business capability with its own database. - Communication Design: Specifies synchronous REST/gRPC calls for queries and asynchronous Kafka events for commands, including circuit breakers, retries, and saga-based distributed transactions. - Deployment & Operations Planning: Outputs Kubernetes deployment manifests, CI/CD-per-service pipelines, health checks, and distributed tracing with correlation IDs. - Use Case: Given an e-commerce platform requirement, generate a full architecture with 8 services (user, order, payment, inventory, notification, etc.), their APIs, published/consumed events, and a strangler-fig migration path from the existing monolith. ## Quick Start Design a microservices architecture for an e-commerce platform expecting 10,000 requests per second, including service boundaries, event flows, and deployment strategy.

Frequently Asked Questions about microservices-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a monolith into microservices?

Use the strangler fig pattern: identify one bounded context such as notifications, build it as a new service, route traffic through an API gateway, and repeat incrementally. Never rewrite the entire monolith at once.

How do I define microservice boundaries with domain-driven design?

Identify bounded contexts where each service owns one specific business capability, such as user identity and authentication rather than a vague user service. Each service gets its own database and explicit responsibilities it does and does not handle.

Should microservices use synchronous REST or asynchronous events?

Use synchronous REST or gRPC for queries requiring immediate responses, and asynchronous events via Kafka for commands and fire-and-forget actions. All synchronous calls need timeouts, retries with exponential backoff, and circuit breakers.

How do microservices handle distributed transactions?

Use the saga pattern: each service performs its local transaction and publishes events, with compensating actions on failure. For example, if payment succeeds but inventory reservation fails, the order is cancelled and a refund is triggered.

When should I not use microservices?

Avoid microservices when the team has fewer than 5-10 engineers, the system can scale vertically, or domain boundaries are unclear. Each service adds 20-30% operational overhead in deployments, monitoring, and debugging, so start with a modular monolith instead.