loading

엑셀이 답답해서 시작한 개발 미팅이 산으로 갔던 과정

엑셀로 버티기 힘들어 시작한 자체 프로그램 개발 외주

처음에는 그냥 구글 스프레드로 고객 관리를 하고 매칭을 시켜주는 방식으로도 큰 무리가 없었다. 그런데 손님이 조금씩 늘어나고 하루에 들어오는 신청 건수가 수십 건이 넘어가면서부터 시트가 꼬이기 시작했다. 수식이 깨지거나 엉뚱한 연락처가 다른 행에 들어가는 일이 빈번해지자, 지인들이 이제는 제대로 된 프로그램을 개발해야 할 때라고 조언해 주었다. 나도 그 말을 듣고 귀가 솔깃해져서, 우리 사무실에 딱 맞는 맞춤형 프로그램개발을 알아보기 시작했다. 시중에 이미 나와 있는 여러 협업 툴이나 고객 매칭 솔루션들을 도입해 볼까도 생각했지만, 우리만의 조금 복잡한 상담 프로세스를 고스란히 녹여내기에는 한계가 있을 것 같다는 근거 없는 고집이 생겼다. 엑셀 수식을 고치느라 밤을 새우는 짓을 반복하느니, 나만의 깔끔한 시스템을 하나 갖추는 게 멀리 보면 이득일 것 같았다. 하지만 이때까지만 해도 프로그램개발이라는 영역이 얼마나 깊고 복잡한 늪인지 전혀 짐작하지 못했다.

요구사항 정의서 작성 과정에서 마주한 전문 용어의 벽

본격적으로 개발 업체를 알아보기 전에 내가 원하는 기능들을 문서로 정리해야 한다고 했다. 머릿속에는 완벽한 그림이 그려져 있었지만, 막상 빈 워드 문서에 글자로 적어 나가려니 어디서부터 손을 대야 할지 막막했다. 로그인 화면이 있고, 회원가입이 되고, 관리자가 매칭을 승인하면 알림이 가는 수준만 적었는데 더 이상 쓸 말이 없었다. 다른 매칭 서비스나 플랫폼의 화면을 캡처해서 대충 흉내라도 내보려고 했지만, 화면 뒤편에서 데이터들이 어떻게 맞물려 돌아가는지에 대해서는 아는 바가 없었다. 지인의 소개를 받아 서울 가산디지털단지에 있는 개발사 ‘지성소프트’에 미팅 예약을 잡았다. 생각보다 일정이 밀려 있어서 첫 대면 미팅을 잡는 데만 거의 2주 가까이 대기해야 했다. 어렵게 찾아간 사무실에서 대표와 마주 앉았을 때, 내가 내민 A4 용지 세 장짜리 기획안을 보더니 그는 씁쓸한 미소를 지었다. 데이터베이스 스키마가 어떻게 정의되어야 하는지, 어떤 API를 사용해 데이터를 주고받을 것인지에 대한 질문들이 쏟아졌고, 나는 그저 고개만 끄덕이며 알아듣는 척을 해야 했다.

미팅 일정 조율과 견적서 비교의 현실적인 어려움

한 군데 이야기만 듣고 덜컥 계약할 수는 없어서 다른 곳의 견적도 받아보기로 했다. 프리랜서 마켓에서 개인 개발자도 알아보고, 중간 규모의 개발 에이전시에도 문의를 넣었다. 그런데 견적서를 받아볼 때마다 금액의 격차가 너무 심해 머리가 아파왔다. 집에서 재택으로 작업한다는 개인 개발자는 대략 800만 원 선에서 해결해 줄 수 있다고 했고, 가산동에서 만난 에이전시는 포트폴리오를 보여주며 1,500만 원에서 2,000만 원 정도의 견적을 냈다. 개발 기간도 최소 3개월은 필요하다고 덧붙였다. 어떤 곳은 요즘 대세라며 쿠버네티스 기반의 고도화된 클라우드 인프라를 구축해야 나중에 사용자가 몰려도 서버가 안 터진다고 설명했다. 솔직히 우리 가게 이용자가 한 번에 수만 명씩 몰릴 리도 없는데, 그런 거창한 오픈소스 기술이나 네트워킹 솔루션 이야기를 들으니 내가 사기를 당하고 있는 건 아닌가 하는 의심마저 들었다. 싼 곳에 맡겼다가 도중에 연락 두절이라도 되면 어쩌나 싶고, 비싼 곳은 당장 수중에 쥐고 있는 자금 사정에 너무 큰 타격이라 결정을 내리기가 정말 곤란했다.

