Skip to content
woojin.jang edited this page Apr 13, 2026 · 94 revisions

📚 Programming Languages (프로그래밍 언어)

📖 Java🥇

✏️ 굳건한 백엔드 생태계의 핵심 언어인 Java의 기본 문법부터 메모리 구조(GC), 동시성 제어, 함수형 프로그래밍(Stream/Lambda) 등 깊이 있는 동작 원리와 모던 피처를 탐구합니다.

📖 Effective Java 3/E🥈

✏️ 프로페셔널 Java 개발자의 필수 지침서, Effective Java를 통해 유지보수하기 좋고 안전한 객체 지향 코드 설계 원칙을 정리합니다.

📖 Kotlin🥇

✏️ 간결하고 안전한 코드를 지향하는 Kotlin의 핵심 문법부터 함수형 프로그래밍, DSL, 타입 시스템, 그리고 실무적 확장 활용법을 다룹니다.

📖 Kotlin Academy - 핵심편🥈

✏️ Kotlin Academy 시리즈를 통해 코틀린의 핵심 기능과 실무 적용 방법론을 깊이 있게 정리합니다.

📖 Kotlin Academy - Effective Kotlin🥈

✏️ 가독성 높고 유지보수하기 쉬운 Kotlin 코드 작성을 위한 실전 최적화 원칙들을 정리합니다.

📖 Coroutine🥈

✏️ 비동기/논블로킹 프로그래밍을 우아하게 처리하는 Kotlin Coroutine의 디스패처, 동작 원리 및 동시성 제어 메커니즘을 다룹니다.

📚 Frameworks & Libraries (프레임워크 & 라이브러리)

📖 Spring🥇

✏️ 엔터프라이즈 애플리케이션의 표준, Spring 프레임워크의 DI/IoC, AOP 철학부터 MVC 아키텍처, 트랜잭션 관리 체계까지 백엔드 기반 기술을 깊이 있게 파헤칩니다.

📖 Spring Security🥇

✏️ 안전한 서비스 구축을 위한 핵심 프레임워크, Spring Security의 인증 및 인가 아키텍처, 세션/토큰 관리 메커니즘, 그리고 OAuth 2.0 기반의 확장된 보안 인프라를 다룹니다.

📖 Spring Batch🥈

✏️ 대용량 데이터의 안정적인 일괄 처리를 위한 Spring Batch의 청크 지향 프로세싱, 스케줄링, 스레드 병렬 처리 및 장애 대응 전략을 정리합니다.

📖 Reactive Programming🥈

✏️ 대규모 트래픽 처리를 위한 비동기 이벤트 기반 프로그래밍 패러다임, Project Reactor 및 Spring WebFlux의 스트림 처리와 백프레셔(Backpressure) 메커니즘을 다룹니다.

  • [Reactive Programming - Reactive System & Reactive Programming]
  • [Reactive Programming - Reactive Streams]
  • [Reactive Programming - Blocking I/O & Non-Blocking I/O]
  • [Reactive Programming - Reactor Outline]
  • [Reactive Programming - Marble Diagram]
  • [Reactive Programming - Cold Sequence & Hot Sequence]
  • [Reactive Programming - Backpressure]
  • [Reactive Programming - Sinks]
  • [Reactive Programming - Scheduler]
  • [Reactive Programming - Context]
  • [Reactive Programming - Debugging]
  • [Reactive Programming - Testing]
  • [Reactive Programming - Operators]
  • [Reactive Programming - Spring Webflux]
  • [Reactive Programming - Annotation Based Controller]
  • [Reactive Programming - Functional Endpoint]
  • [Reactive Programming - Spring Data R2DBC]
  • [Reactive Programming - Exception Handling]
  • [Reactive Programming - WebClient]
  • [Reactive Programming - Reactive Streaming Data Processing]
  • [Reactive Programming - Everything About Reactive Programming]
  • [Reactive Programming - Fundamentals of WebFlux and Reactor]
  • [Reactive Programming - Core Operators in WebFlux Reactor]
  • [Reactive Programming - Practical Patterns in WebFlux]
  • [Reactive Programming - WebFlux Patterns with Spring Boot]

📚 Database & ORM (데이터베이스 & ORM)

