개발
코드 / 아키텍처 / 디버깅
-
결제·정산 데이터 정합성 감사로 불일치 조기 발견
20260408 1530 zlgoon-payment-relay-reply 2026-04-08 기준 시스템 현황 분석 보고서를 작성했음. 분석 목적 서비스가 복잡해질수록 데이터 간 불일치가 쌓임. 특히 결제/정산처럼 여러 단계를 거치는 흐름은 중간 어딘가에서 엣지케이스가 터지기 쉬움. 주기적으로 전체 데이터를 돌아보면서 이상 징후를 조기에 발견하는
읽기 → -
입금 매칭
입금 매칭 및 파트너 권한/설정 개선 입금 매칭 및 파트너 권한/설정 개선 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 6개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) { validate(
읽기 → -
데모 데이터 관리와 알림 기능 신규 추가
데모 데이터 관리 및 알림 기능 추가 데모 데이터 관리 및 알림 기능 추가 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 5개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) { validate(
읽기 → -
파트너 알림 채널 관리 기능 구현
파트너 알림 채널 관리 기능 추가 파트너 알림 채널 관리 기능 추가 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 6개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) { validate(requ
읽기 → -
결제 수단별 충전 수수료 정책을 타입으로 분리해 독립 관리
충전 수수료 입력 필드 분리 및 UI 개선 충전 수수료 입력 필드 분리 및 UI 개선 기능을 구현했음. 배경 결제 수단별로 수수료 구조가 다른데, 단일 계산 로직으로 처리하면 요율 변경 시 사이드 이펙트가 생기기 쉬움. 타입별로 분리하면 각자 독립적으로 변경할 수 있음. 구현 방식 수수료 타입을 Enum으로 정의하고, 타입별 정책을 DB에서
읽기 → -
VBANK 데이터를 VACCOUNT로 마이그레이션하고 UI 개선
VBANK 데이터를 VACCOUNT로 일괄 마이그레이션 및 UI 개선 VBANK 데이터를 VACCOUNT로 일괄 마이그레이션 및 UI 개선 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 6개를 작성했음. 코드 예시 java // 핵심 로직 public void exec
읽기 → -
파트너 가입 페이지 JSP 리팩토링으로 코드 가독성 개선
파트너 가입 페이지 UI 및 폰트 리팩토링 리팩토링 작업을 완료했음. 리팩토링 이유 코드 가독성과 유지보수성 향상을 위한 리팩토링이었음. 변경 전/후 java // 수정 전: 중복/복잡 로직 // 각 클래스에 동일 로직 반복 // 수정 후: 명확하고 단일 책임 public static Long resolveId(Object source) {
읽기 → -
쿠폰 주문 상세에 형제 쿠폰이 모두 표시되지 않던 버그 수정
쿠폰 주문 상세에 형제 쿠폰(parent_issue_sn) 모두 표시 쿠폰 주문 상세에 형제 쿠폰(parent_issue_sn) 모두 표시 버그를 수정했음. 원인 분석 로직 일부가 엣지케이스를 처리하지 못하고 있었음. 실제 운영 데이터에서 발생한 케이스로 재현했음. 재현 조건 특정 조건에서 의도치 않은 동작 확인. 수정 내용 java /
읽기 → -
부산은행 쿠폰 처리 누락 버그 수정
부산은행 다중 URL 캐치 + 쿠폰 qty 루프 누락 수정 부산은행 다중 URL 캐치 + 쿠폰 qty 루프 누락 수정 버그를 수정했음. 원인 분석 새로운 처리 경로를 추가할 때 기존 경로의 공통 처리를 빠뜨렸음. 재현 조건 특정 경로로 처리된 건에서 후처리가 실행되지 않음. 수정 내용 java // 수정 전: 분기별 처리, 일부 누락 i
읽기 → -
초대 토큰 환원 엣지케이스 버그 수정
초대 토큰 환원 로직 추가 초대 토큰 환원 로직 추가 버그를 수정했음. 원인 분석 로직 일부가 엣지케이스를 처리하지 못하고 있었음. 실제 운영 데이터에서 발생한 케이스로 재현했음. 재현 조건 특정 조건에서 의도치 않은 동작 확인. 수정 내용 java // 수정 전: 엣지케이스 미처리 public void process(Data data)
읽기 → -
파트너 채널 초대 링크 가입 경로 통제 기능 구현
파트너 초대 토큰 기능 추가 및 관련 UI/쿼리 업데이트 파트너 초대 토큰 기능 추가 및 관련 UI/쿼리 업데이트 기능을 구현했음. 배경 신규 채널 사용자 등록 시 초대 링크 방식을 도입했음. 무작위 가입을 막고 상위 채널이 하위를 직접 초대하는 구조를 만들었음. 구현 방식 초대 토큰을 생성해서 링크에 포함하고, 가입 시 토큰을 검증했음. 토
읽기 → -
마스킹 이름으로 발생하던 충전 매칭 실패 수정
마스킹 이름으로 주문/충전 매칭 실패 수정 (queue 28 NO_MATCH) 마스킹 이름으로 주문/충전 매칭 실패 수정 (queue 28 NO_MATCH) 버그를 수정했음. 원인 분석 실명 대신 마스킹된 이름(홍*동)이 들어올 때 DB의 실명과 직접 비교해서 매칭 실패가 발생했음. 재현 조건 마스킹 처리된 이름으로 들어온 요청이 NO_MAT
읽기 → -
마스킹 이름으로 들어온 정산 매칭 실패 수정
마스킹 이름/하이픈 금액 매칭 실패 수정 마스킹 이름/하이픈 금액 매칭 실패 수정 버그를 수정했음. 원인 분석 실명 대신 마스킹된 이름(홍*동)이 들어올 때 DB의 실명과 직접 비교해서 매칭 실패가 발생했음. 재현 조건 마스킹 처리된 이름으로 들어온 요청이 NO_MATCH로 처리됐음. 수정 내용 java // 수정 전: 완전 일치 비교만
읽기 → -
매뉴얼 엔진에 환경변수와 CLI 인자 지원 추가
매뉴얼 엔진에 환경변수 및 CLI 인자 지원 추가 매뉴얼 엔진에 환경변수 및 CLI 인자 지원 추가 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) {
읽기 → -
출금 수수료 정산 엣지케이스 버그 수정
출금 수수료 정산 로직 보강 및 시스템 수익 직접 적립 처리 추가 출금 수수료 정산 로직 보강 및 시스템 수익 직접 적립 처리 추가 버그를 수정했음. 원인 분석 로직 일부가 엣지케이스를 처리하지 못하고 있었음. 실제 운영 데이터에서 발생한 케이스로 재현했음. 재현 조건 특정 조건에서 의도치 않은 동작 확인. 수정 내용 java // 수정
읽기 → -
플랫폼 수익 직접 적립 유틸 메서드 추가
플랫폼 수익 직접 적립 유틸 메서드 추가 플랫폼 수익 직접 적립 유틸 메서드 추가 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) { valid
읽기 → -
버튼 크기 조정과 수수료 계산 로직 개선
UI 버튼 크기 및 수수료 계산 로직 개선 UI 버튼 크기 및 수수료 계산 로직 개선 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request request) { val
읽기 → -
결제매출 카드 비활성화
결제매출 카드 비활성화 및 출금 요청 은행코드 백필 추가 결제매출 카드 비활성화 및 출금 요청 은행코드 백필 추가 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 6개를 작성했음. 코드 예시 java // 핵심 로직 public void execute(Request re
읽기 → -
파트너 계약서 제출 이력 시스템화
파트너 계약서 제출에 사업자등록증/통장사본 첨부 필수화 및 관련 로직 추가 파트너 계약서 제출에 사업자등록증/통장사본 첨부 필수화 및 관련 로직 추가 기능을 구현했음. 배경 계약 프로세스를 시스템 안에서 관리하면 파일 분실 위험이 없어지고, 제출 이력도 추적할 수 있음. 이력이 없으면 분쟁 시 근거가 없어지는 문제가 있었음. 구현 방식 계약서
읽기 → -
정산 승인·거절과 라이브 정산 토글 로직 개선
정산 승인/거절 및 라이브 정산 토글 동작 로직 개선 정산 승인/거절 및 라이브 정산 토글 동작 로직 개선 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개, SQL 쿼리 1개, JSP 화면 1개를 작성했음. 코드 예시 java // 핵심 로직 public void
읽기 →