오픈소스 인프라 적용과 서버 유지 비용의 불확실성

결국 너무 싼 곳은 피하고 중간 가격대를 제시한 곳과 계약서를 썼다. 계약을 마치고 나니 이번에는 매달 꼬박꼬박 지출해야 하는 서버 호스팅 비용과 유지관리비가 도마 위에 올랐다. 개발사 측에서는 아마존 AWS나 클라우드 서비스를 이용해야 한다고 권장했고, 매달 트래픽 양에 따라 요금이 청구될 텐데 초기에는 몇만 원 수준이겠지만 사용자가 늘어나면 얼마가 나올지 예측하기 어렵다고 했다. 보안을 강화하기 위해 유료 SSL 인증서를 매년 갱신해야 하고, 데이터 백업을 위한 별도의 가상 서버도 세팅해야 한다고 했다. 프로그램을 개발하는 데 드는 일시적인 비용만 생각했지, 이렇게 매달 고정적으로 통장에서 빠져나갈 돈에 대해서는 무지했던 터라 뒤통수를 맞은 느낌이었다. 그렇다고 이미 계약금까지 치른 마당에 서버를 안 열 수도 없는 노릇이었다. 개발 도중에도 “이 디자인이 맞느냐”, “이 데이터 필드가 누락되었다” 등 끊임없이 카톡과 메일이 날아와 일상 업무에 집중하기가 힘들었다.

개발 완료 이후에도 끝나지 않는 자잘한 수정 요구

약속된 3개월의 시간이 훌쩍 지나고 드디어 결과물을 받아보았다. 겉보기에는 깔끔하게 잘 만들어진 것처럼 보였다. 하지만 막상 내가 실제 데이터를 입력하고 직접 테스트를 해보니 생각지도 못했던 버그들이 여기저기서 튀어나왔다. 아이디에 하이픈(-)이나 온점을 넣으면 회원가입 단계에서 오류 페이지로 넘어가 버린다든가, 매칭 승인 메일이 스팸 메일함으로 바로 꽂혀버리는 현상들이 발생했다. 이런 세세한 문제들을 고쳐달라고 메일을 보냈더니, 개발사에서는 애초에 전달받았던 요구사항 정의서에 없었던 부분이기 때문에 추가 공임비가 발생한다고 통보했다. 몇만 원 단위도 아니고 버그 몇 개 잡는 데 수십만 원의 추가 견적이 붙어 나오는 걸 보니 억울한 마음이 들었다. 결국 완벽하게 고치치 못한 기능들은 그냥 내가 꼼꼼히 체크해서 수동으로 보완하는 식으로 쓰고 있다. 아직도 그 프로그램에 접속할 때마다 조금 더 신중하게 알아보고 시작할 걸 그랬다는 후회가 들곤 한다.

“엑셀이 답답해서 시작한 개발 미팅이 산으로 갔던 과정”에 대한 2개의 생각

  1. 데이터 입력 테스트에서 발생하는 오류 때문에 추가 공임이 발생했다니, 예상치 못한 부분들이 많아서 답답한 마음이네요. 특히, 요구사항 정의서에 없던 부분에 대한 청구는 좀 당황스러울 것 같아요.

    응답
  2. 데이터베이스 스키마 얘기 들으면서 좀 헷갈렸던 부분이 이해가 좀 되네요. 쿠버네티스 같은 거, 실제로 사용하지 않는 기능은 필요 없는데 괜히 들이는 게 아닐까 싶어서요.

    응답

댓글 남기기