GDAC AML: 규제 업무를 지탱하는 데이터 기반을 만들다
GDAC 거래소에서 자금세탁방지(AML) 시스템을 구축하고 업그레이드했다. 고객과 거래, 입출금 데이터를 AML 솔루션이 사용할 수 있는 형태로 연결하고, KYC·위험평가·워치리스트 필터링·이상거래탐지 기능이 거래소 업무 흐름 안에서 일관되게 작동하도록 통합했다.
프로젝트 배경
가상자산사업자의 AML 업무는 한 가지 시스템만으로 끝나지 않는다. 고객확인(KYC), 위험평가(RA), 워치리스트 필터링(WLF), 이상거래탐지(FDS)가 서로 연결되어야 하고, 고객 정보와 거래 및 입출금 내역이 정확한 시점과 기준으로 전달되어야 한다. 데이터가 누락되거나 서로 다른 식별자를 사용하면 위험 판단과 후속 조치 전체가 흔들릴 수 있다.
규제 요구와 AML 솔루션의 변화에 대응하면서 기존 거래소 데이터 구조도 함께 손봐야 했다. 운영 중인 서비스의 안정성을 유지한 채 데이터 모델과 연동 방식을 바꾸는 것이 중요한 제약이었다.
맡은 역할
- Peertec/GDAC 거래소 소프트웨어 엔지니어
- AML 데이터 ETL 및 시스템 통합
- 데이터베이스 스키마 재설계 참여
- 요구사항과 일정 조율 지원
기간: 2024년 1월–8월
주요 작업
고객, 거래, 입금과 출금 데이터를 AML 워크플로우에 전달하는 Python 기반 ETL 프로그램을 개발했다. 각 원천 시스템의 데이터를 공통 기준으로 정리하고, 필수 값의 누락과 형식 오류를 확인하며, 반복 처리나 지연이 발생해도 결과의 일관성을 유지할 수 있도록 구성했다.
새로운 컴플라이언스 요구와 솔루션 연동에 맞춰 거래소 데이터베이스 스키마를 재설계하는 작업에도 참여했다. 기존 서비스가 사용하는 구조와 AML에 필요한 데이터 모델 사이의 차이를 파악하고, 변경이 다른 기능에 미치는 영향을 검토했다. 운영 데이터를 다루는 만큼 마이그레이션과 검증 절차를 함께 고려해야 했다.
KYC, RA, WLF와 FDS 기능을 거래소 시스템에 연결해 고객 정보가 위험평가와 모니터링, 후속 업무로 이어지는 전체 흐름을 완성했다. 기능별 연동을 개별 작업으로 끝내지 않고, 한 단계의 결과가 다음 단계에서 올바르게 해석되는지를 확인했다. 규제 기반 요구사항과 마일스톤도 정리해 관련 팀이 같은 기준으로 프로젝트를 진행할 수 있도록 지원했다.
배운 점
AML 시스템의 품질은 눈에 보이는 기능보다 데이터의 일관성에서 결정되는 경우가 많았다. 화려한 탐지 기능이 있어도 고객과 거래의 연결이 잘못되면 의미 있는 판단을 할 수 없다. ETL은 단순히 데이터를 옮기는 작업이 아니라, 서로 다른 시스템이 같은 사실을 같은 의미로 이해하게 만드는 과정이었다.
또한 컴플라이언스는 개발팀만의 프로젝트도, 규제 담당자만의 프로젝트도 아니었다. 법적 의무를 이해하는 사람과 실제 데이터를 아는 사람, 시스템을 운영하는 사람이 계속 기준을 맞춰야 했다. 이 경험을 통해 규제 요구를 기술적으로 구현하는 능력만큼, 각 이해관계자의 언어를 연결하고 검증 가능한 결과를 남기는 능력이 중요하다는 것을 배웠다.
기술과 링크
- 백엔드 및 ETL: Python
- 데이터베이스: MySQL
- GDAC 거래소: gdac.com
기술: Python, MySQL, AML, KYC, 컴플라이언스 엔지니어링