iterview 초기 설계 - 이력서 기반 면접 훈련 플랫폼의 구조와 기술 선택 Notes GitHub 저장소 iterview는 경력 개발자가 자기 이력서를 근거로 면접을 준비하는 서비스다. 이력서 PDF를 올리면 문장과 프로젝트에서 질문을 만들고, 답변을 채점하고, 약한 질문을 다시 풀게 한다. 이 글은 모노레포의 첫 커밋 5c51675부터 그날 마지막 커밋 a753094까지, 2026-07-23 하루의 상태를 기준으로 처음 설계를 정리... 2026/07/23 Iterview
직접 만든 마이크로벤치마크는 얼마나 틀리는가 - 결함 넷을 하나씩 재봤다 실무 사례 Notes JIT 컴파일에 측정이 틀어지는 세 가지를 적고 “JMH가 이 셋을 다룬다”로 끝냈다. 문서를 근거로 쓴 문장이고, 각각이 몇 배짜리인지는 재지 않았다. 이 글이 그 측정이다. 그리고 질문을 하나 더 붙였다. 언제는 손으로 재도 되는가. 저장소는 jvm-bench-lab이고 재실행은 한 줄이다. ./scenarios/t5/run.sh 1 ... 2026/07/23 Java
네이버 D2 「일 3,000만 건의 네이버페이 주문 메시지를 처리하는 Kafka 시스템의 무중단 전환 사례」 리뷰 — 두 벌로 발행해 대조한 검증기와, 발행 제어 키를 파티션 키와 같게 둔 이유 Tech Blog Review 원문: 일 3,000만 건의 네이버페이 주문 메시지를 처리하는 Kafka 시스템의 무중단 전환 사례 — NAVER D2, 김태성(Platform Labs), 2024-03-07 이 글을 고른 이유는 MCP의 Shadow Release와 같은 문제를 다른 규모에서 풀었기 때문이다. 나는 MyBatis 조회를 QueryDSL로 옮기며 두 결과를 나란히 ... 2026/07/22 Naver 빅테크 기술 블로그 리뷰 49편
JIT 컴파일 - 계층 컴파일, 인라이닝, 역최적화 Notes 자바 성능을 측정했는데 실행할 때마다 값이 다르고, 루프를 백만 번 돌리니 갑자기 빨라지며, 벤치마크에서 잰 값이 운영에서 재현되지 않는다. 셋 다 JIT(Just-In-Time 컴파일러, 실행 중에 바이트코드를 기계어로 바꾸는 컴파일러)가 하는 일을 모르면 설명되지 않는다. 그리고 이것을 모르면 성능 측정 자체가 틀린다. 인터프리터에서 시작한다... 2026/07/20 Java
카카오 「메시징 서버의 스트레스 테스트 노하우와 AI가 덜어 준 부분」 리뷰 — 지표를 네 층으로 내려가 읽는 법, 그리고 LLM에게 맡긴 것과 맡기지 못한 것 Tech Blog Review 원문: 메시징 서버의 스트레스 테스트 노하우와 AI가 덜어 준 부분 — kakao tech, 쟈미(jyami)·톡메시징플랫폼, 2026-05-22 한 줄 요약 카카오톡 메시징 팀은 운영과 동일한 스펙의 대상 서버와 Locust(파이썬 부하 생성 도구) 워커 수백 파드로 된 상시 스트레스 테스트 환경을 둔다. 트래픽 비율은 시간대마다 다르므로(신... 2026/07/20 Kakao 빅테크 기술 블로그 리뷰 48편
CPU 프로파일러가 1순위로 지목한 코드를 고쳤더니 아무 일도 없었다 실무 사례 Notes 느린 요청을 만나면 프로파일러를 켠다. 그런데 요청이 160ms인데 CPU를 5ms만 쓴다면, CPU 프로파일러는 그 5ms 안에서 순위를 매겨 준다. 155ms에 대해서는 아무 말도 하지 않는다. 그리고 그 5ms의 1위가 155ms의 1위와 같으리라는 보장은 없다. 이 글은 그 보장이 실제로 없다는 것을 재고, 대신 무엇을 봐야 하는지를 재는 실... 2026/07/18 Java
카카오페이 「MSA 환경에서 네트워크 예외를 잘 다루는 방법」 리뷰 — Unknown을 타입으로 만든 글과, Unknown을 상태로 저장한 프로젝트가 갈리는 지점 Tech Blog Review 원문: MSA 환경에서 네트워크 예외를 잘 다루는 방법 — 카카오페이 기술 블로그, larry(Payment Clan), 2022-05-25 이 글을 고른 이유는 “결과를 모르는 외부 호출을 실무 결제 팀은 어떻게 푸는가”가 궁금했기 때문이다. 카카오페이 글은 2022년 글이고, 결제 도메인에서 네트워크 예외를 세 가지 결과로 나누는 것부터 시작한다... 2026/07/17 KakaoPay 빅테크 기술 블로그 리뷰 47편
분산 트랜잭션 - 2PC와 Saga, 보상 트랜잭션이 실패하는 방식 Notes 서비스를 나누면 트랜잭션도 나뉜다. 주문 서비스가 커밋했는데 결제 서비스가 실패하면 무엇을 해야 하는가. 답은 둘뿐이다. 둘을 하나의 트랜잭션으로 묶거나(2PC), 나뉜 채로 보정하거나(Saga). 각자 포기하는 것이 다르고, 둘 다 공짜가 아니다. 2PC: 하나로 묶는다 코디네이터가 참여자들에게 두 단계로 묻는다. 1단계 (prepare):... 2026/07/14 Architecture
market.ticks 파티션 × 컨슈머 격자 — 키가 같아도 순서가 깨진 이유, 크래시 하나가 시세 전체를 멈춘 이유, 파티션 이웃이 인질이 되는 순간 개인 프로젝트 GitHub 저장소 · 보고서 reports/M-002.md 앞 글이 시세가 클라이언트에 닿는 마지막 구간을 쟀다면, 이 글은 그 앞 구간이다. Go 게이트웨이가 202종목의 틱을 Kafka market.ticks에 넣고, Kotlin worker가 그것을 읽어 Redis 최신가·캔들·이벤트 감지로 넘긴다. 파티션 키는 종목 ID(ADR-005). ... 2026/07/13 Experiment monticker 설계와 구현 기록 24편
LINE 「도메인에 의존하지 않는 채팅 플랫폼은 어떻게 만들었을까?」 리뷰 — 사용자를 모르는 채팅 플랫폼, 웹으로 만든 클라이언트, SOFT STOP으로 갈아 끼우는 챗봇 시나리오 Tech Blog Review 원문: 도메인에 의존하지 않는 채팅 플랫폼은 어떻게 만들었을까? — LY Corporation Tech Blog, 송재욱(ABC Platform), 2026-04-01 한 줄 요약 챗봇, 문의형 상담, 1:1, 그룹 채팅은 모두 “채팅”이지만 도메인마다 스펙이 다르고, 개별 대응하면 연동 포인트와 복잡도가 기하급수로 는다. MessagingHu... 2026/07/13 LINE 빅테크 기술 블로그 리뷰 46편