Microservices Architecture

MSA 는 서비스를 어느 기준으로 가를 것인가의 결정이다. 도메인 경계, 데이터 소유권, 스케일 패턴, 장애 격리 — 어느 것을 우선하느냐가 경계를 만들고 통신과 데이터를 차례로 결정한다.

2026년 5월 9일 · 약 6분 읽기

Claude Code 설정을 레이어로 나누기

settings.json, CLAUDE.md, slash commands, subagents, hooks. Claude Code 커스터마이징 표면은 ‘언제 개입하는가’라는 축 하나로 네 레이어로 정돈된다.

2026년 5월 1일 · 약 9분 읽기

macOS 개발 환경: dotfiles

alacritty + tmux + nvim + zsh + Claude Code 다섯 도구로 구성한 터미널 중심 개발 환경. 각 도구의 선택 이유와 조합 방식을 정리한다.

2026년 4월 30일 · 약 9분 읽기

JIRA Sprint 워크플로우와 Git/GitHub 연동

JIRA의 이슈와 워크플로우를 작업 단위의 그래프로 보고, Sprint 라이프사이클·이슈 계층·Git/GitHub 연동 패턴·자동화 흐름을 정리한다.

2025년 12월 30일 · 약 5분 읽기

GitHub Actions 기본기 — workflow, job, step

GitHub Actions를 저장소 이벤트 기반 자동화 엔진으로 보고, workflow / job / step 3단 추상과 trigger·runner·secret 운영을 정리한다.

2025년 12월 15일 · 약 4분 읽기

GitHub PR과 Code Review 사이클

GitHub PR을 Git 변경 그래프 위에 협업 레이어를 더한 추상으로 보고, Code Review 사이클·PR 단위 설계·머지 전략을 정리한다.

2025년 11월 30일 · 약 4분 읽기

Git 워크플로우 기본기 — commit, branch, merge/rebase

Git을 명령어 모음이 아닌 변경의 그래프로 보고, commit hygiene·branch strategy·merge vs rebase 결정이 그래프 모양에 대한 선택임을 정리한다.

2025년 11월 15일 · 약 4분 읽기

Security Group 과 NACL

Security Group(stateful, 인스턴스 단위)과 NACL(stateless, Subnet 단위)이 어떻게 서로 다른 계층의 방어선을 만드는지, 그리고 흔한 함정 시나리오를 정리한다.

2025년 11월 1일 · 약 4분 읽기

VPC 간/외부 연결 — Peering, VPN, Transit, PrivateLink

VPC 간/온프레미스/서비스 연결을 책임지는 4가지 메커니즘 — Peering, Transit Gateway, Site-to-Site VPN, PrivateLink — 의 토폴로지와 비용 트레이드오프를 정리한다.

2025년 10월 20일 · 약 4분 읽기

VPC 트래픽 흐름과 Route Table

VPC 안의 트래픽 경로를 결정하는 Route Table, 외부 출입구 역할의 Internet Gateway와 NAT Gateway, Public/Private Subnet 구분의 실체를 정리한다.

2025년 10월 1일 · 약 3분 읽기

VPC와 격리 모델

VPC가 IP CIDR, Subnet, Tenancy 세 요소를 조합해 사설 네트워크 경계를 시뮬레이션하는 원리를 정리한다. AWS/GCP/Azure/Alibaba 벤더 명칭 매핑 포함.

2025년 9월 15일 · 약 4분 읽기

봉투 암호화

봉투 암호화의 CMK/DEK 2중 키 구조가 키 유출 영향을 제한하고 키 회전을 단순화하는 원리를 정리한다.

2025년 4월 1일 · 약 4분 읽기

MLflow 와 ML Lifecycle

MLflow의 네 조각이 ML Lifecycle의 어느 칸을 메우는지, 그리고 경량 팀이 그 중 어떤 조각을 고를 수 있는지.

2025년 2월 20일 · 약 5분 읽기

Circuit Breaker

Circuit Breaker 의 차단 트리거와 회복 전략은 함께 설계되어야 한다. 회복 없는 차단은 의존성을 영구히 끊고, 차단 기준 없는 회복은 무의미한 cycling 이다.

2025년 2월 15일 · 약 5분 읽기

Rate Limiting

Rate Limit 알고리즘을 고르기 전에, 어느 계층에서 보호할지가 먼저 알고리즘의 선택지를 좌우한다. L4/L7/Application 계층과 Token/Leaky/Sliding/Fixed 알고리즘의 교차 관계를 정리한다.

2025년 2월 14일 · 약 4분 읽기

모델 학습 프레임워크 고르기: sklearn vs ONNX

sklearn과 ONNX는 같은 레이어의 경쟁자가 아니다. 두 도구의 자리를 분리해서 보면 ‘ONNX 레이어가 필요한가’라는 질문이 자연스럽게 남는다.

2025년 2월 1일 · 약 4분 읽기

Logistic Regression 다시 보기

CTR 예측의 baseline으로서 Logistic Regression의 구조와 특성을 정리한다. 오래된 모델이 여전히 baseline 으로 쓰이는 이유.

2025년 1월 15일 · 약 4분 읽기

Kubernetes 기초

Container 오케스트레이션의 기본 구조와 백엔드 개발자가 알아야 할 핵심 오브젝트, 네트워크, 스케일링, 운영 방법을 정리한다.

2024년 4월 10일 · 약 6분 읽기

Go Concurrency 모델

Go의 동시성 모델은 CSP를 기반으로 Goroutine과 Channel을 핵심 도구로 제공한다. 각 도구의 동작 원리와 선택 기준을 정리한다.

2024년 4월 5일 · 약 4분 읽기

MongoDB와 Redis — 같은 NoSQL, 다른 역할

