📚

백엔드 학습 모듈

기초→스프링→데이터/설계→운영/모니터링→Q&A 단계별 학습 모듈

지속 업데이트 스프링 · JPA · DB 운영 · 모니터링

🚀 백엔드 커리큘럼

STEP 5

5단계: 심화/시스템 설계

도메인 경계/모듈화부터 마이그레이션, 이벤트 기반 설계까지: 시스템 설계를 실전 감각으로 확장

Backend Roadmap 12/16
STEP 6

6단계: 복습(Q&A)

학습하며 남긴 Q&A를 한 번에 모아 복습하는 단계

Backend Roadmap 12/16

🗺️ 학습 가이드

모듈별 학습 노트를 모았습니다. 각 모듈 페이지에서 개요와 연결된 노트를 한 번에 확인할 수 있습니다.

📂 학습 주제

Algorithm

학습 노트 모음

1개 12/16

Architecture

학습 노트 모음

13개 12/16

Backend

학습 노트 모음

9개 12/16

Backend Roadmap

학습 노트 모음

7개 12/16

Build

학습 노트 모음

1개 12/16

CS

학습 노트 모음

1개 12/16

Caching

학습 노트 모음

1개 12/16

Database

학습 노트 모음

8개 12/16

DevOps

학습 노트 모음

5개 12/16

Frontend

Redux, Zustand, Context API 비교 및 상태관리 패턴 관련 핵심 개념과 실전 예제 정리

2개 01/28

Git

학습 노트 모음

1개 12/16

JPA

학습 노트 모음

1개 12/16

JVM

학습 노트 모음

2개 12/16

Java

ClassLoader, JIT, Thread 관리, Safepoint 관련 핵심 개념과 실전 예제 정리

2개 01/19

Kafka

학습 노트 모음

6개 12/16

Messaging

학습 노트 모음

1개 12/16

Network

학습 노트 모음

3개 12/16

Networking

학습 노트 모음

2개 12/16

Observability

학습 노트 모음

2개 12/16

Ops

학습 노트 모음

4개 12/16

Performance

학습 노트 모음

1개 12/16

Q&A

학습 노트 모음

3개 12/16

React

React 라이브러리 학습 노트

1개 11/03

Reactive

Reactive Programming, Publisher/Subscriber, Backpressure 관련 핵심 개념과 실전 예제 정리

1개 01/24

Redis

학습 노트 모음

2개 12/16

Security

학습 노트 모음

6개 12/16

Spring

학습 노트 모음

24개 12/16

System Design

학습 노트 모음

4개 12/16

Testing

학습 노트 모음

2개 12/16

최근 학습 노트

Ops

클라우드 비용 최적화 전략

오토스케일, 캐시/스토리지 티어링, 예약/세이빙 플랜, 모니터링을 통한 비용 최적화

Cost Optimization Autoscaling Caching +1
System Design

시스템 설계: 뉴스피드

Fan-out on write/read, 캐시/타임라인 테이블 설계, 지연/일관성 트레이드오프 정리

System Design Newsfeed Fanout +1
System Design

시스템 설계: URL Shortener

Key 생성, 충돌 방지, 캐시/DB 설계, 확장성·가용성 고려사항 정리

System Design URL Shortener Hash +2
System Design

시스템 설계: Rate Limiter

Token Bucket, Leaky Bucket, Sliding Window 알고리즘과 분산 환경에서의 구현 전략

Rate Limiting Token Bucket Sliding Window +1
Architecture

멀티테넌시 설계 전략

스키마/데이터베이스 분리, 테넌트 격리/보안, 마이그레이션·운영 고려사항

Multitenancy Schema Isolation +1
Networking

로드밸런서/헬스체크 설계

ALB/NLB 헬스체크, 타임아웃/리트라이 설정, 고가용성을 위한 설계 포인트

Load Balancer Health Check ALB +1
Architecture

레거시 리팩터링 전략

대규모 레거시 개선을 위한 우선순위, 단계별 접근, 위험 관리

Legacy Refactoring Strangler +1
Spring

WebFlux vs MVC 선택 가이드

Reactive 필요성 판단 기준, 스레드 모델 차이, 적용/비적용 시나리오 정리

