system-design-patterns

Guide distributed system architecture decisions with CAP, scaling, and caching patterns.

Updated Jan 23, 2026
One-click install
npx skills add https://github.com/alexsandrocruz/DominusLeads --skill system-design-patterns-alexsandrocruz
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: system-design-patterns
Source: https://github.com/alexsandrocruz/DominusLeads/tree/main/backend/Sapienza.Leads/.claude/skills/system-design-patterns
Command: npx skills add https://github.com/alexsandrocruz/DominusLeads --skill system-design-patterns-alexsandrocruz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

System Design Patterns provides a structured catalog of proven patterns to design scalable, reliable, and high-performance distributed systems. It helps engineers reason about trade-offs and select appropriate approaches during architecture decisions.

Core Features & Use Cases

  • CAP Theorem guidance: Practical considerations of Consistency, Availability, and Partition Tolerance.
  • Scaling strategies: Horizontal and vertical scaling patterns with real-world scenarios.
  • Reliability & caching: Patterns for fault tolerance, caching strategies, and cache invalidation.
  • Event-driven architectures: Designing event streams, queues, and sagas for resilient workflows.

Quick Start

Provide a system design prompt to identify and apply a minimal set of patterns (CAP, scaling, caching) to guide architecture decisions.

Frequently Asked Questions about system-design-patterns

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

FAQPage Schema
What is the CAP theorem and how does it impact distributed system design?▼

The CAP theorem dictates that distributed systems can guarantee at most two of Consistency, Availability, and Partition Tolerance simultaneously. This framework guides trade-off analysis when selecting database sharding and caching strategies for resilient architectures.

How do I design scalable event-driven architectures for microservices?▼

Design scalable event-driven architectures by implementing event streams, queues, and sagas. These patterns coordinate resilient workflows across microservices, enabling fault tolerance and decoupled processing for distributed systems.

When should I use horizontal scaling versus vertical scaling for capacity planning?▼

Horizontal scaling adds more machines to distribute load, while vertical scaling adds resources to a single machine. Capacity planning requires analyzing these trade-offs to select appropriate scaling strategies for your system requirements.

What are the best ways to handle cache invalidation and ensure reliability?▼

Handle cache invalidation and ensure reliability by applying established fault tolerance patterns. Structured caching strategies maintain data consistency while preventing stale reads in high-performance distributed environments.

Can I use system design patterns for database sharding and trade-off analysis?▼

Yes, you can apply system design patterns to plan database sharding and perform trade-off analysis. They provide structured guidance for capacity planning and data store decisions across distributed microservices architectures.