회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
대한민국 대표 IT프로젝트 플랫폼, 위시켓
본문은 위시켓과 번역가 전리오가 함께 만든 해외 콘텐츠 기반 번역문입니다. 폴란드의 맞춤형 소프트웨어 개발 회사인 ‘Angry Nerds’의 블로그 글을 번역했습니다. 작가는 미상으로 아마도 회사 직원일 것으로 추정됩니다. 본문은 아웃소싱에 관련된 오해에 대한 내용으로 그것이 왜 오해인지, 실제론 어떻게 진행되는지 함께 살펴볼 수 있겠습니다.
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면
성장에 도움이 되는 콘텐츠를
스크랩할 수 있어요!
확인
본문은 위시켓과 번역가 전리오가 함께 만든 해외 콘텐츠 기반 번역문입니다. 폴란드의 맞춤형 소프트웨어 개발 회사인 ‘Angry Nerds’의 블로그 글을 번역했습니다. 작가는 미상으로 아마도 회사 직원일 것으로 추정됩니다. 본문은 아웃소싱에 관련된 오해에 대한 내용으로 그것이 왜 오해인지, 실제론 어떻게 진행되는지 함께 살펴볼 수 있겠습니다.
어떤 새로운 현상이 유행하기 시작하면, 그에 대한 잘못된 인식들도 언제나 함께 따라다니곤 합니다. 그렇기 때문에 아웃소싱(outsourcing), 오프쇼링(offshoring)[1], 니어쇼링(nearshoring)[2]등에 대해서 여러 가지 잘못된 오해들이 생겨나는 것도 그다지 놀라운 일은 아닙니다. 오늘은 우리가 그런 개념들에 대해서 얼마나 제대로 알고 있는지 본격적으로 알아보겠습니다.
아웃소싱과 관련해서 오해를 풀어야 할 생각들은 대략 11개 정도가 있는 것 같습니다.
오해 1: 아웃소싱을 하면 통제가 어렵게 된다. (프로젝트 관리의 문제)
오해 2: 아웃소싱은 지나치게 복잡하다.
오해 3: 아웃소싱은 대기업들만 할 수 있다.
오해 4: 아웃소싱은 퀄리티가 낮다.
오해 5: 아웃소싱은 장기적인 솔루션이 아니다.
오해 6: 아웃소싱을 하면 비용이 많이 든다.
오해 7: 아웃소싱을 하면 상당히 많은 문제가 생긴다. (문화, 시차, 언어, 이해도)
오해 8: 아웃소싱을 하는 이유는 오직 비용절감 때문이다.
오해 9: 아웃소싱을 하면 시간이 오래 걸린다.
오해 10: 아웃소싱은 큰 그림을 그리는데 방해가 된다.
오해 11: 아웃소싱은 끝났다.
다들 안전벨트를 단단히 착용해주시기 바랍니다. 이제부터 본격적으로 이런 오해들을 전부 파헤쳐보겠습니다.
아웃소싱과 관련하여 가장 흔하게 펴져 있는 오해 가운데 하나는, 만약 소프트웨어 개발 프로젝트를 아웃소싱 하면 프로젝트의 관리는 물론이고 조직의 운영에 대한 통제권까지도 모두 잃게 된다는 것입니다. 그러나 이건 사실과는 아주 거리가 멉니다. 아웃소싱은 기존 업무에 있어 부담되는 일부를 외부에 넘기는 것이기 때문에, 오히려 프로젝트를 효과적으로 관리하는데 도움이 될 수 있습니다. 만약 뛰어난 소프트웨어 개발 업체를 제대로 선정하기만 한다면, 여러분에게 익숙한 프로젝트 관리 규칙과 기존의 시스템을 그들에게도 적용할 수 있습니다.
따라서 통제력을 잃는 것이 아니라 오히려 확보하는 것이라고 할 수 있습니다. 그리고 여러분은 회사 본연의 경영이나 전략과 관련한 업무에 더욱 노력을 기울일 수 있고, 그 나머지의 업무는 아웃소싱 업체가 처리하게 만들 수 있습니다. 아웃소싱은 손실이 아니라, 최적화를 위한 선택인 것입니다.
소프트웨어 개발은 상당히 복잡하기 때문에, 그중에서도 중요한 역할을 하는 아웃소싱 기법 역시 고도의 프로세스로 여겨지는 경우가 많습니다. 그러나 양측에서 잘 대비만 한다면, 골치 아픈 상황은 발생하지 않습니다. 아웃소싱을 하려는 클라이언트 기업은 먼저 제안요청서(RFP)를 만들고, 그것을 미리 후보로 선정해 둔 소프트웨어 개발 업체들에게 배포해야 합니다. 제안요청서에는 여러분이 원하는 목표, 요구사항, 리소스 등을 명확히 밝혀 두어야만, 아웃소싱 업무가 개시된 첫날부터 곧바로 협업을 시작할 수 있습니다.
아웃소싱 업무를 수행하는 소프트웨어 개발 업체는 요청받은 프로세스를 지속적으로 수행하면서 워크플로우(workflow)를 최적화해야 합니다. 기업들이 자사의 프로젝트를 아웃소싱 하기로 결정하는 이유는 업무를 좀 더 쉽게 처리하기 위한 것이지, 예전보다 상황을 더욱 복잡하게 하려는 것이 아닙니다. 만약에 프로젝트가 더욱 번거로워지고 많은 골칫거리들이 생긴다면, 애초부터 다른 소프트웨어 개발 업체의 도움을 받지 않았을 것입니다.
이에 대한 오해 역시 지금 당장 여기에서 풀어야 합니다. 거대한 조직을 운영하고 있어야만 아웃소싱의 혜택을 누릴 수 있는 것은 아닙니다. 아웃소싱이라는 것은 더 이상 대기업들만의 전유물이 아니며, 요즘에는 아주 작은 프로젝트라도 얼마든지 아웃소싱을 할 수 있습니다. 실제로 많은 기업들이 아웃소싱을 사내 소프트웨어 개발 업무의 연장으로 활용하고 있으며, 이는 프로젝트의 규모를 키우는 데에도 도움이 됩니다. 그렇기 때문에 특정 유형의 기업들만 아웃소싱의 혜택을 누릴 수 있는 것은 아닙니다.
또한, 요즘에는 중소기업들도 자신들의 워크플로우를 간소화하는 것은 물론이고, 확장과 성장을 위한 전략으로 적극적으로 활용하면서, 아웃소싱은 점점 더 보편화된 방식이 되고 있습니다. 이렇듯 요즘에는 아웃소싱의 중요성이 대기업에게만 해당되는 것은 아닙니다.
어떤 사람들은 아웃소싱의 결과물이 퀄리티가 낮다고 생각하지만, 이것은 사실과 전혀 다릅니다. 물론 프로젝트에 관계없이 퀄리티가 낮은 결과물을 내놓는 업체들도 있습니다. 그러나 일부가 그렇다고 해서 모든 아웃소싱 업체들을 한꺼번에 묶어서 매도하는 것은 바람직하지 않습니다. 오히려 아웃소싱의 퀄리티가 기대 이상으로 뛰어난 경우도 많기 때문입니다. 일부 기업들은 잠재적인 비용, 문화적인 차이, 퀄리티 개선에 대한 불확실함 등을 이유로 아웃소싱을 주저하기도 합니다. 그러나 실제로는 기업들이 사내에서 직접 업무를 처리하는 것보다는 아웃소싱을 하는 것이 훨씬 저렴하고 혜택도 많은 것이 사실입니다. 그전에 물론, 후보로 생각하고 있는 소프트웨어 개발 업체에 대한 철저한 조사와 평가가 이루어져야 합니다.
업체를 선정하기 전에, 먼저 그들에 대한 시장에서의 평가, 관련한 참고사항, 프로젝트 경력, 보유한 역량 등을 확인해야 합니다. 어느 정도의 시간을 들여서라도 철저히 조사를 해두면 이후에 혹시라도 발생할 수 있는 시간과 비용의 낭비를 줄일 수 있습니다. 그리고 여러분이 원하는 프로젝트에 가장 적합한 업체를 선정하는 데 있어서도 도움이 됩니다.
많은 사람들이 아웃소싱은 규모가 작은 일부의 프로젝트에서만 가능한 것이며, 그 자체로 하나의 완성된 프로젝트가 될 수 없고, 그렇게 되어서도 안 된다고 생각합니다. 그러나 아웃소싱을 통한 성공 사례들이 많아지면서, 이런 인식들도 상당히 많이 바뀌었습니다. 상당수의 기업들이 처음에는 한 두 개의 프로젝트에서만 시험적으로 아웃소싱을 시도했다가, 그 결과에 상당히 놀라는 경우가 많습니다. 그래서 여러 프로젝트를 거치며 신뢰 관계를 구축한 업체들과는 좀 더 다양한 프로젝트에서 장기적인 업무 협약을 맺기도 합니다. 그래서 때로는 아웃소싱 소프트웨어 개발 업체들이 사실상의 사내 개발부서처럼 역할을 하는 경우도 있으며, 다른 대행업체나 개발자들과 시너지 효과를 발휘하는 모습도 많이 볼 수 있습니다.
거의 대부분의 경우, 절대 그렇지 않습니다. 물론 만약에 동유럽 국가의 기업이 미국으로 아웃소싱을 한다면 그 비용이 걱정될 것입니다. 왜냐하면 미국에서 스칼라(Scala) 언어[3] 개발자의 평균 연봉은 15만 달러(약 1억 7000만 원)에 달하기 때문입니다![4]그러나 그 반대로 만약에 미국 기업이 동유럽으로 아웃소싱을 한다면 상당히 많은 비용을 절감할 수 있습니다. 경우에 따라서는 사내에서 프로젝트를 진행하거나 조직에 새로운 인력을 충원하는 것보다 최대 10배까지 아낄 수도 있습니다.
그리고 개발자를 직접 채용하는 경우에는 그에 따르는 인건비와 부대비용까지도 고려해야만 합니다. 기본적인 급여 외에도, 각종 보험, 사내 복지, 유급 휴가, 그리고 보너스까지도 신경을 써야 합니다. 여기에 더해서 만약에 직원이 갑자기 그만뒀는데 인수인계를 할 사람이 없다면, 엄청난 골칫거리가 발생할 수 있습니다.
이런 오해에 대해서도 다시 한번 생각해봐야 합니다. 지금까지는 주로 비용적인 측면에서만 살펴봤지만, 그 외에 다른 문제들도 있다는 점을 알아둘 필요가 있습니다. 한편에서는 프로젝트에 투입되는 비용을 줄일 수 있지만, 다른 한편에서는 서로 다른 시간대, 언어의 장벽, 프로젝트에 대한 이해도, 문화적인 차이 등으로 인해서 프로젝트가 차질을 빚을 수도 있습니다.
그러나 이런 문제들이 전혀 문제가 되지 않는 지역들도 있습니다. 소프트웨어 개발 프로젝트를 중부 유럽이나 동유럽 국가들로 아웃소싱을 한다면, 유창한 영어로 의사소통을 할 수 있고, 시차가 적어서 편리하며[5], 업무에 임하는 태도가 적극적이고, 보유한 역량의 수준도 매우 높은 편입니다. 그렇다고 아웃소싱이 언제나 무지개와 꽃들로 가득한 길이라고 말하려는 건 아닙니다. 분명히 문제는 발생할 수 있습니다. 그러나 협업할 업체에 대해서 사전에 철저한 조사를 진행하고, 여러분의 요구사항과 업무 스타일 등을 충분히 이해하고 있는 파트너를 선정한다면 그런 문제들은 상당 부분 없앨 수 있습니다.
많은 기업들이 아웃소싱을 하는 이유가 오직 많은 비용을 절감할 수 있기 때문이라고 생각하는 것 역시 잘못된 편견입니다. 단순한 비용적인 측면 외에도, 기업들은 소프트웨어 개발을 아웃소싱 함으로써 혹시라도 마주할 수 있는 수많은 문제들을 해결할 수 있습니다. 예산 절감이 물론 공통적인 목적의 하나이기는 하지만, 그렇다고 해서 유일한 이유는 아닙니다! 아웃소싱은 개발 프로세스를 더욱 원활하게 하고, 작업의 흐름에서 잠재적인 병목 현상을 일으킬 수 있는 요소를 제거하며, 일정이나 리소스가 한정된 상황에서도 해결책을 제시해줄 수 있습니다. 그리고 자체적인 인력을 충원해서 교육하는 것보다는 아웃소싱을 하는 것이 많은 측면에서 훨씬 더 이득이 되는 것도 사실입니다.
물론 그럴 수도 있습니다. 아웃소싱에 대한 경험이 없는 신뢰할 수 없는 회사나 여러분이 원하는 프로젝트와 관련한 실적이 없는 업체를 선정한다면 말입니다. 그리고 (관리상의 문제로 인해서) 프로젝트가 시작부터 잘못된 길로 빠진다면, 일정이 늦어지는 것은 당연한 것입니다. 그러나 제대로 된 소프트웨어 개발 업체에게 아웃소싱을 맡긴다면 훨씬 체계적이며 효율적인 방식으로 프로세스가 진행될 수 있습니다. 즉, 프로젝트가 지연될 위험이 적을 뿐만 아니라, 사내에서 직접 수행하는 것보다 그럴 가능성도 더욱 줄어듭니다.
이것 역시 오해인데, 아웃소싱을 많이 하면 기업의 비전이 모호해지고 비즈니스의 전망을 흐리게 만들어서 결국엔 회사의 평판에 좋지 않다는 것입니다. 그러나 아웃소싱을 “뻐꾸기의 둥지(cuckoo’s nest)”로 생각해서는 안 됩니다.[6] 즉, 괜히 아웃소싱을 했다가 조직의 근간을 흔들고, 기업의 문화만 혼란스러워지는 것 아니냐는 것입니다. 그렇다고 물론 아웃소싱이 모든 문제를 해결해주는 마법의 지팡이도 아닙니다. 오히려아웃소싱은 기존의 자원을 더욱 집중해서 효율적으로 활용하고, 막혀 있던 프로세스는 원활하게 흐르도록 해결해주는 방안이라고 할 수 있습니다. 실제로, 아웃소싱을 하면 기업의 비전을 더욱 명확히 파악하는 데 도움이 되기 때문에, 조직이 가진 역량을 더욱 집중해서 발휘할 수 있는 기회로 활용할 수 있습니다.
그렇게 생각할 수도 있지만, 실제로는 그렇지 않습니다. 아웃소싱은 현재 소프트웨어 개발 분야에서 가장 많이 사용되는 방식들 가운데 하나입니다. 조직 내부에서 수많은 프로젝트와 문제들이 넘쳐나지만, 자체적인 인력으로는 그 모든 것을 해결할 수 없는 많은 기업들이 외부에서 도움을 구하고 있는 것입니다. “아웃소싱”이라는 표현이 비교적 새로운 것일 뿐, 이런 방식은 상당히 오래전부터 활용되어 왔습니다.
지금까지 소프트웨어 개발의 아웃소싱에 대해서 흔히들 갖고 있는 몇 가지의 잘못된 생각들에 대해서 살펴봤습니다. 이를 통해서 여러분이 갖고 있던 혹시 모를 편견들이 풀렸기를 바랍니다. 아무튼 여전히 많은 사람들이 그저 오해에 불과한 이런 생각들을 갖고 있다는 것이 저희로서는 수수께끼입니다.
[1] 조직의 특정한 업무를 해외(offshore)에 위탁해서 운영하는 아웃소싱 방식
[2] 가까운(near) 외국에 조직의 업무를 오프쇼링(offshoring)하는 것
[3] 객체지향 프로그래밍(object-oriented programming, OOP)과 함수형 프로그래밍(functional programming) 방식을 모두 지원하는 범용 프로그래밍 언어
[4] https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved
[5] 국제 표준시(UTC) 기준으로 실리콘밸리가 위치한 미국 서부의 표준 시간대(PST)는 -8:00, 여름철에는 일광절약시간(서머타임)인 PDT가 적용되어 -7:00입니다. 그리고 아웃소싱을 많이 하는 국가인 인도의 표준 시간대(IST)는 +5:30, 동유럽의 표준 시간대(EET)는 +2:00입니다. 따라서 실리콘밸리와 인도의 시차는 여름철에는 12시간30분으로 밤낮이 거의 정반대이지만, 동유럽과의 시차는 9시간이기 때문에 스케줄만 잘 맞추면 업무시간에 실시간으로 회의를 할 수도 있습니다.
[6] 뻐꾸기는 스스로 새끼를 기르지 않고 다른 조류의 둥지에 몰래 자신의 알을 낳아서 그 새가 알을 기르게 합니다. 이런 방식을 탁란(托卵)이라고 합니다.