WebFlux Spring MVC Reactive +1
Testing

Spring 통합 테스트와 Testcontainers

MySQL/Redis/Kafka를 Testcontainers로 올려 실제 환경과 유사한 통합 테스트를 구성하는 방법

Testcontainers Spring Boot Integration Test +2
Spring

Spring Security + JWT 인증 흐름

JWT 기반 인증 필터, 토큰 발급/검증, Stateless 세션 구성을 코드로 정리

Spring Security JWT Authentication +1
Spring

Spring Boot 자동 설정 해부

자동 설정 동작 원리, 조건부 빈 등록, 커스터마이징 포인트 정리

Spring Boot AutoConfiguration Condition +1
Redis

Redis 캐시 패턴 모음

Cache-Aside, Write-Through, Write-Behind, 분산락 패턴을 코드 예시와 함께 정리

Redis Cache Aside Write Through +2
Q&A

Q&A 모음: 운영/보안 20제

CI/CD, 모니터링/알람, 네트워크, CORS/CSRF/OWASP 등 운영/보안 관련 20문항 Q&A

Ops Security DevOps +1
Kafka

Kafka 재시도/DLQ 설계

재시도 토픽, DLQ, 멱등 처리로 Kafka 소비 실패를 다루는 패턴

Kafka Retry DLQ +1
Architecture

gRPC 서비스 설계 기초

프로토 정의, 일방향/양방향 스트리밍, gRPC-Gateway 연계 등 gRPC 설계 핵심

gRPC Protobuf Streaming +1
Architecture

GraphQL 스키마 설계 가이드

스키마 정의, 리졸버 구조, N+1 방지(DataLoader), 버전 관리 베스트 프랙티스

GraphQL Schema Resolver +1
Architecture

Event Sourcing과 CQRS 입문

이벤트 소싱과 CQRS 기본 개념, 장단점, 적용 시 고려사항

Event Sourcing CQRS Command +1
Backend Roadmap

6단계: 복습(Q&A)

학습하며 남긴 Q&A를 한 번에 모아 복습하는 단계

Q&A 백엔드 정리 +1
Backend Roadmap

5단계: 심화/시스템 설계

도메인 경계/모듈화부터 마이그레이션, 이벤트 기반 설계까지: 시스템 설계를 실전 감각으로 확장

시스템설계 아키텍처 분산시스템 +1
React

React Hooks 기초

React Hooks의 기본 개념과 사용법 정리

React Hooks Frontend
Database

MySQL 인덱스 기초 예제

WHERE, ORDER BY, JOIN에서 인덱스가 어떻게 사용되는지 간단한 예제로 정리

MySQL Index Explain +1
Spring

WebFlux 구조 정리

Q1. Mono와 Flux의 차이는 무엇인가요?

답변

Mono: 0개 또는 1개의 데이터를 비동기로 처리하는 Publisher

Flux: 0개 이상 N개의 데이터를 비동기로 처리하 …

Spring WebFlux Reactor Reactive +2
Frontend

상태관리 비교 정리

상태관리 비교 정리

Q1. Redux와 Context API의 차이는 무엇인가요?

답변

ReduxContext API는 모두 전역 상태 관리를 위한 도구이지만, …

React Redux Zustand +2
Database

SQL 성능 튜닝 정리

SQL 성능 튜닝 정리

Q1. Execution Plan (실행 계획)은 어떻게 읽나요?

답변

**Execution Plan (실행 계획)**은 DB 옵티마이저가 쿼리를 어떻게 실 …

SQL Performance Join +1
Spring

Spring Transaction 관리 정리

Spring Transaction 관리 정리

Q1. @Transactional은 어떻게 동작하나요?

답변

@TransactionalSpring AOP를 이용한 선언적 트랜잭션 …

Spring Transaction ACID +1
Spring

Spring Bean Lifecycle 정리

Q1. Spring Bean의 생명주기를 설명해주세요.

답변

Spring Bean은 컨테이너 시작 → 생성 → 의존성 주입 → 초기화 → 사용 → 소멸 단계를 거칩니다.

상세 생명 …

