푸른영혼의 별 | Tech Blog
Java Backend Engineer의 기술 블로그입니다.
Spring Boot, MSA, JPA, Kafka, Kubernetes 등 실무 경험을 공유합니다.
주요 프로젝트: Settlement MSA · ASAT · GitHub
Posts (총 658편 · 1 / 66 페이지)
-
양쪽 다 초록인데 가운데가 끊겨 있었다 — 포인트 적립 왕복을 끝단까지 붙여 보고
이벤트 프로모션(출석체크·럭키박스)을 별도 서비스로 떼어내는 중이었다. 보상 포인트는 이 서비스가 직접 지급하지 않는다. 원장은 주문 서비스가 쥐고, 마케팅은 “지급해 달라”는 이벤트만 낸다. 적립이 실제로 성사되면 주문 서비스가 다시 이벤트를 돌려주고, 그걸 받아야 보상이 확정된다.
-
jakubkrehel/skills 뜯어보기: 인터페이스 품질을 11개 스킬로 쪼갠 저장소
jakubkrehel/skills 는 “인터페이스를 잘 만들도록 돕는” 에이전트 스킬 모음이다. 타이포그래피·색·레이아웃·접근성·UX 라이팅 같은 디자인 엔지니어링 지식을 에이전트가 읽을 수 있는 형태로 정리해 두었다.
-
내 인프라를 한 문단으로 소개하고, 그 문단을 전부 재봤다
홈랩 클러스터를 남에게 소개할 때 쓰는 문단이 있다.
-
무기한 예외를 문법적으로 불가능하게 만들기 — 가드 19종을 직접 돌려봤다
정산 서비스에 규칙 엔진 하나(
guard.mjs)를 붙여 두고 쓴 지 좀 됐다. 설명은 여러 번 했는데 실제로 무엇을 통과시키고 무엇을 막는지 재본 적은 없어서, 오늘 직접 돌려봤다. 결과부터 적으면 제일 잘 만든 부분은 규칙이 아니라 예외 처리였고, 설명과 실제가 어긋난 곳도 두 군데 나왔다. -
카프카는 예외도 로그도 없이 조용히 잃는다 — 정산 시스템이 실패를 시끄럽게 만드는 여섯 지점
HTTP 는 실패할 때 시끄럽다. 500 이 뜨고, 스택트레이스가 남고, 호출한 쪽이 즉시 안다.
-
319단어 대 28만 줄 — grill-me 와 우로보로스는 같은 실패를 반대편에서 막는다
grill-me와 우로보로스(Ouroboros)를 비교해 달라는 요청을 받고 둘을 나란히 열어봤다. 둘 다 “에이전트 하네스” 라는 말로 뭉뚱그려 불리는데, 열어보니 크기가 우스울 정도로 다르다. -
거절한 설계를 지우지 않는 리포 — DeepSeek Harness 를 클론해서 세어봤다
DeepSeek 이 2026-08-13 에 deepseek-harness 를 공개했다. 보도는 대체로 두 가지에 몰렸다 — 스타 수가 폭발했다는 것, 그리고 “모든 것이 플러그인” 이라는 아키텍처. 둘 다 사실이다. 그런데 클론해서 파일을 세어보니 기사에서 한 번도 못 본 게 하나 나왔다.
-
빼는 걸 제품으로 삼은 스킬 카탈로그 — paperthin 의 가드를 직접 돌려봤다
LilMGenius/paperthin 을 읽었다. 에이전트 스킬 카탈로그인데, 스킬 목록을 훑는 글은 이 블로그에 이미 여러 편 있으니 이번엔 다르게 접근했다. 클론해서 그 리포의 검증 스크립트를 직접 돌렸다. 결론부터: 설계는 좋고, 가드에는 구멍이 있다. 셋 다 재현 가능한 형태로 아래에 적는다.
-
마이그레이션의 정답지는 어디서 오는가 — Spring Boot → NestJS 사례를 읽고
Toby’s Codex 에 Spring Boot 백엔드를 NestJS 로 옮긴 기록이 올라왔다. 개인 블로그의 백엔드를 통째로 갈아엎은 1인 마이그레이션 회고인데, 읽고 나서 계속 남은 건 이 문장이었다.
-
바이브코딩에서 레이어드 vs 클린 — '안정도'를 숫자로 재고 레포 4개를 돌려봤다
“레이어드보다 클린이 유지보수가 낫다”는 말은 너무 자주 들려서 이제 아무 정보도 없다. 낫다는 건 뭘 기준으로 낫다는 건가. 재본 사람은 별로 없다.