📖 Database🥇

✏️ 서비스의 근간인 데이터 관리를 위한 RDBMS의 핵심 개념, 트랜잭션, 정규화 과정 및 실무적인 논리/물리 데이터 모델링 기법을 폭넓게 학습합니다.

📖 MySQL🥈

✏️ 세계에서 가장 대중적인 RDBMS, MySQL의 인덱스 튜닝, 락(Lock)을 통한 동시성 제어 및 커넥션 풀 관리 등 실전 성능 최적화 사례를 다룹니다.

📖 Redis🥈

✏️ 초고속 인메모리 스토어 Redis를 활용한 캐싱 전략, 세션 클러스터링, 동시성 이슈 해결(분산 락) 및 데이터 영속성 관리 기법을 정리합니다.

📖 JPA(Java Persistence API)🥈

✏️ 객체 지향과 관계형 DB 간의 패러다임 불일치를 해소하는 JPA의 영속성 컨텍스트, 연관관계 매핑, N+1 문제 해결 및 성능 최적화 노하우를 다룹니다.

📖 QueryDsl🥉

✏️ 컴파일 타임에 타입 안정성을 보장하며, 복잡한 동적 쿼리를 직관적이고 객체 지향적으로 작성하게 해주는 QueryDsl 실무 활용법을 다룹니다.

📚 Architecture & System Design (아키텍처 & 시스템 설계)

📖 MicroService Architecture🥈

✏️ 대규모 확장성에 유연하게 대응하는 MSA 구조의 통신 패턴, API 게이트웨이, 분산 트랜잭션 처리(SAGA 등) 및 이벤트 기반 아키텍처(EDA) 설계 패턴을 탐구합니다.

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초🥈

✏️ 대규모 트래픽 처리, 캐싱, 데이터 파티셔닝 등 시스템 확장을 위한 근본적인 고민과 아키텍처 설계 역량을 배양합니다.

📖 Clean Code🥈

✏️ 요구사항이 변경되어도 유연하게 대처할 수 있는, 읽기 좋고 유지보수하기 쉬운 클린 코드 작성 철학을 정리합니다.

📖 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식🥈

✏️ 성능 튜닝, IO 병목 해결, 동시성 제어 및 외부 연동 등 주니어 개발자가 필연적으로 마주하는 실전 문제 해결 지식을 정리합니다.

📚 Data Streaming & Messaging (메시징 & 스트리밍)

📖 Kafka🥇

✏️ 대용량 데이터 스트림을 안정적으로 처리하는 분산 메시지 브로커, Apache Kafka의 브로커 메커니즘, 프로듀서/컨슈머 통신, 그리고 KSQLDB 활용법을 정리합니다.

📖 Apache Flink🥈

✏️ 지연 없는 실시간 스트림 처리를 위한 분산 데이터 처리 엔진, Apache Flink의 아키텍처, 윈도우 처리 전략 및 상태 관리(State Management) 기법을 알아봅니다.

  • [Apache Flink - Apache Flink Architecture]
  • [Apache Flink - Stream Processing]
  • [Apache Flink - Data Stream API & Window]
  • [Apache Flink - State Management]

📚 Infrastructure, DevOps & Network (인프라, 데브옵스 & 네트워크)

📖 HTTP(Hypertext Transfer Protocol)🥇

✏️ 웹 아키텍처의 근간인 HTTP 프로토콜의 작동 원리, 헤더 구조, 상태 코드, 그리고 RESTful API 설계를 위한 웹 캐시 메커니즘을 상세히 다룹니다.

📖 AWS🥇

✏️ 현대적 서버 인프라 구축을 위한 AWS 클라우드의 주요 서비스(S3, Cognito 등)와 인프라를 코드로 관리하는 IaC(AWS CDK) 활용법을 정리합니다.

📖 Docker🥈

✏️ 애플리케이션의 일관된 배포 환경을 보장하는 컨테이너 기술, Docker의 라이프사이클 관리, 네트워크/볼륨 설정 및 Docker Compose 기반 컨테이너 오케스트레이션을 학습합니다.

📖 Kubernetes🥇

