Agent skill · software engineering · aj-geddes

microservices-architecture

Design and implement microservices architecture including service boundaries, communication patterns, API gateways, service mesh, service discovery, and distributed system patterns. Use when building microservices, distributed systems, or service-oriented architectures.

Why this skill is useful

Provides specific patterns and best practices for designing microservices architectures that the AI may not reliably generate on its own.

What it needs

About 2k tokens when loaded. Last updated 2026-03-04. 307 stars on the source repository.

What this skill does

Microservices Architecture Table of Contents Overview When to Use Quick Start Reference Guides Best Practices Overview Comprehensive guide to designing, implementing, and maintaining microservices architectures. Covers service decomposition, communication patterns, data management, deployment strategies, and observability for distributed systems. When to Use Designing new microservices architectures Decomposing monolithic applications Implementing service-to-service communication Setting up API gateways and service mesh Implementing service discovery Managing distributed transactions Designing inter-service data consistency Scaling independent services Quick Start Minimal working example: Reference Guides Detailed implementations in the references/ directory: Guide Contents --- --- Service Boundary Design Service Boundary Design Communication Patterns Communication Patterns API Gateway Pattern API Gateway Pattern Service Discovery Service Discovery Data Consistency Patterns Data Consistency Patterns Service Mesh (Istio) Service Mesh (Istio) Best Practices ✅ DO Design services around business capabilities Use asynchronous communication where possible Implement circuit breakers for resilience Use API gateway for cross-cutting concerns Implement distributed tracing Use service mesh for service-to-service communication Design for failure (chaos engineering) Implement health checks for all services Use correlation IDs for request tracking Version your APIs Implement proper monitoring and alerting Use event-driven architecture for loose coupling Implement idempotent operations Use database per service pattern ❌ DON'T Share databases between services Create overly granular services (nanoservices) Use distributed transactions (two-phase commit) Ignore network latency and failures Share domain models between services Deploy all services as one unit Hardcode service URLs Forget to implement authentication/authorization Use synchronous calls for long-running operations Ignore …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aj-geddes/microservices-architecture

View the source on GitHub

Browse the @skills marketplace