같은 NoSQL 우산 아래에서 MongoDB 와 Redis 가 서로 다른 역할로 자리잡은 이유. 데이터 모델·스토리지·스키마·확장·사용 사례를 기준으로 비교 정리.

2024년 4월 2일 · 약 4분 읽기

Spring WebFlux 기본 — 논블로킹 I/O와 리액티브 스택

Spring MVC는 요청당 스레드를 할당한다. I/O 대기가 길어지면 스레드가 묶인다. WebFlux는 이벤트 루프 기반 논블로킹 모델로 이 문제를 해결한다. MVC와의 구조적 차이, Reactor 패턴, 선택 기준을 정리한다.

2024년 3월 25일 · 약 3분 읽기

HTTP/1.1과 HTTP/2

HTTP/1.1은 요청과 응답이 순차적이다. HTTP/2는 멀티플렉싱, 바이너리 프레이밍, 헤더 압축으로 이 구조를 바꿨다. 두 프로토콜의 차이와 HTTP/2 위에서 동작하는 gRPC의 특성을 정리한다.

2024년 3월 20일 · 약 5분 읽기

Docker Container 기초

Container의 개념과 VM과의 차이를 정리하고, Docker의 아키텍처, Dockerfile, Docker Compose의 기본 사용법을 설명한다.

2024년 3월 15일 · 약 4분 읽기

Horizontal vs Vertical Slicing

코드를 기술 계층별로 나누는 수평 분할과, 기능/도메인별로 나누는 수직 분할의 차이를 정리한다. 각각의 장단점과 선택 기준.

2024년 3월 10일 · 약 3분 읽기

Nest.js 기본 — DI와 Module 시스템

Nest.js는 Node.js 생태계에서 DI 컨테이너와 Module 시스템을 프레임워크 수준에서 제공한다. IoC, DI, Module, Provider 등 핵심 설계 원칙을 정리한다.

2024년 2월 26일 · 약 4분 읽기

Layered Architecture와 의존성 역전

레이어드 아키텍처는 기술적 책임 기준으로 코드를 수평 계층으로 나눈다. 4계층 구조의 각 역할, 의존성 방향 규칙, DIP로 계층 간 결합을 끊는 방법을 정리한다.

2024년 2월 23일 · 약 3분 읽기

Kafka 기초와 KRaft 모드

Kafka의 핵심 개념(토픽, 파티션, 컨슈머 그룹, 복제)을 정리하고, ZooKeeper 의존성을 제거한 KRaft 모드의 등장 배경을 설명한다.

2024년 2월 22일 · 약 4분 읽기

Go에서 Hexagonal Architecture 구현

Hexagonal Architecture의 핵심 개념과 Go에서의 관용적 구현. 암묵적 인터페이스와 패키지 구조를 활용한 의존성 방향 제어.

2024년 2월 21일 · 약 5분 읽기

Builder

Builder 는 생성자의 세 가지 한계가 동시에 모일 때의 해결책이다. 매개변수 수가 많고, 일부가 선택적이고, 단계적 검증이 필요한 경우. 셋이 같이 모이지 않으면 다른 도구로 충분하다. 언어가 named/default 매개변수를 제공하면 Builder 의 필요도 자연스럽게 줄어든다.

2024년 2월 11일 · 약 4분 읽기

Factory

Factory 의 공통 의도는 객체 생성과 사용의 분리다. 세 변형 (Factory Method / Abstract Factory / Static Factory Method) 은 분리 방식이 다르고 적합한 상황도 다르다. 실무에서는 Static Factory Method 가 가장 자주 쓰이고, DI 컨테이너가 등장하면 명시적 Factory 의 일부 역할이 컨테이너로 흡수된다.

2024년 2월 4일 · 약 5분 읽기

Singleton

Singleton 은 가장 단순한 패턴이지만 안티패턴 논란의 대표 사례다. 단일 인스턴스 보장과 전역 접근을 한 패턴에 묶은 결정이 강한 결합과 테스트 어려움의 원인. DI 가 두 의도를 분리한 일반 대안이다.

2024년 1월 28일 · 약 4분 읽기

Dependency Injection — DIP, IoC, DI의 위계

DIP(원칙), IoC(패턴), DI(기법)는 서로 다른 추상 수준에 있는 개념이다. 위계를 분명히 봐야 프레임워크 기능과 설계 원리가 섞이지 않는다.

2024년 1월 25일 · 약 4분 읽기

변경분 갱신 캐시 패턴

전량 갱신 방식의 캐시를 변경분만 갱신하도록 전환하는 패턴. 데이터를 성격별로 분리하고 변경 감지 전략을 적용하여 네트워크 비용을 줄이는 구조를 정리한다.

2024년 1월 20일 · 약 3분 읽기

RDB Transaction 의 ACID 가 실제로 보장하는 것

RDB 트랜잭션의 ACID 4개 속성이 실제로 무엇을 보장하는가. A/C/D 는 비교적 명확한 보장이지만 I 만 ‘단계’ 가 존재하는 이유 — 정확성과 동시성의 트레이드오프 도입.

2023년 9월 1일 · 약 4분 읽기

TCP와 UDP

백엔드 개발에서 자주 마주치는 두 전송 프로토콜, TCP와 UDP의 동작 원리를 정리한다. 연결 수립, 신뢰성 보장, 흐름/혼잡 제어 메커니즘과 선택 기준.

2022년 3월 1일 · 약 8분 읽기

세션 인증과 JWT

HTTP는 stateless다. 사용자 인증을 유지하려면 상태를 어딘가에 저장해야 한다. 서버에 저장하는 세션 방식과 토큰에 담아 클라이언트에 위임하는 JWT 방식의 구조, 트레이드오프, 저장 전략을 정리한다.

2021년 3월 20일 · 약 3분 읽기