"기술부채(기술적으로 해결할 일을 미뤄 완성 혹은 이익을 미루는 행위)는 서비스 개발이 급할 때, 기획이 변경되거나 기능을 추가할 때 주로 생깁니다. 저 자신도 개발자로 작업하며 몇몇 요소를 개선했더니, 기술부채를 상당 부분 줄일 수 있었습니다."

15일 서울 상암 누리꿈스퀘어에서 국내 유일 소프트웨어 전문지 마이크로소프트웨어가 주최하고 IT조선이 주관한 ‘마소콘2018’에서 김선미 트릴리어네어 플랫폼팀 매니저는 ‘빚을 탕감하기 위해 없애야 할 세 가지'를 주제로 발표에 나섰다.

서비스를 개발할 때 기술부채는 필수에 가깝다. 개발에 들어가는 순간부터 기술부채가 생긴다고 해도 과언이 아니다. 김 매니저는 ‘코스모체인’ 서비스 개발 노하우를 토대로 기술부채를 줄일 방안을 소개했다.

그는 먼저 ‘서버리스(Serverless)’를 기술부채 감소안으로 제시했다. 서비스 개발 시 반드시 서버를 가지고 있어야 할 필요는 없다. 기술부채는 개발 일정이 급박할 때 생긴다. 서비스 기획이 구체적이지 않거나 개발 중 바뀌면 기술부채는 더욱 늘어난다.

서버를 없애고 개발 구조를 단순화하면, 일정을 단축해 기술부채를 줄일 수 있다. 로직(논리 구조)만 확보하면 시스템을 구현할 수 있게 되고, 서비스 성능을 개선할 때 개발 부담도 줄어든다. 김 매니저는 서비스 배포 과정도 한결 단순해지며 검색, 분석 등 다양한 기능과의 궁합도 잘 맞게 된다고 설명했다.

김선미 트릴리어네어 플랫폼팀 매니저. / 차주경 기자
김선미 트릴리어네어 플랫폼팀 매니저. / 차주경 기자
김 매니저는 ‘융통성(Flexibility)’을 없애라고도 조언했다. 서비스 개발이나 일정에 융통성, 예외 사항을 두지 말고 우직하게 진행하라는 의미다.

서비스 개발사는 시장을 선점하려, 비즈니스를 확장하려 항상 일정을 서두른다. 이 과정에서 개발 범위가 늘고, 검토 사항과 함께 기술부채가 늘어난다.

김 매니저는 개발자간 정보와 학습 내용, 오류 경험을 공유하는 일정을 정례화했다. 그 결과 서비스 개선에 큰 도움이 됐다고 밝혔다. 이 일정을 통해 서비스 기술을 검토·보완, 결과적으로 기술부채를 줄일 수 있었다고 조언했다.

마지막으로 그는 ‘깜짝 요소(Surprise)’를 없애라고 말했다. 개인이 아닌 팀 단위로 일하면서 팀원 모두가 그 내용을 알아야 한다는, 뒤늦게 내용을 깨닫고 놀라는 팀원이 없어야 한다는 뜻이다.

김 매니저는 혼자가 아닌 팀 단위로 일해야 비로소 개발 시너지가 난다고 말했다. 개발자마다 다른 아이디어, 재능이 유기적으로 모여야 큰 프로젝트를 성공리에, 제 시간에, 기술부채 없이 마무리할 수 있다는 이론이다.