실패는 성공의 어머니, 다음부터 잘 하면 된다는 마인드셋을 공유해 봅니다
내가 인하우스 IT 회사에서 프로젝트 매니저(PM)로 일하기 시작한 지 7년이 지났다. 그동안 여러 프로젝트를 성공적으로 이끌어왔지만, 하나의 프로젝트는 잊을 수 없는 실패로 남아 있다.
금융권에서 일하던 시절 함께 일했던 A회사는 처음 만났을 때부터 인상적이었다. 그들은 뛰어난 포트폴리오와 다양한 기술력을 갖춘 팀을 자랑하며, 여러 금융권 프로젝트를 성공적으로 수행한 경험을 강조했다. 나는 그들의 기술력에 깊은 인상을 받았고, 프로젝트가 순조롭게 진행될 것이라 믿었다. 하지만 첫 미팅 이후 나의 기대감은 점차 불안감으로 바뀌어갔다.
첫 번째 문제는 의사소통의 단절이었다. 미팅에서 개발사는 프로젝트 목표와 요구사항을 듣고자 했지만, 나의 설명이 불명확했는지 그들은 구체적인 질문을 하지 않았다. 이후 몇 주가 지나면서 개발사는 우리 팀이 원하는 방향과는 전혀 다른 기능을 개발하기 시작했다. 특히 금융권에서는 보안과 규정 준수가 매우 중요한 요소인데, 개발팀은 이러한 요구사항을 제대로 반영하지 못한 채 기본적인 구조만을 완성했다.
또한 요구사항에 대한 불일치로 인해 프로젝트는 지연되었다. 처음에 합의한 스케줄은 점점 미뤄졌고, 우리는 반복적인 수정 요청을 해야 했다. 특히, 고객의 요구가 변화할 때마다 그에 맞춰 빠르게 대응해야 했는데, 개발팀은 이러한 변화를 수용하는 데 느리기만 했다. 예를 들어, 새로운 보안 프로토콜이 추가되었을 때, 그들은 기존 시스템에 대한 이해가 부족해 변경 작업이 지연되었고, 이는 결국 전체 프로젝트 일정에 큰 차질을 주었다.
결국, 개발 품질 또한 저하되었다. 특정 기능이 예상보다 늦게 배포되면서 사용자 테스트 단계에서 많은 오류가 발견되었고, 이는 고객과의 신뢰를 잃는 계기가 되었다. 특히 금융업계에서는 작은 오류도 큰 손실로 이어질 수 있기 때문에, 이러한 상황은 우리 팀에 큰 부담으로 작용했다. 고객의 신뢰를 잃게 되면서 우리는 많은 시간을 들여 설명하고 사과해야 했고, 그 결과로 인해 여러 프로젝트의 진행이 차질을 빚었다.
이러한 경험은 나에게 외주 개발사와의 협업에서 의사소통과 요구사항 관리의 중요성을 깊이 깨닫게 했다. 기술력만으로는 성공적인 프로젝트를 보장할 수 없음을 뼈저리게 느꼈다.
이 프로젝트에서 갈등의 핵심 원인은 의사소통의 부족이었다. 외주 개발사와의 미팅은 항상 형식적이었고, 중요한 사항들이 제대로 전달되지 않았다. 당시 나는 요구사항을 명확하게 전달하지 못한 내 책임도 있었지만, 개발사 측에서도 고객의 목소리를 듣고 이해하려는 노력이 부족했다.
그때 깨달은 것은, 개발사 선택 시 기술력만큼이나 중요한 것이 바로 의사소통의 원활함이라는 점이다. 앞으로는 기술적 능력뿐만 아니라, 소통 방식과 의사결정 프로세스까지 확인해야겠다고 다짐했다.
그런 경험을 통해 얻은 교훈을 바탕으로, 일 잘하는 외주 개발사를 선택하기 위한 기준을 세우게 되었다. 다음은 내가 중요하게 여기는 몇 가지 기준이다.
외주 개발사를 선택할 때 가장 먼저 체크해야 할 요소 중 하나는 바로 기술력이다. 개발사는 단순히 코드만 작성하는 것이 아니라, 고객의 요구사항을 정확히 이해하고 그에 맞는 솔루션을 제공해야 하기 때문! 특히 IT 프로젝트는 복잡성과 다양성이 높기 때문에, 기술력이 뛰어난 개발사를 선택하는 것이 프로젝트의 성공에 결정적인 영향을 미친다고 봐도 무방하다.
개발사의 기술력을 판단하는 첫 단계는 포트폴리오를 분석하는 것이었다. 이전에 진행한 프로젝트의 종류와 성공 사례를 살펴보면, 해당 개발사가 어떤 분야에서 뛰어난 능력을 가지고 있는지 알 수 있었다. 특히 금융권과 같이 규제가 엄격한 분야에서의 경험은 매우 중요했다. 예를 들어, 이전에 금융 시스템이나 보안 솔루션을 개발한 경험이 있는 개발사는 해당 분야의 특성을 잘 이해하고 있었기 때문에, 보다 안정적이고 효율적인 솔루션을 제공할 수 있었다.
내가 금융권에서 일하고 있었기 때문에, 외주 개발사와 협업할 때는 반드시 금융권에서의 도매인 경험이 있는지를 체크하는 것이 중요했다. 금융업계는 보안과 규정 준수가 매우 중시되는 환경이었으므로, 이러한 경험이 있는 개발사는 프로젝트 진행 시 더 많은 이해와 노력을 기울일 것으로 기대할 수 있었다. 이는 고객의 신뢰를 쌓는 데에도 큰 도움이 되었다.
또한, 개발사가 사용하는 기술 스택도 반드시 확인해야한다. 최신 기술이나 프레임워크를 사용하고 있는지, 또는 특정 기술에 대한 전문성이 있는지를 검토해야한다. 특히, 클라우드 서비스, 데이터베이스, 보안 기술 등 다양한 기술이 융합되는 현대의 IT 환경에서는 이러한 요소가 더욱 중요하다. 사용 가능한 기술 스택이 다양할수록, 특정 문제에 대한 해결책을 보다 유연하게 제시할 수 있다고 생각한다.
정기적인 미팅과 피드백을 통해 의사소통의 단절을 방지할 수 있다. 개발사와의 초기 미팅에서 질문을 던져보고, 그들이 어떻게 소통하는지를 관찰해보자. 적극적으로 의견을 나누고, 문제 해결을 위한 방안을 함께 모색하는 태도가 중요하다.
이후 나는 새로운 외주 개발사를 찾기 위해 더욱 신중을 기했다. 여러 후보 중 한 개발사를 선택했을 때, 그들은 처음부터 내 요구사항을 면밀히 분석하고, 프로젝트 진행 중에도 지속적으로 소통하였다. 나는 그들과의 미팅에서 의사소통이 얼마나 중요한지를 다시 한번 느꼈고, 그들의 태도에 큰 신뢰를 가지게 되었다.
결과적으로 그 프로젝트는 성공적으로 완료되었고, 고객으로부터 긍정적인 피드백을 받았다. 그 경험 덕분에 외주 개발사를 선택할 때 고려해야 할 요소들을 명확히 이해하게 되었고, 더 나아가 고객의 기대를 초과 달성하는 데도 기여할 수 있었다.
금융권에서 일할 때 겪은 나의 한 번의 실패가 나에게 가장 중요한 교훈을 주었다. 외주 개발사를 선택할 때는 기술력뿐만 아니라 의사소통, 포트폴리오, 고객 리뷰 등 다양한 요소를 고려해야 한다는 점을 깨달았다. 그 기술력은 물론, 원활한 의사소통과 고객 중심의 서비스로 많은 프로젝트에서 뛰어난 성과를 보여주었다. 내가 최우선으로 생각하는 일 잘하는 개발사인 똑똑한개발자를 추천하며 글을 마무리한다.
여러분도 나처럼 성공적인 프로젝트를 위해 올바른 개발사를 선택하는 데 이 글이 도움이 되길 바란다.