← ClaudeAtlas

design-a-production-systemlisted

Design the architecture for a service that will have real users. Make quality attributes, boundaries, failure modes, and trade-offs explicit before implementation. Use when a project is moving beyond a prototype or several components must work as one reliable system.
protosphinx/sphinxstack · ★ 0 · Web & Frontend · score 75
Install: claude install-skill protosphinx/sphinxstack
# design-a-production-system Produce a design that another engineer can challenge, implement, and operate. Do not start with vendor logos. Start with the work the system must do, the qualities it must preserve, and the failures it must survive. ## When to use Use this skill when a prototype is becoming a supported product, a new service will carry real traffic, or a change crosses several components. It is especially useful before committing to storage, queues, service boundaries, or third-party dependencies. Do not use it to decorate a small, reversible feature with unnecessary architecture. If one process and one database meet the stated needs, record that as the design. ## Preconditions - Name the users, the critical user journey, and the person who can approve the design. - Gather known traffic, data, privacy, latency, availability, cost, and recovery needs. - Separate observed facts from estimates. Put a date and owner beside every estimate. - Identify constraints that cannot be changed in this project, including existing systems. ## Procedure 1. Write the critical journey as a short sequence from user action to visible result. 2. Rank three to five quality attributes such as correctness, availability, latency, recoverability, security, cost, and operability. State a measurable target where possible. 3. Draw the smallest system diagram that shows clients, processes, data stores, external services, trust boundaries, and the direction of important data flows.