TASK · SB-DEV-TEAM
회사: NHN | 팀: SB 개발팀 (스포츠 베팅) | 기간: 2023.01 ~ 2024.03
스포츠 베팅 플랫폼에서 진행한 주요 업무를 정리한 문서 모음. 블록체인 지갑 연동, 추천 프로그램, KYC 인증 등을 담당했다.
내부 엔티티/토큰/추상 클래스 고유 명칭은 일반화해서 표기했다.
| 기간 | 업무 | 문서 |
|---|---|---|
| 2023.03 ~ 2023.12 | KYC 시스템 — 신분증 인증, Azure Blob, AES-256-GCM 암호화 | kyc-system.md |
| 2023.03 ~ 2024.02 | IP 화이트리스트 — 점검 우회, Ehcache, MQ 기반 캐시 갱신 | whitelist.md |
| 2023.04 ~ 2024.03 | wemix 지갑 연동 — prepare/token 플로우, 환경별 SDK 분리 | wemix-wallet-integration.md |
| 2023.08 ~ 2024.02 | 13개 로케일 다국어 — Svelte derived 합성 + 백엔드 캐시 사전 구성 | i18n-system.md |
| 2023.10 ~ 2024.02 | 추천 프로그램 — 추천/피추천 보너스, 미션 기반 토큰 클레임 3단계 | referral-program.md |
| 기간 | 업무 | 문서 |
|---|---|---|
| 2023.03 ~ 2024.02 | 캐시 아키텍처 — Ehcache + 인메모리 Map, MQ Fanout 정합성, 이중화 MQ | cache-architecture.md |
| 2023.12 | Vite 번들러 마이그레이션 — Rollup → Vite, wemix SDK 환경별 분리 | vite-migration.md |
Java 11 Spring Boot 2.6 Ehcache 3 QueryDSL Svelte SvelteKit Vite NestJS Prisma RabbitMQ Azure Service Bus Azure Blob wemix
13개 로케일 다국어 시스템 — Svelte derived 합성 + 백엔드 캐시 사전 구성
진행 기간: 2023.08 2024.02 스포츠 베팅 플랫폼의 다국어 시스템을 프론트엔드부터 백엔드 캐시까지 설계·구현했다. 글로벌 대응을 위해 13개 로케일을 지원했고, 스포츠 베팅이라는 도메인 특성상 UI 문구뿐 아니라 경기 마켓 이름, 선수 이름 치환, 핸디캡 표기 같은 템플릿 번역까지 필요했다. --- 일반 웹 서비스의 i18n과는 결이 달랐다....
IP 화이트리스트 구현
진행 기간: 2023.03 2024.02 특정 IP만 서비스 점검(maintenance)을 우회할 수 있도록 화이트리스트 기능을 구현했다. 처음에는 요청마다 DB를 조회하는 방식이었고, 이후 Ehcache를 적용해 개선했다. --- 서버 점검 중에도 내부 QA나 특정 파트너사는 서비스에 접근할 수 있어야 했다. 점검 모드가 활성화되면 일반 요청은 MAIN...
KYC 시스템 구현
진행 기간: 2023.03 2023.12 스포츠 베팅 서비스에서 KYC(Know Your Customer, 본인 인증) 기능을 구현했다. 신분증 이미지를 안전하게 저장하고, 어드민에서 승인/반려 처리하며, 법적 보존 기간이 지난 데이터를 자동 삭제하는 전체 흐름이다. --- KYC는 민감한 개인 정보(신분증 이미지, 개인 식별 정보)를 다루기 때문에 별도...
Spring Boot 인메모리 캐시 구조 — 다중 인스턴스 정합성
진행 기간: 2023.03 2024.02 스포츠 베팅 백엔드의 인메모리 캐시 전반을 구성했다. 다중 서버 환경에서 캐시 정합성을 어떻게 유지하는지가 핵심이었다. Ehcache와 자체 Map 캐시 두 종류를 상황에 맞게 쓰고, 어드민에서 데이터가 바뀌면 MQ Fanout으로 모든 서버가 동시에 갱신하도록 했다. 설계 결정과 협업 맥락을 남긴다. > 내부 공...
Svelte 프론트엔드 번들러 Vite로 교체
진행 기간: 2023.12 기존에 Rollup 기반으로 직접 번들링하던 구조를 Vite로 교체했다. 환경별(dev/alpha/stage/release) 빌드가 복잡하게 얽혀 있었고, 특히 wemix SDK가 환경마다 다른 파일을 사용하는 구조라 처리할 게 좀 있었다. --- 당시 빌드 구조는 Rollup 설정 파일을 직접 관리하는 방식이었다. Svelte는...
wemix 블록체인 지갑 연동
진행 기간: 2023.04 2024.03 서비스 내 보상을 블록체인 토큰(BYLO)으로 지급하는 구조가 있었다. 유저가 wemix 지갑을 연결하고, 보상을 수령할 때 지갑 서명을 통해 실제 토큰이 지급되는 방식이다. wemix SDK 연동과 환경별 빌드 처리에서 겪은 내용을 정리한다. --- wemix는 국내 게임사에서 만든 블록체인 플랫폼이다. 지갑 앱...
블록체인 토큰 기반 추천 프로그램 — 설계와 협업 기록
진행 기간: 2023.10 2024.02 스포츠 베팅 플랫폼에서 추천인 보너스 프로그램을 처음부터 설계하고 구현했다. 단순히 "A가 B를 추천하면 보상"이 아니라, 피추천인의 베팅 실적에 따라 포인트가 쌓이고 미션 달성 시 블록체인 토큰으로 보상받는 구조였다. 설계 결정과 팀과의 합 과정을 기록으로 남긴다. > 내부 엔티티/토큰 고유 명칭은 일반화해서 표기...