<aside> 🔎 궁금한 내용은 키워드로 검색해 보세요! (CTRL+F)

</aside>

목차

1. 개요


카카오뱅크(이하 카뱅) 앱을 통해 제공되는 모든 상품과 서비스는 서버 개발자가 개발하고 운영하는 서버를 통해 처리되고 있다. 카뱅의 2400만 고객이 발생시키는 순수한 비즈니스 트래픽만 1만 TPS가 넘을 때도 있는데, 카뱅의 서버 개발자는 이런 대량의 트래픽을 처리하기 위해 더 깊이 있는 기술적 고민을 하기도 한다.

1.1. 서버 개발자의 역할

카카오뱅크에서 서버 개발자는 클라이언트에서 필요로 하는 데이터를 다른 Component에 적절히 요청해 Aggregation 하고, 고객의 정보를 안전하게 계정계에 전달하는 일을 하고 있다. 클라이언트와 계정계를 잇는 다리 역할인 셈이다. 또 대외기관과 연동을 할 때 트래픽 등을 고려해 서비스가 매끄럽게 제공될 수 있도록 한다.

은행이라는 도메인 특성상 ‘계정계'가 있다는 점이 카카오뱅크의 가장 큰 특징 중 하나다. 카뱅은 금융결제원, 여신금융협회 등 연동되어 있는 대외기관이 다른 회사에 많은 편인데, 회사마다 서버 상태, 스펙이나 소통 방식이 모두 달라 서버 개발자의 역량과 실력으로 해결해야 하는 부분이 많다.⁽¹⁾

2 . 카뱅 서버 개발자가 매력적인 이유


사실 서버 개발자를 찾는 회사는 매우 많다. 그럼에도 ‘굳이 카카오뱅크에 와야 할 이유’는 분명히 있다. 카뱅 서버 개발자들이 생각하는, ‘카뱅 서버 개발자가 매력적인 이유’를 정리했다.

2.1. 서버 개발자에겐 역시 대용량 트래픽!

서버 개발자라면 공감하겠지만, 대부분의 문제는 트래픽이 높아졌을 때 발생한다. 대량의 트래픽을 안정적으로 처리하기 위해서는 스레드(Thread), 캐시, 비동기 처리 등 좀 더 깊이 있는 기술적인 고민들이 필요하다. 이때 강의나 책에 있는 샘플 코드들을 참고할 순 있겠으나, 굉장히 심플하고 깔끔한 이론들에 비해 현실은 녹록치 않다.

카카오뱅크에서는 대용량 트래픽 덕에 예상하지 못했던 이슈들을 직접 해결해 보며 ‘실전’을 경험할 수 있다는 것이 가장 큰 매력 중 하나다.⁽²⁾