Tech

기술 블로그

MDX로 기록한 글과 작업 로그를 한 곳에 모아두는 공간입니다.

Spring Boot 4 AOT Repositories로 앱 시작 시간 줄이기 — 쿼리 파싱을 빌드 타임에
2026년 7월 6일

Spring Boot 4 AOT Repositories로 앱 시작 시간 줄이기 — 쿼리 파싱을 빌드 타임에

Spring Data JPA 4.0의 AOT 리포지토리가 쿼리 메서드를 빌드 타임에 미리 만들어 시작 시 리플렉션 파싱을 없애는 원리를, 공식 문서와 예제를 직접 돌려보며 정리했습니다.

Spring BootJPAPerformance
Sentry만으로 부족했던 이유 — Spring Boot에 OpenTelemetry + Jaeger 분산 추적을 도입한 과정
2026년 5월 4일

Sentry만으로 부족했던 이유 — Spring Boot에 OpenTelemetry + Jaeger 분산 추적을 도입한 과정

Sentry의 에러 추적과 Actuator의 메트릭 모니터링만으로는 서비스 간 호출 흐름을 파악하기 어려웠습니다. OpenTelemetry와 Jaeger를 도입해 분산 추적 체계를 구축하고, 각 도구의 역할을 분리한 경험을 공유합니다.

Spring BootMonitoringObservability
Spring AI + PGVector로 사내 문서 검색 RAG 파이프라인을 구현한 과정
2026년 5월 3일

Spring AI + PGVector로 사내 문서 검색 RAG 파이프라인을 구현한 과정

사내 문서를 LLM이 검색하고 답변할 수 있도록 Spring AI와 PGVector 기반 RAG 파이프라인을 구축한 경험을 정리했습니다. 임베딩, 벡터 저장소, 검색 품질 개선까지 실무에서 겪은 시행착오를 담았습니다.

Spring BootAIArchitecture
Spring Boot 4의 JSpecify + NullAway로 NullPointerException을 빌드 타임에 잡은 경험
2026년 4월 30일

Spring Boot 4의 JSpecify + NullAway로 NullPointerException을 빌드 타임에 잡은 경험

Spring Framework 7이 도입한 JSpecify 기반 null-safety 어노테이션과 NullAway를 실무 프로젝트에 적용하여, 런타임에 터지던 NPE를 빌드 단계에서 차단한 과정과 결과를 정리합니다.

Spring BootJavaCode Quality
Spring Security 7 마이그레이션 — 설정을 통째로 뜯어고치며 배운 것들
2026년 4월 29일

Spring Security 7 마이그레이션 — 설정을 통째로 뜯어고치며 배운 것들

JWT 기반 API 서버를 Spring Security 7로 올리면서 만난 함정들. deprecated 경고를 지우는 단순 작업이 인가 버그 발견과 보안 설정 전체 재점검으로 이어진 경험을 공유합니다.

Spring BootSpring SecurityJWT
Spring Boot 3.3에서 4.0으로 올리다가 이틀을 날린 이야기
2026년 4월 24일

Spring Boot 3.3에서 4.0으로 올리다가 이틀을 날린 이야기

사이드 프로젝트의 Spring Boot 버전을 올리며 Jackson 3 패키지 변경, properties 키 소멸, 서드파티 호환 문제로 삽질한 과정을 기록합니다.

Spring BootArchitectureRefactoring