회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
> 이 글은 '5 Hidden Costs of Software You Need to Anticipate AFTER You Launch'을 각색하여 작성되었습니다.
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
많은 분들이 소프트웨어 개발 프로젝트를 끝내고나면, 더이상 큰 지출이 발생하지 않을 것이라 생각합니다. 소프트웨어 개발 속도에만 너무 집중한 나머지, 개발 이후의 숨겨진 비용에 대해서는 미처 고려하지 못하는 것인데요. 사실은 전혀 그렇지 않습니다. 작은 프로젝트에서 커다란 프로젝트로 규모를 키울 때면, 지속적으로 발생하게 되는 특정한 항목의 지출 비용들이 있습니다.
그래서 이번 시간, 위시켓은 소프트웨어 출시 이후에 반드시 알고 있어야만 하는 대표적인 비용에 대해서 알려드리겠습니다. 소프트웨어 개발을 고려 중이시라면, 혹은 이미 출시했다면 오늘의 정보들을 절대 놓치지 마세요!
아마, 여러분은 서비스로서의 소프트웨어(Saas)를 제공하는 업체에 매달 비용을 내고, 서비스를 이용하고 있을 가능성이 큽니다. 혹은 아마존 웹 서비스(AWS)와 같은 클라우드 업체에 소프트웨어를 호스팅하고 있을 수도 있죠. 이런 서비스에서도 마찬가지로 매월 비용이 발생하게 됩니다.
호스팅 비용은 소프트웨어 출시 이후에만 발생하는 것이 아니라, 비즈니스의 규모가 커지게 되면 그 비용 역시 상승하게 됩니다. 예산과 관련해서는 이런 상황에 대해서 미리 대비해 놓는 것이 아주 중요합니다. 호스팅을 유지하기 위해서는 지속적인 비용이 발생하게 되는데요. 만약 서버들이 클라우드에 호스팅 되어 있다면, 그런 서버들을 담당하기 위한 직원이 필요합니다. 그렇기 때문에 다음에 나올 직원 고용에 대한 비용도 염두에 두어야 하죠.
평균적으로 약 30%의 앱들이 한 달에 최소 한 번 이상의 업데이트를 한다고 합니다. 나머지 중 53%의 앱들도 6개월마다 한 번씩 업데이트를 한다고 하죠. 그렇기 때문에 출시 일이 지나도 그 앱을 유지하고, 업데이트하기 위해서는 관련 직원들을 잘 관리하는 것이 중요합니다.
물론 유지관리에 필요한 인원수는 조금씩 다를 수 있습니다. 예를 들면, 개발 기간에는 다섯 명의 엔지니어를 고용했지만, 이후에는 두세 명만 필요할 수도 있죠. 반면에 여러 명의 엔지니어들은 물론이고, QA 전문가, 데브옵스(DevOps) 인력, 디자이너, 프로젝트 매니저 등이 계속해서 필요할 수도 있습니다. 이처럼 개발 이후의 비용에 대해서는 신중하게 알아보고, 미리미리 계획을 세워 둬야 합니다.
이를테면, 새로운 규제가 생겨나서 앱의 품질이나 앱의 보안 또는 앱의 프라이버시에 영향을 미칠 수도 있습니다. 혹은 애플이나 구글에서 새로운 요구 사항이 나와서 여러분이 기존에 개발한 것들이 그러한 기준을 맞추지 못할 수도 있죠.
여러분이 작성한 코드는 개발을 하던 당시에는 '충분히 괜찮은' 정도였을 수 있습니다. 하지만 사업이 성장하면서 규모가 커지다 보면, 신규 트래픽을 감당하기 위해서 새로 작성해야 할 수도 있는데요. 이처럼 다양한 변수들에 잘 대처하기 위해서는 꾸준히 유지 보수 비용이 들기 마련입니다.
훌륭한 개발자나 좋은 엔지니어라고 해서, 여러분의 소프트웨어를 곧바로 이해할 수 있는 것은 아닙니다. 그들은 자신들이 개발한 소프트웨어에서는 좋은 엔지니어일 수 있지만, 여러분이 개발한 소프트웨어에서도 반드시 그렇다고 장담할 수는 없습니다. 따라서 새로 채용한 사람들이 여러분의 비즈니스 모델과 기술적인 난이도, 인프라 등 소프트웨어와 관련된 여러 가지 요소들을 이해할 수 있는 시간을 주어야만 합니다.
결국 새로운 직원을 교육하기 위해서는 막대한 비용과 시간이 들게 되는데요. 어떻게 하면 이러한 지출을 줄일 수 있을까요? 일단 사람과 관련된 단일 장애 지점(single points of failure)의 오류를 피하면 됩니다. 서버 한 개 만으로 모바일 앱 전체를 운영하는 사람은 없을 겁니다. 만약 그 서버가 작동이 중단되면, 그와 관련된 앱도 작동을 멈추게 되기 때문인데요. 인력과 관련해서도 똑같은 원리가 적용될 수 있습니다.
여러 가지 영역에서 수많은 업무를 한 사람이 맡아서 관리하고 있었는데, 어느 날 갑자기 그 사람이 없어진다면 어떻게 될까요? 그 사람 없이, 과연 여러분이 사업을 제대로 운영할 수 있을까요? 여러분은 직원들을 크로스 트레이닝(cross-training, 교차교육) 시켜야 합니다. 언제나 예비 인력을 두어, 경영에 문제가 없도록 말입니다.
때로는 시간을 맞추기 위해 어떤 부분에서 하드코딩(hard coding)을 해야 할 수도 있습니다. 시장에 가능한 한 빨리 출시하기 위해서 '스스로 해결책을 찾아 나가는' 것입니다. 하지만 이런 상태로 소프트웨어가 시장에 출시되고 나면, 흔히들 '기술적 부채(technical debt)라고 부르는 현상이 발생하게 됩니다. 그런 경우에는 다시 초심으로 돌아가서 재평가를 해야 하며, 그렇게 해야만 커지는 요구 사항에 맞게 규모를 확장할 수 있습니다. 이러한 모든 것들이 전략적 비용의 카테고리에 포함되는 것입니다.
전략적 비용을 예측하는 것이 매우 중요한 이유는, 그것이 여러분에게 기회를 제공해 주기 때문입니다. 미리 계획을 한다면, 비즈니스 기회를 타이밍 좋게 잡을 수 있습니다.
> 이 글은 '5 Hidden Costs of Software You Need to Anticipate AFTER You Launch'을 각색하여 작성되었습니다.