아카이브
- 19 / 05 개발만 잘하면 되는 줄 알았다 — 일을 잘한다는 건 뭘까
- 12 / 05 홈서버 보안, 막고 있다고 생각했는데 구멍이 있었다
- 06 / 05 VARCHAR(255)로 등록하고 VARCHAR(100)에 넣으려던 날
- 21 / 04 유출된 카드가 우리 PG로 돌아왔다
- 15 / 04 지급대행 시스템을 처음부터 혼자 만들면서 배운 것들
- 10 / 04 ClassCastException 하나가 이중 송금을 만든 날
- 09 / 04 API 매뉴얼을 .docx에서 웹 페이지로 전환한 이야기
- 09 / 04 개인 홈서버 세팅기 — nginx 라우팅 확장, SVN 저장소 구축, Claude MCP 연동까지
- 06 / 04 이중 NAT 환경에서 WireGuard VPN 구축기
- 05 / 04 결제 모듈 리팩토링 — SharedMap을 전부 걷어냈다
- 05 / 04 회사 운영 환경을 집에 재현한 이유 — 로컬 SVN 서버 구축기
- 02 / 04 백엔드 개발자가 네트워크 레이어까지 추적한 이유 — VoIP 지연 7초의 진짜 원인
- 02 / 04 인증결제 뒤로가기 이슈 — 데이터는 남았는데, 맞는 데이터가 없다
- 01 / 04 LLM 로컬 구축 일기 #2 — PG 도메인 챗봇, 설계부터 시작합니다
- 01 / 04 VIP는 마스터를 바라보는데, 왜 슬레이브에도 UPDATE가 됐을까
- 31 / 03 LLM 로컬 구축 일기 #1 — 금감원 이슈로 로컬에서 시작합니다
- 30 / 03 승인 모듈이 Slave DB를 직접 바라본 결과 - 시퀀스 매칭 오류
- 27 / 03 멀티스레드 환경에서 로그 추적이 안 될 때 - Thread ID의 중요성
- 26 / 03 MaxScale GTID 복제 중단 트러블슈팅 (feat. 내가 해결하려 했지만...)