✏️ 대규모 컨테이너 서비스의 표준 운영 플랫폼, Kubernetes의 파드 스케줄링, 인그레스 설정, 자원 관리 노하우 및 무중단 배포(ArgoCD) 파이프라인을 구축합니다.

  • [Kubernetes - Probe]
  • [Kubernetes - ConfigMap & Secret]
  • [Kubernetes - PV/PVC & Deployment & Service & HPA]
  • [Kubernetes - Blue/Green Deployment]
  • [Kubernetes - Helm & Kustomize]
  • [Kubernetes - ArgoCD]
  • [Kubernetes - Pod]
  • [Kubernetes - Ingress & Nginx Application]
  • [Kubernetes - Node Scheduling]
  • [Kubernetes - Monitoring]
  • [Kubernetes - Logging]

📖 CI/CD(Continuous Integration/Continuous Deploy)🥈

✏️ 안정적이고 빠른 서비스 배포 파이프라인 자동화를 위한 Github Actions와 Jenkins 기반의 지속적 통합/지속적 배포 환경 구축 방법을 정리합니다.

  • Github Actions - Github Actions
  • [Jenkins - Jenkins + IaC]
  • [Jenkins - Advanced Jenkins Pipeline]
  • [Jenkins - Advanced Jenkins SonarQube & Multi nodes]
  • [Jenkins - Jenkins Appendix]

📖 Nginx🥉

✏️ 고성능 웹 서버이자 리버스 프록시, 로드 밸런서로 활약하는 Nginx의 최적화 설정, HTTPS 통신 관리 및 트래픽 분산 처리 기법을 다룹니다.

📖 Monitoring🥈

✏️ 서비스의 안정성 확보와 장애 대응을 위해 로깅(ELK), 메트릭 수집 및 시각화(Prometheus & Grafana) 등 관측 가능성(Observability) 인프라 구축을 도모합니다.

  • [Monitoring - Log Concept]
  • [Monitoring - Log Level & Filter]
  • [Monitoring - Logback]
  • [Monitoring - Log Collection with ELK Stack]
  • [Monitoring - Log Monitoring with Kibana]
  • [Monitoring - Building a Monitoring System with Spring Boot Actuator]
  • [Monitoring - Server Monitoring with Prometheus and Grafana with Discord Alerts]

📚 Test & Projects (테스트 & 사이드 프로젝트)

📖 Test🥈

✏️ 견고한 소프트웨어를 위한 단위/통합 테스트 기법(JUnit, Mockito, TestContainers)부터 시스템 병목을 찾는 부하 테스트(JMeter) 노하우까지 다룹니다.

📖 Side Project🥉

✏️ 학습한 깊이 있는 기술(동시성 제어, 분산 트랜잭션, 성능 튜닝 등)을 실제 비즈니스 로직에 적용해 보고 트러블슈팅하며 얻은 인사이트를 기록합니다.

📖 Java

📖 Kotlin

📖 Coroutine

📖 Spring

📖 Spring Security

📖 Spring Batch

📖 Reactive Programming

📖 Database

📖 MySQL

📖 Redis

📖 JPA

📖 QueryDsl

📖 MSA

📖 Kafka

📖 Apache Flink

  • [Apache Flink - Apache Flink Architecture]
  • [Apache Flink - Stream Processing]
  • [Apache Flink - Data Stream API & Window]
  • [Apache Flink - State Management]

📖 HTTP

📖 AWS

📖 Docker

📖 Kubernetes

📖 CI/CD

📖 Nginx

📖 Monitoring🥈

  • [Monitoring - Log Concept]
  • [Monitoring - Log Level & Filter]
  • [Monitoring - Logback]
  • [Monitoring - Log Collection with ELK Stack]
  • [Monitoring - Log Monitoring with Kibana]
  • [Monitoring - Building a Monitoring System with Spring Boot Actuator]
  • [Monitoring - Server Monitoring with Prometheus and Grafana with Discord Alerts]

📖 Test

📖 Effective Java 3/E

📖 Kotlin Academy - Effective Kotlin

📖 Kotlin Academy - 핵심편

📖 스프링으로 시작하는 리액티브 프로그래밍

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 1

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 2

📖 Clean Code

📖 리팩토링 2판

📖 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식

📖 GraphQL

Clone this wiki locally