이 저장소는 시스템 디자인 인터뷰에 대비하기 위한 실습형 스터디의 템플릿 레포지토리입니다.
각 주제는 실제 구현 → 성능 개선 → 부하 테스트 → 인프라 개선 순으로 진행되며, 해당 과정을 실습하면서 설계 역량과 문제 해결 능력을 함께 기릅니다.
- 시스템 디자인 이론을 직접 구현하고 계측하면서 학습
- 실무에서 마주칠 수 있는 성능 병목을 발견하고 개선
- 단순히 “동작하는 코드”가 아닌, “확장 가능한 시스템”을 만들기 위한 사고 훈련
- 시스템 디자인 인터뷰에서 자신 있게 설명할 수 있는 경험 확보
- MVP 구현
- 문제 정의 및 기본 API 기능 구현
- 애플리케이션 레벨 성능 개선
- 페이지네이션, 캐시 전략, 인덱스, 멱등성 처리 등
- 1차 k6 부하 테스트
- 병목 구간 발견 및 계측
- 애플리케이션 / 인프라 개선
- Redis / DB 튜닝 / 구조 개선 / 비동기화
- 2차 k6 부하 테스트 및 평가
각 실습은 별도의 레포지토리로 나누어 관리됩니다.
| 주제 | 설명 | 링크 |
|---|---|---|
leetcode-coding-platform |
LeetCode 스타일의 문제 풀이 / 제출 / 리더보드 시스템 | 🔗 이동 |
review-api-design |
대규모 사용자 대상 리뷰 시스템의 설계 및 튜닝 | 준비 중 |
payment-api-concurrency |
결제 API 동시성 제어 및 트랜잭션 보상 설계 | 준비 중 |
kafka-order-delivery |
Kafka 기반 주문/배송 비동기 처리 구조 설계 | 준비 중 |
redis-cache-strategy |
다양한 캐시 전략 실험 및 Redis TTL 설정 비교 | 준비 중 |
모든 프로젝트는 공통적으로 이 템플릿을 기반으로 생성되며,
README.md에 실험 목적과 결과가 정리됩니다.