개인정보 접속기록 안전하게 남기기
개인정보 감사 로그의 누락·성능·2차 유출 문제를 분석했습니다. 테스트, ThreadLocal, 비동기 배치로 안정적인 기록 체계를 구축했습니다.


개인정보 감사 로그의 누락·성능·2차 유출 문제를 분석했습니다. 테스트, ThreadLocal, 비동기 배치로 안정적인 기록 체계를 구축했습니다.

Claude로 레거시 분석·구현을 지원하고 Codex로 교차 검증한 마이그레이션 사례를 공유했습니다. AI 활용에도 데이터 의미와 결과의 최종 판단은 개발자가 담당해야 함을 확인했습니다.

AI 챗봇 SSE에서 완료 메시지가 유실된 원인을 채널 생성·삭제 시점의 경쟁 조건으로 분석했습니다. 채널 선등록과 replay 기반 구독으로 연결 순서와 무관하게 결과를 수신하도록 개선했습니다.

부하 테스트로 공통 조회 API의 병목과 N+1 호출을 확인하고 응답 구조를 개선했습니다. 요약 조회와 호출 제거로 병목의 상대적 위치가 낮아졌음을 확인했습니다.

Spring Boot 4.0의 API 버저닝과 선언형 HTTP 클라이언트, 내장 회복 탄력성 기능을 소개합니다. Undertow·javax.annotation·ListenableFuture 등 제거·대체 대상을 마이그레이션 전에 점검해야 합니다.

프롬프트 JSON 파싱 기반 에이전트 루프를 Spring AI 2.0의 native tool calling으로 전환했습니다. 실행 통제 계층은 유지하면서 메시지·도구 관리와 MCP 클라이언트를 개선했습니다.

최상위 제어 입력과 고비용 라벨 함수가 결합한 댓글 타이핑 지연을 측정해 원인을 분석했습니다. ref 기반 비제어 입력으로 전환해 리렌더와 라벨 호출을 제거하고 입력 성능을 개선했습니다.

온라인 시험 종료 시점의 저장·제출 요청 폭주와 답안 유실 위험을 분석했습니다. Kafka, 버전 제어, 상태 머신으로 안정적인 제출 처리를 구현했습니다.

MSA 분산 로그 증가로 발생한 MongoDB 비용과 성능 문제를 데이터 티어링으로 해결했습니다. 최근 로그는 MongoDB에, 장기 로그는 S3에 자동 이관해 저장 비용과 메모리 부하를 줄였습니다.

React와 Day.js로 공수·메모 등 날짜별 정보를 담는 재사용 가능한 캘린더를 구현했습니다. 날짜 계산과 UI를 분리하고 빈칸 배열 및 CSS Grid 정렬의 중요성을 설명합니다.

SI 프로젝트의 기존 계약·일정 관리 틀 안에서 Scrum 역할과 Sprint 운영 방식을 연결했습니다. 고객 피드백과 회고를 반복해 우선순위와 작업 방식을 개선합니다.

추천 모델 선정에 앞서 모델별 데이터 요구사항과 행동 이벤트의 의미를 검토했습니다. 필수 조건은 Filtering으로 분리하고, 노출·요청·응답을 연결해 기록하는 구조를 제안했습니다.

Hibernate 멀티테넌시로 행·스키마·DB 분리와 테넌트별 조회 흐름을 설명했습니다. 세션 경계, 네이티브 SQL, 커넥션 풀 운영 시 주의점을 정리했습니다.

Spring Boot 4.0의 Jackson 3 전환과 JSpecify 기반 널 안전성 표준을 살펴봅니다. 직렬화 기본값과 엄격한 파싱으로 인한 런타임 API 호환성 위험을 점검합니다.

Codex 기반 다섯 역할의 AI 에이전트로 한국어 학습 드라마를 제작한 운영 경험을 소개했습니다. 역할 분리만큼 버전·검토·최종 선택을 조율하는 사람의 책임이 중요했음을 설명합니다.

React SPA에서 자주 발생하는 웹 접근성 결함과 JSX 마크업 규칙을 정리했습니다. 모달·아코디언·동적 알림의 ARIA 및 초점 제어 검증 방법을 제시합니다.

Pod·JVM 반복 비용을 줄이기 위해 서비스 경계와 데이터 경계를 유지한 통합 Boot 구조를 설계했습니다. MultiDatasource와 package 기반 트랜잭션 라우팅을 Prologue 자동 구성으로 공통화했습니다.

모바일 앱 QA에서 실기기로 Safe Area, 키보드, 터치, 화면 전환을 검증해야 하는 이유를 설명했습니다. 출시 전후 목적에 맞춘 이슈 기록과 재검수 운영 원칙을 제안합니다.
