microservices-architect

Design microservices architectures with bounded contexts for Kubernetes and Istio deployments.

Updated May 14, 2026
One-click install
npx skills add https://github.com/nkseth/copilot-dev-skills --skill microservices-architect-nkseth
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: microservices-architect
Source: https://github.com/nkseth/copilot-dev-skills/tree/main/skills/microservices-architect
Command: npx skills add https://github.com/nkseth/copilot-dev-skills --skill microservices-architect-nkseth

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Designs distributed systems and microservices architectures to replace monoliths with bounded contexts, enabling resilient, observable deployments.

Core Features & Use Cases

  • Domain-Driven Design for defining service boundaries and bounded contexts.
  • Selection of synchronous and asynchronous communication patterns (REST, gRPC, events) and protocols.
  • Data strategy with database-per-service, event sourcing, and CQRS to avoid shared schemas.
  • Observability and deployment discipline including distributed tracing, correlation IDs, health checks, and service meshes.
  • Deployment guidance for Kubernetes, canary deployments, and progressive delivery.

Quick Start

Design a scalable microservices architecture for a new order-management system by identifying bounded contexts, choosing communication patterns, and detailing deployment and observability strategies.

Frequently Asked Questions about microservices-architect

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

FAQPage Schema
How do I define microservices boundaries when breaking down a monolith?

Microservices boundaries are defined by applying Domain-Driven Design to identify bounded contexts, ensuring clear data ownership per service and avoiding shared database schemas across the distributed system.

What is the best way to handle data consistency in a microservices architecture?

Data consistency in a microservices architecture is handled by implementing database-per-service, event sourcing, and CQRS patterns to avoid shared schemas and use async messaging for cross-service operations.

How do I choose between REST, gRPC, and events for microservices communication?

Choosing microservices communication patterns involves selecting synchronous protocols like REST or gRPC for direct requests, and asynchronous events for cross-service operations requiring decoupled, resilient interactions.

Can I use Kubernetes and Istio for deploying and observing microservices?

Kubernetes and Istio support microservices deployment by providing service mesh capabilities, distributed tracing, correlation IDs, health checks, and progressive delivery strategies like canary deployments.

When should I not use a microservices architecture for my application?

You should avoid microservices architectures when your application lacks clear bounded contexts, requires complex distributed transactions, or cannot support the operational overhead of observability and Kubernetes deployment discipline.

How do I implement observability and health checks across distributed services?

Observability across distributed services is implemented through distributed tracing, correlation IDs, and health checks, typically managed via a service mesh to monitor and trace cross-service operations reliably.