일기 slecs

거래자 결산 수수료 계층 구조를 직접 설계하며 비즈니스 로직을 이해하다

목차

6월엔 거래자 결산 모듈을 건드리기 시작했다. 결제에서 돈이 들어오면 거래자에게 어떻게 분배하느냐의 로직이었다. 이게 슬렉스에서 가장 핵심적인 비즈니스 로직이 될 것 같았다.

결산은 생각보다 훨씬 복잡하다

처음엔 단순할 줄 알았다. 판매금액에서 수수료를 빼면 되는 것 아닌가. 근데 수수료가 계층별로 다르고, 충전수수료·결제수수료·판매대금이 각각 따로 계산된다. 게다가 가상계좌와 카드는 확정 타이밍이 다르다. 가상계좌는 입금 후 몇 시간, 카드는 며칠 후에 확정.

이걸 설계하면서 회사 업무에서 봤던 결산 관련 로직들이 갑자기 이해됐다. 그때는 그냥 코드였는데, 이제 왜 그렇게 짰는지가 보였다. 배경 지식이 생기면 이전에 보이지 않던 것들이 보이기 시작한다.

수수료 계층 구조

거래자가 여러 계층으로 나뉘고, 각 계층마다 수수료율이 다르다. 하위 계층이 더 높은 수수료를 내고, 그 차액이 상위 계층의 수익이 된다. 이 구조를 DB로 표현하는 방법을 이달에 설계했다.

항목 내용
사이드 거래자 결산 구조 설계
회사 비교적 평온, 기능 개선 위주
인사이트 수수료 계층 구조 이해

이달에 이직을 좀 더 구체적으로 알아보기 시작했다. 올해 안에 결정을 내리자는 생각을 하고 있었다.

결산 도메인을 공부하면서 개발자가 비즈니스 로직을 이해하는 게 왜 중요한지를 다시 느꼈다. 코드만 잘 짜는 것보다, 왜 그렇게 짜야 하는지를 아는 게 더 중요하다. 결산의 맥락을 이해하고 나서야 코드가 제대로 나왔다. 모르는 채로 만들면 결국 다 뜯어고치게 된다.

댓글 0

첫 댓글 달아줘.