Spring Bean Lifecycle +1
Reactive

Reactive Programming 개념 정리

Reactive Programming 개념 정리

Q1. Reactive Programming이란 무엇이고, 왜 필요한가요?

답변

Reactive Programming비동기 데이 …

Reactive Backpressure Publisher +1
Frontend

React 성능 최적화 정리

React 성능 최적화 정리

Q1. Virtual DOM은 어떻게 동작하나요?

답변

Virtual DOM실제 DOM의 가벼운 복사본으로, React가 UI …

React Performance Virtual DOM +1
Security

OAuth2 인증 구조 정리

Q1. OAuth2 인증 흐름을 설명하고, 4가지 Grant Type의 차이점을 비교해주세요.

답변

OAuth2는 인증(Authentication)이 아닌 인 …

OAuth2 인증 보안 +3
Kafka

Kafka Partition 설계 정리

Kafka Partition 설계 정리

Q1. Kafka에서 메시지는 어떻게 Partition에 분배되나요?

답변

Partition 분배 방식메시지의 Key에 따라 결정됩니다. …

Kafka Partition Ordering +1
Kafka

Kafka Consumer Group 정리

Kafka Consumer Group 정리

Q1. Kafka Consumer Group이란 무엇이고, 왜 필요한가요?

답변

Consumer Group여러 Consumer가 협력 …

Kafka Consumer Group Rebalance +1
Java

JVM 내부 구조 정리

Q1. JVM의 구조를 설명해주세요.

답변

JVM은 크게 Class Loader, Runtime Data Area, Execution Engine으로 구성됩니다. …

Java JVM ClassLoader +1
Java

Java GC & 메모리 구조 정리

Q1. Java의 메모리 구조를 설명해주세요. Heap과 Stack의 차이는 무엇인가요?

답변

Java 메모리는 크게 Heap, Stack, Method Area, PC …

Java GC Memory +1
Spring

예외 처리 전략 정리

Q1. @ControllerAdvice와 @ExceptionHandler를 사용한 글로벌 예외 처리를 설명해주세요.

답변

@ControllerAdvice는 Spring …

예외처리 Spring ControllerAdvice +2
DevOps

Docker & Kubernetes 정리

Docker & Kubernetes 정리

Q1. Docker와 가상머신(VM)의 차이는 무엇인가요?

답변

**Docker (Container)**와 **VM (Virtual …

Docker Kubernetes DevOps +1
Spring

DispatcherServlet 동작 흐름 정리

Q1. DispatcherServlet의 동작 흐름을 설명해주세요.

답변

DispatcherServlet은 Spring MVC의 Front Controller로, 모든 HTTP 요 …

Spring Spring MVC DispatcherServlet +1
Database

DB 인덱스 최적화 정리

DB 인덱스 최적화 정리

Q1. B-Tree 인덱스는 어떻게 동작하나요?

답변

**B-Tree (Balanced Tree)**는 대부분의 RDBMS에서 사용하는 균형 잡힌 트리 구 …

Database Index B-Tree +1
Backend

동시성 제어 정리

Q1. 낙관적 락(Optimistic Lock)과 비관적 락(Pessimistic Lock)의 차이점과 사용 사례를 설명해주세요.

답변

동시성 제어는 여러 트랜잭션이 동시에 같은 …

동시성 Lock JPA +3
DevOps

CI/CD 개념 정리

CI/CD 개념 정리

Q1. CI/CD란 무엇이고, 왜 필요한가요?

답변

CI/CD는 **지속적 통합(Continuous Integration)**과 **지속적 배 …

CI/CD Jenkins ArgoCD +1
Backend

캐싱 전략 정리

Q1. 캐싱의 기본 개념과 Cache-Aside, Write-Through, Write-Behind 전략을 설명해주세요.

답변

**캐싱(Caching)** …

캐싱 Redis Caffeine +2
Backend

API 성능 문제 해결 정리

API 성능 문제 해결 정리

Q1. Thread Dump는 어떻게 분석하나요?

답변

Thread Dump특정 시점의 모든 스레드 상태 스냅샷으로, 성능 문제 진단에 핵심적입니 …

Performance API Thread Dump +1