Skip to content
System Design Guide logo

System Design Guide

[日本語版](../../ja/03-software-design/system-design-guide/SKILL.md)

Gaku52/claude-code-skills0installs6stars

SKILL.md

Full skill instructions

日本語版

System Design Guide

System design is the culmination of engineering expertise. This skill provides a systematic body of knowledge for designing real-world systems, covering the trade-offs between scalability, availability, and consistency.

Target Audience

  • Engineers preparing for system design interviews
  • Those involved in designing large-scale systems
  • Anyone who wants to learn the rationale behind architectural decisions

Prerequisites

  • Basic knowledge of web development
  • Database fundamentals
  • Networking fundamentals

Learning Guide

00-fundamentals — Core Concepts

#FileDescription

01-building-blocks — Building Blocks

#FileDescription

02-patterns — Design Patterns

#FileDescription

03-case-studies — Case Studies

#FileDescription

Quick Reference

System Design Framework:
  1. Define requirements (functional / non-functional / constraints)
  2. Back-of-the-envelope estimation (QPS / storage / bandwidth)
  3. High-level design (component diagram)
  4. Detailed design (API / DB schema / algorithms)
  5. Scalability and bottleneck mitigation

References

  1. Xu, A. "System Design Interview." ByteByteGo, 2023.
  2. Kleppmann, M. "Designing Data-Intensive Applications." O'Reilly, 2017.
  3. Fowler, M. "Patterns of Enterprise Application Architecture." Addison-Wesley, 2002.