
Senior Architect
Compare nine software architecture patterns with trade-offs and structure guidance before you commit to a monolith, modular monolith, or services split.
Overview
Senior-architect is an agent skill most often used in Validate (also Build/backend, Operate/infra) that compares nine architecture patterns with trade-offs and implementation guidance for small teams.
Install
npx skills add https://github.com/alirezarezvani/claude-skills --skill senior-architectWhat is this skill?
- Nine indexed patterns from monolith through API gateway with when-to-use and when-not-to-use gates
- Explicit trade-off tables (pros/cons) per pattern for solo and small-team decisions
- Covers modular monolith, microservices, event-driven, CQRS, event sourcing, hexagonal, and clean architecture
- Structure examples and implementation-oriented notes for each pattern
- Anti-patterns called out (e.g., microservices too early, monolith when teams need independent deploy)
- 9 architecture patterns indexed in the reference
Adoption & trust: 996 installs on skills.sh; 17.5k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need to pick an architecture for your product but only have blog-hot takes instead of a structured comparison of patterns, team fit, and operational cost.
Who is it for?
Solo builders and tiny teams scoping an MVP, splitting a growing monolith, or writing architecture decision records before coding the backend.
Skip if: Teams that already have a mandated platform standard, or builders who only need a single framework tutorial without cross-pattern comparison.
When should I use this skill?
You need pattern names, trade-offs, and structure guidance while scoping or designing backend architecture.
What do I get? / Deliverables
You leave with a pattern shortlist, documented trade-offs, and structure cues you can paste into specs, ADRs, or backend implementation tasks.
- Pattern recommendation with pros/cons table
- Structural sketch aligned to the chosen pattern
- When-not-to-use guardrails for the shortlist
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Validate/scope because architecture choice is a scope and feasibility decision before full build and ops complexity. Pattern selection, team-size fit, and deployment trade-offs belong in scoping—not after the codebase has hardened the wrong shape.
Where it fits
Decide monolith versus modular monolith before estimating MVP build time and deploy complexity.
Map services and adapters using hexagonal or clean architecture language in an implementation plan.
Check whether proposed service splits match documented scaling and failure-isolation trade-offs.
Re-evaluate event-driven or API gateway patterns after observability shows hot spots or coupling pain.
How it compares
Use as a structured patterns playbook instead of asking the model to improvise microservices versus monolith advice from memory.
Common Questions / FAQ
Who is senior-architect for?
Indie developers and small teams shipping SaaS, APIs, or agent products who must choose or evolve system architecture without a dedicated architect.
When should I use senior-architect?
During Validate when scoping system boundaries; during Build when designing backend modules and integration seams; during Operate when revisiting scaling and failure domains after production pain.
Is senior-architect safe to install?
It is documentation-style procedural knowledge with no built-in execution; review the Security Audits panel on this Prism page before installing any skill from the repo.
SKILL.md
READMESKILL.md - Senior Architect
# Architecture Patterns Reference Detailed guide to software architecture patterns with trade-offs and implementation guidance. ## Patterns Index 1. [Monolithic Architecture](#1-monolithic-architecture) 2. [Modular Monolith](#2-modular-monolith) 3. [Microservices Architecture](#3-microservices-architecture) 4. [Event-Driven Architecture](#4-event-driven-architecture) 5. [CQRS (Command Query Responsibility Segregation)](#5-cqrs) 6. [Event Sourcing](#6-event-sourcing) 7. [Hexagonal Architecture (Ports & Adapters)](#7-hexagonal-architecture) 8. [Clean Architecture](#8-clean-architecture) 9. [API Gateway Pattern](#9-api-gateway-pattern) --- ## 1. Monolithic Architecture **Problem it solves:** Need to build and deploy a complete application as a single unit with minimal operational complexity. **When to use:** - Small team (1-5 developers) - MVP or early-stage product - Simple domain with clear boundaries - Deployment simplicity is priority **When NOT to use:** - Multiple teams need independent deployment - Parts of system have vastly different scaling needs - Technology diversity is required **Trade-offs:** | Pros | Cons | |------|------| | Simple deployment | Scaling is all-or-nothing | | Easy debugging | Large codebase becomes unwieldy | | No network latency between components | Single point of failure | | Simple testing | Technology lock-in | **Structure example:** ``` monolith/ ├── src/ │ ├── controllers/ # HTTP handlers │ ├── services/ # Business logic │ ├── repositories/ # Data access │ ├── models/ # Domain entities │ └── utils/ # Shared utilities ├── tests/ └── package.json ``` --- ## 2. Modular Monolith **Problem it solves:** Need monolith simplicity but with clear boundaries that enable future extraction to services. **When to use:** - Medium team (5-15 developers) - Domain boundaries are becoming clearer - Want option to extract services later - Need better code organization than traditional monolith **When NOT to use:** - Already need independent deployment - Teams can't coordinate releases **Trade-offs:** | Pros | Cons | |------|------| | Clear module boundaries | Still single deployment | | Easier to extract services later | Requires discipline to maintain boundaries | | Single database simplifies transactions | Can drift back to coupled monolith | | Team ownership of modules | | **Structure example:** ``` modular-monolith/ ├── modules/ │ ├── users/ │ │ ├── api/ # Public interface │ │ ├── internal/ # Implementation │ │ └── index.ts # Module exports │ ├── orders/ │ │ ├── api/ │ │ ├── internal/ │ │ └── index.ts │ └── payments/ ├── shared/ # Cross-cutting concerns └── main.ts ``` **Key rule:** Modules communicate only through their public API, never by importing internal files. --- ## 3. Microservices Architecture **Problem it solves:** Need independent deployment, scaling, and technology choices for different parts of the system. **When to use:** - Large team (15+ developers) organized around business capabilities - Different parts need different scaling - Independent deployment is critical - Technology diversity is beneficial **When NOT to use:** - Small team that can't handle operational complexity - Domain boundaries are unclear - Distributed transactions are common requirement - Network latency is unacceptable **Trade-offs:** | Pros | Cons | |------|------| | Independent deployment | Network complexity | | Independent scaling | Distributed system challenges | | Technology flexibility | Operational overhead | | Team autonomy | Data consistency challenges | | Fault isolation | Testing complexity | **Structure example:** ``` microservices/ ├── services/ │ ├── user-service/ │ │ ├── src/ │ │ ├── Dockerfile │ │ └── package.json │ ├── order-service/ │ └── payment-service/ ├── api-gateway/ ├── infrastructure/ │ ├── kubernetes/ │ └── terraform/ └── docker-compose.yml ``` **Co