Reading Paths

처음 온 개발자를 위한 기본 경로

CS 감각부터 Linux와 배포까지 흐름을 잡습니다.

Start
20 posts2 steps

AI 도구를 개발에 붙이는 경로

AI 개념부터 Spring 연동과 운영 판단까지 연결합니다.

New
39 posts2 steps

Recent Posts

Backend & Spring·2026년 7월 10일

잔량 컬럼은 없다: 조회할 때마다 계산되는 재고

창고 안에서 직원이 장부는 덮어둔 채 저울로 상자 무게를 직접 재는 일러스트.

장부에 없는 숫자 퀴즈 하나. 재고 관리 시스템에서 '남은 수량'은 어디에 저장돼 있을까. 대부분 stock이나 remain_qty 같은 컬럼을 떠올릴 것이다. 나도 그랬다. 그런데 내가 운영에 참여하는 시스템(농산물 생산 이력 관리, Spring Boot + JPA/Hibernate + MyBatis + PostgreSQL)에서 가장 중요한 숫자인 '건조물 잔량'은 어느 테이블에도 저장돼 있지 않다. 화면에는 매번 잘만 표시되는 그 숫자가, 데이터베이스 … 더 읽기

Backend & Spring·2026년 7월 7일

15초 걸리던 API: JPA N+1 문제가 보낸 청구서

통역 직원이 상자 하나씩만 들고 책상과 창고 사이를 수없이 왕복하며 발자국 트레일을 남기는 일러스트.

 “목록 화면이 느려요” 목록 화면은 서비스의 현관이다. 사용자가 하루에도 수십 번 여닫는 문이고, 그래서 이 문이 무거워지면 불만은 가장 먼저, 가장 크게 들어온다. 내가 운영에 참여하는 시스템(농산물 생산 이력 관리, Spring Boot + JPA/Hibernate + PostgreSQL)에도 그런 문이 하나 있었다. 수확 이력 목록 API. 조회 버튼을 누르면 응답까지 '10초에서 15초'가 걸렸다. 페이지가 죽은 게 … 더 읽기

Backend & Spring·2026년 7월 3일

SQL을 직접 짜본 게 언제였더라: AI의 리팩토링 계획을 뒤집은 날

읽기 문과 쓰기 문이 나란히 달린 창고 앞에 두 직원이 서 있는 일러스트. 한 명은 통역용 헤드셋을, 한 명은 SQL 쪽지를 들고 있다.

편리함의 청구서 오늘 하루 짠 코드를 돌아보자. repository.save()를 몇 번 호출했고, findBy로 시작하는 메서드 이름을 몇 개 지었는가. 그리고 SQL은 몇 줄 직접 썼는가. 나는 마지막 질문 앞에서 오래 멈췄던 적이 있다. 메서드 이름만 지으면 쿼리가 알아서 만들어진다. 복잡한 조회는 이미 있는 XML을 복사해 조건 하나만 바꾼다. 막히면 AI에게 물어본다. 요즘 백엔드의 데이터 접근은 대개 … 더 읽기