흔희 '간극(間隙)'이란 쉽게 넘어설 수 없거나, 좁혀지기 힘든 사이의 틈을 두고 이야기하는 경우가 많다. 사전적 의미보단 휠씬 강하게 쓰이는 단어이다.
이러한 의미를 두고 개발자와 사용자(end user)의 사이를 두고 간극이란 단어를 사용하는 것은 상당히 부정적의미를 강하게 보이는 것이 사실이다. 하지만 궁극적으로 이야기하고 싶은 것은 개발자들의 마음가짐에 따라서 어렵지 않게 사용자와의 사이를 좁힐 수 있다는 것을 역설해 보고 싶은 것이다.
개발자라면 누구나 동의하는 사실 한 가지가 있다. 그것은 개발자의 독특한 성향 중에 하나인데 개발자들 대부분은 자부심+자존심이 무척 강하다는 사실이다. 이러한 성향이 긍정적인 면으로 나타날 때는 전혀 문제가 되지 않는데 반해 만약 부정적인 성향으로 치닫게 될 때는 협업으로 이루어져야 할 다양한 프로젝트에 최종 사용자에게 보이기도 전에 기획, 마케팅 담당자들과 불화를 일으키기도 한다.
정확하게 이러한 주제와는 조금 다른 면이 있지만 약간은 관계가 있는 컬럼이 있어서 소개해 보는 것을 한다.
컬럼의 중간 부분에 '좁은 시야'를 가진 일부 개발자들의 모습을 잠시 엿볼 수 있다.
또한 이러한 개발자들의 독특한 성향은 end user라고 이야기할 수 있는 고객 또는 일반 사용자들에게 쉽게 다가가는 것을 힘들게 만든다. 예를들면 하나의 프로젝트 시작 시점에 클라이언트의 요구사항을 정확하게 파악하지 못하는 것에서부터 시작해서 일반 사용자를 대상으로 할 때는 정확하게 사용자의 요구사항을 파악하지 못하거나 서비스적인 면에서 사용자의 욕구를 충족시켜주지 못해서 그냥 넘겨버리는 경우가 다반사이다.
사실 필자 역시 이런 면을 전혀 가지고 있지 않다고 이야기하기 힘들다. 대부분의 개발자들이 이러한 성향을 지적하게 되면 다음과 같은 어쩔 수 없는 상황을 제시하면서 나름대로의 자기 대변을 내세운다. 비단 필자도 마찬가지였다.
기획/마케팅 담당자들의 정확한 요구사항이 주어지지 않았다.
현재 진행하고 있는 업무의 과중으로 인한 고객의 소리에 귀기울일 시간이 없다.
조금 불편해도 이렇게 사용하면 되는데 왜 꼭 저렇게 해 달라는 거야? 하고 혼자서 불평한다.
중요한 사유중 하나는 기술적으로 내가 해결하기 힘든 것도 있다. 따라서 이러한 것은 최대한 그냥 넘어가려 한다.
요즘 이슈가 많이 되는 정상적인 인간다운 생활을 하기 위해서는(예를들면, 정시퇴근등) 모든 고객을 만족시킬 수는 없다.
대충 생각나는 것만 서술해봐도 제법 많은 주장을 충분히 펼칠 수 있다. 무엇보다 나 자신이 개발자이기 때문에 개발자들의 심리나 생각을 잘 반영하고 있는지도 모른다.
그렇다면 지금까지 모든 IT 기업뿐만 아니라 성공한 기업들의 업무 담당자는 어땠을까? 여기선 개발자를 대상으로 하니 성공한 IT 기업의 개발자들에게 위와 같은 상황이 전혀 존재하지 않았을까? 아마 결코 그렇치는 않을 것이다. 좋은 프로젝트 또는 서비스의 결과를 얻기 위해서 기획, 개발, 마케팅, 홍보에 이르기까지 모든 과정이 선순환을 거쳐야 한다는 것은 누구나 알고 있다. 그리고 이 모든 과정은 사람이 그 일을 맡고 있다. 따라서 위에서 이야기한 문제들이 한 가지도 발생하지 않으면서 성공한 사례는 아마도 이 세상에서 찾아보긴 힘들 것이다.
그렇다면 필자 역시 협업에 종사하는 동등한 입장에서 개발자로서 어떤 심리적 변화로 인해 이러한 일을 고민하게 되었을까? 사실은 이전부터 이러한 주제와 관련하여 고민을 해 왔지만 뾰족한 묘안이 없었던 것이 사실이다. 그런데 최근 마케팅/기획 업무를 병행하면서 느낀 점은 '기술이 곧 사람'이라는 것과 '개발자의 의지(마음가짐)에 따른 태도의 변화'라는 것이다.
이 글에서는 '기술이 곧 사람'이라는 주제는 다루지 않을 것이다. 여기서는 '개발자의 의지'에 대한 스스로의 태도에 대한 글이라고 할 수 있다. 즉, 위에서 언급한 다양한 문제들을 한 마디로 압축한다면 '개발자와 사용자의 간극'이라고 생각한다. 다시 풀어서 말하지면 개발자의 다양한 상황과 업무로 인해 정작 중요한 사용자의 요구사항은 뒷전인 채로 진행되는 대부분의 프로젝트와 서비스에 대한 쓴소리였으면 하는 바램인 것이다.
서비스의 가장 중요한 첫째 조건은 올바른 고객의 요구사항의 파악이다. 즉 이론에서 배운 것처럼 설계이전에 정확한 고객의 요구사항의 파악은 필수조건이 된다. 장황하게 프로젝트 진행에 대한 전부를 언급하는 것은 주제를 벗어날 수 도 있음으로 서비스의 성공의 첫째 조건이 정확한 고객의 요구사항을 파악하는 것이라고만 해 두자.
다른 모든 조건을 뒤로한 채 '고객의 요구사항'에 대해서 언급하는 것은 이 글의 주제가 '개발자와 사용자의 간극'에 있기 때문이다.
이야기를 하고 싶은 것은 성공적인 프로젝트 또는 서비스의 첫째 조건을 만족시키기 위해서는 기획/마케팅을 담당한 사람들뿐만 아니라 개발자의 마음가짐도 중요하다는 것이다. 고객의 요구사항에 대한 정확한 이해와 개발과 시스템을 통한 솔루션을 제공해 줄수 있어야 하는 것이 개발자의 몫이다. 때문에 개발자들은 프로젝트와 서비스 개발에 임하는 태도를 적극적인 자세가 일차적으로는 반드시 필요하다. 필자는 이를 '의지'라고 표현하는데 바로 성공에 대한 의지이다. 반드시 자신이 임하는 프로젝트와 서비스 개발을 성공시키겠다는 굳은 의지는 개발에 임하는 개발자 스스로의 마음가짐을 달리해 준다. 아마 본인이 좋아하거나 즐기는 일에 임했을 때의 마음가짐을 생각해 보면 알 수 있으리라.
둘째는 고객의 요구사항에 대한 포용적인 자세와 임기응변의 능력이라고 생각한다. 기본적으로는 고객의 요구사항에 대한 포용적인 자세는 문제 해결의 어려움이 있을지라도 다양한 경로를 통해서 해결할 수도 있다는 것을 깨닫게 해 주는 경우가 많다. 즉 자신의 업무에 대한 좁은 소견으로 인해 알지 못하는 분야나 전문지식을 통해서 알 수 있게 되는 경우이다. 실제로 업무를 통해서 겪어본 사람은 쉽게 이해하리라 생각된다.
그럼에도 불구하고 당장 또는 짧은 시간안에 고객의 요구사항을 만족시켜 주기가 힘든 상황이 반드시 존재한다. 여러가지 사유로 인해.... 그럴 때는 필요한 것이 임기응변의 자세이다. 의외로 임기응변은 실제 업무에서 프로젝트 기간의 연장이나 해당 요구사항을 적절히 무마시키거나 다른 방향을 제시함으로 인해 더 나은 솔루션을 제공하게 되는 것이다. 즉 적절하게 고객의 요구사항에 대응함으로서 성공적인 프로젝트를 만들 수도 있다.
짧은 내용이지만 위와 같은 마음가짐과 태도의 변화가 한 팀이나 하나의 프로젝트를 진행하는 협업 시스템 내에 적절하게 이루어진다면 반드시 성공적인 결과를 끝나지는 못해도 소속 인원 한 명 한 명이 해당 프로젝트를 통해서 많은 것을 서로에게 배울 수 있으리라 생각된다. 그러기에는 모두에게 이러한 마음가짐과 태도에 대한 이해와 공유를 통한 공감이 형성되어야 하는데 이는 또 다른 숙제일 것이다. 지금의 나에게도 이건 숙제이다.
끝으로 마음 한 구석으로 간절히 바라기는 개발자와 사용자의 간격이 요구사항과 이에 대한 솔루션의 적절한 제시로 인해 WIN-WIN하는 아름다운 관계로 되길 바란다. 그렇다면 개발자와 사용자와의 간극은 존재하지 않아도 되는 것이 아닐까? 서로에게 도움이 되니깐.
필자의 소견이 스스로에게 그리고 이 글을 읽는 모든 개발자들에게 작은 보탬이 되었으면 좋겠다.
댓글 없음:
댓글 쓰기