2020년 5월 29일 금요일

명의 편작도 못 고치는 소프트웨어 회사의 6가지 불치병

500년의 중국 춘추전국시대에는 혼란스러운 시기이면서 제자백가를 비롯해서 영웅들도 많이 탄생했다. 중국에서 가장 병을 잘 고치는 명의인 편작도 그 중의 한 명이었는데 세상에 어떤 병이라도 그 병을 제대로 아는 의사를 불러 조기에 치료하게 한다면 병을 고칠 수 있다고 했다. 반대로 아무리 훌륭한 명의라도 도저히 고칠 수 없는 아래의 “6가지 불치병이 있다고 하였다.

첫 째. 환자가 교만, 방자하여 자신의 병은 자신이 안다고 주장하는 환자이다. 모든 병에는 원리가 있어 그 원리에 따라 치료해야 하는데, 자신의 주관적인 판단으로 의사의 진료와 처방을 따르지 않는 사람은 치료가 불가능하다.

둘 째, 재물이 아까워 자기 자신의 몸보다 우선시하여 치료하지 못하는 사람이다. 재물을 중시하여 몸을 혹사하거나 함부로 부리는 것이 불치병이라는 것이다. 건강을 잃으면 모든 것을 잃는 것임을 알아야 한다. 
 
셋 째먹고 입는 것에 적절함을 잃으면 건강의 균형이 깨어진다. 옷은 추위를 견딜 정도면 적당하고, 음식은 배고픔을 채울 정도면 적당하다. 음식을 탐하고 편안한 것만을 추구하는 습관을 가진 사람은 어떤 명의라도 고칠 수 없다.
 
넷 째, 음양의 평형이 깨어져 기가 불안정한 사람이다. 음양이 장기를 장악하여 혈맥의 소통이 단절되면 기가 불안정하게 되어 되돌릴 수 없는 상태로 진행하게 된다. 기력이 인간의 몸의 기간이 되는 것이므로 늘 일정하게 유지되야 한다. 
 
다섯 째, 어떤 명약이라도 그 약을 받아들일 만한 기초 체력이 없으면 고치기 힘든 병이 된다. 걸을 수 있고 약 먹을 힘만 있어도 살 수 있다. 

여섯 째, 무당의 말을 신뢰하고 의사를 믿지 못하는 것이다.

소프트웨어를 잘 개발하기 위한 깨달음을 얻기 위해 실리콘밸리까지도 갈 필요도 없다. 2,500년 전으로 돌아가서 편작도 잘 알고 있었고 소크라테스도 다 알고 있었다. 진리의 보편성이자 수렴성이다. 하나의 진리를 깨달으면 모든 진리를 깨닫는다. 그럼 편작이 말한 소프트웨어 회사의 여섯가지 불치병에 대해 분석해 보자.

첫 째의 교만이다.
필자가 컨설팅이 불가능한 회사를 꼽는 첫 째가 "나도 다 안다" 는 회사이다. 인간은 자기가 아는 한도 내에서는 모든 것을 다 안다고 착각한다. 바로 “I know what I know”의 현상이다. 이런 자만감을 깨뜨려주는 좋은 운동이 필자가 가장 좋아하는 태극권이다.  태극권은 10년을 해도 '이제 조금 할 줄 아는군요' 라는 말을 듣는다. 오묘하다고 밖에 표현할 수 없는데 수련하면 할 수록 내가 모자라는 것이 점점 더 많아진다는 것을 깨닫게 된다. 미래에도 계속 그럴 것이라는 결론을 쉽게 내릴 수 있다. 필자가 즐기는 바둑, 골프, 당구도 그렇다. 그러니 몇 년 수련했다고 잘난 척 할 수 없게 만드는 것이 이런 것들이다. 필자가 소프트웨어에서 경험이 30년이 이상이 되었지만 실리콘밸리에서의 과거 경험 때문에 내가 안다는 자만감을 가질 수가 없다. 너무 뛰어난 개발자도 많았고 서로 배우는 즐거움을 회상해 보면 항상 내가 모르는 것이 많다는 생각을 없앨 수가 없다. 한번 해 본 것을 깨달았다고 착각한다면 우주의 탄생도 깨달을 수 있다는 격언도 있다. 5, 10년 경험한 개발자들이 마치 모든 것을 깨달은 것처럼 확신을 하고 얘기할 때는 가르치는 것이 불가능하다.

둘 째의 재물을 몸보다 중요시하는 경우이다.
눈 앞의 재물에 눈이 멀어 매출을 올리겠다고 잡화상처럼 이것 저것 고객이 원하는 것을 다 만들어 주는 것이 국내회사의 성향이다. 분식집의 메뉴를 세어보니 100개가 넘는다. 이런 분식집 전략으로 당장 생존하기 위한 노력은 이해하지만 성장이 불가능한 극약 처방의 모델이다. 오랫동안 생존하기를 원한다면 단기적인 재물의 손실은 감안하고 장기적인 혜택을 중요시 해야 한다. 소프트웨어 회사의 이런 앵벌이 방식이 오래되면 나중에는 벗어나올 수 없다.

셋 째의 음식과 옷의 편안함만을 추구하는 경우이다.
만시간의 노력은 하기 싫고 편안한 비법을 찾는 경우이다. 수 많은 비법에 현혹된다. 방법론, 프로세스, 프로젝트관리등 도구 만능주의이다.  다이어트 한다고 먹을 것 다 먹고 운동은 안하면서 약으로 해결하려는 것과  같다. 아무리 돈이 많은 재벌도 땀흘려서 운동을 해야 건강을 유지할 수 있다. 편하게 해서 성공할 수 있는 것은 범죄의 경계선을 넘어가기 전에는 이 세상에 없다. 범죄에 가까우면 가까울수록 돈은 많이 번다. 소프트웨어에서도 진짜 중요한 분석이나 설계 기술은 일이년에 잘 할 수 있는 것이 아니다. 10, 20년을 배워가면서 서서히 향상되는 것이다. 애자일, 프로젝트관리, 프로세스 같은 획기적인 도구나 비법을 주장한다면 100% 사기니까 믿지 말기 바란다. 이미 소프트웨어 역사에서 수십년간 되풀이 되는 메뉴에 불과하다. 실제 필자가 근무했었던 실리콘밸리의 글로벌 회사를 보면 회사의 역량은 다른 곳에 있다.

넷 째의 평형이 깨진 주화입마의 상태인 회사이다.
무술(특히 내가권), 동양의학, 또는 종교에서 많이 인용되는 ()는 영어로는’ Internal Energy’,’Natual Energy’ 혹은 ‘Vital Energy’등으로 번역되는데 경험으로 느끼기 전에는 실체를 알 수 없는 추상적인 것이다. ‘주화입마는 몸 속의 기를 잘못 운용하여 맥을 타고 온 몸을 돌아야 할 기가 어느 한 곳에 뭉쳐서 순환되지 않는 부작용인데 불구가 될 수도 있다. 즉 생명을 위협하는 극단적인 불균형상태를 말한다. 믿거나 말거나 이지만 소프트웨어에서도 상징적인 비교는 가능하다. 소프트웨어 회사도 프로세스와 같이 어떤 것을 무리하게 추진하게 되면 한 곳이 막혀 전체가 망가지는 불구가 될 수 있다. 그런 무서운 주화입마는 조금 할 줄 안다는 자만심의 상황에서 생기지 초보 회사에게는 생기지 않는다는 다행스러운 점이 있다.

소프트웨어 회사에서 기가 잘 순환되는 평형상태는 소프트웨어 기반시스템, 기술, 조직, 프로세스, 문화가 조화롭게 이루어진 상태이다. 아래 세 그림에서 비교해 보자.


첫 번째 그림이 평형이 잘 이루어진 완벽한 상태이다. 언제든지 폭발적인 에너지가 나올수 있는 준비된 상태이다. 글로벌 회사에서는 오랜 역사를 거치면서 이런 조화로운 능력을 갖추고 있다. 그런 상태에서 준비된 힘을 언제 어디에 쓸 것인가를 결정하는 것은 제품기획팀의 역할이다.

두번째 그림과 세번째 그림이 국내 소프트웨어 회사들에서 가장 많이 보이는 유형인데 이런 상태에서는 힘을 낼 수가 없다. 평형이 되어 있지 않기 때문에 힘을 내려고 하면 뭔가 삐끗하는 부분이 있다. 그런데도 억지로 힘을 내려다가 망치는 경우가 바로 주화입마인 것이다. 열심히 하면 할수록 주화입마에 깊이 빠지므로 조심해야 한다. 성장하기 위해 잘못된 개혁을 시도할 때에 문제가 생긴다. 주화입마는 열심히 하는 중상급자들에게 많이 발생하는 문제이다. 제대로 하면 최고가 될 수도 있고 잘못하면 몸을 망칠 수도 있는 기로에서 스승없이 자신의 능력을 과신하고 무모하게 시도하다가 망가진 경우이다.

이미 고객도 어느 정도 있고 빠르게 성장하는 회사가 뭔가 해보려고 할 때가 주화입마에 빠지기 좋은 경우이다. 주화입마에 드는 대표적인 예를 몇 개만 들어보자.

l  어설픈 선진 개발방법론 흉내내기
l  역량을 넘어선 과도한 프로세스
l  문서도 만들지 않으면서 대규모 개발하기
l  미래를 보지 못하는 상태에서 아키텍처 흉내내기
l  일정에 쫓겨 급하게 하는 지저분한 코딩

능력이상으로 무리하게 추진하다가는 지금 잘하고 있는 것도 망칠 수가 있다. 그리고 회복하는 데 많은 비용이 든다. 갑자기 제품 출시가 중단되기도 한다. 회사에서의 시행착오는 시장에 제시간에 응답하지 못하는 기회비용의 손실이라는 점에서 주화입마는 막대한 손실이다. 무술세계나 소프트웨어 세계나 주화입마에 빠지지 않으려면 항상 옆에 자기 실력을 정확히 아는 스승의 가르침 아래 조화롭게 성장해 나가야 한다. 무협영화에서 주화입마에 빠진 제자를 위해 스승이 기를 불어 넣어주어 회복시키는 장면을 많이 보았을 것이다. 혼자서는 영원히 불구가 될 위험이 너무 많다.

다섯 째가 체력이 다 소진된 경우이다.
의사로써 치료의 가능성이 없는 환자를 보는 심정은 안타까울 것이다. 필자도 컨설팅하다가 안타깝게도 이런 회사를 많이 보았다. 주화입마 처럼 조화가 망가진 상태를 넘어서 모든 것이 붕괴되기 직전인 상태이다. 이것 저것 잘못된 시도를 많이 하다가 모든 것이 소진된 상태라 더 이상 해볼 수 있는 상태이다. 돈도 떨어지고, 사람과 조직도 모두 다 망가졌다. 시간 문제일뿐 사라지고 만다. 이 상태가 되면 운명을 받아들이고 가라앉는 배에서 빨리 탈출하는 것이 좋다. 이렇게 되기 전에 미리 의사에게 가서 조치를 취하는 것이 유일한 방법이다.

여섯 째가 무당의 말에 빠진 경우이다.
의사와 무당을 구별하기가 쉽지는 않다. 건강식품과 같이 수 많은 무당이 소프트웨어 업체에도 판 친다. 달콤한 유혹, 편안한 방법, 획기적인 결과, 선진 방법론, 그럴듯한 이론 등이 그들이 사용하는 전략이다. 이런 장사꾼들의 전통적인 선전에는 실리콘밸리가 자주 등장한다. 그런 한두사례의 과대선전에 속아 넘어간다는 것이 안타깝지만 인간은 자신이 생각하는 것만큼 그렇게 논리적이지 않다. 미신은 원시인의 전유물이 아니다. 칼 세이건의 악령이 출몰하는 세상처럼 복잡해진 현대사회에 더 많은 미신들이 논리라는 이름으로 예쁘게 포장해서 돌아다닌다. 필자가 국내 소프트웨어 회사를 위해 할 일 중의 하나가 미신을 구별해 내는 것이다. 미신의 반증이 어려운 이유는 악마가 없다는 것을 증명해 보라는 악마의 증명이기 때문에 불가능하다. 브라질 버섯이 건강에 도움이 되지 않는 다는 것을 증명할 시간과 방법은 없다. 미국 FDA도 그런 승인은 할 수 없다. 자기 스스로 견문을 넓혀서 우물안 개구리가 되지 않도록 해야 한다.

편작이 지적한 이런 여섯가지 문제가 국내 소프트웨어 회사에 너무 잘 적용되는 것을 20년 이상 실제로 지켜보면서 현자들의 지혜에 감탄하지 않을 수 없다. 결과는 국제적인 경쟁력의 부재이다. 국내에서는 경쟁사도 다 같은 상태이니까 생존이 가능하지만 국제적인 경쟁은 차원이 다르다.

국내 소프트웨어 회사의 특징이 유행에 휩쓸려 너무 많은 것을 시도하려는 경향이 있다. 컨설팅 할 때 가장 어려운 점이 하지 않아야 할 것을 하고 있을 때 못하게 하는 것이다. 이런 경우 책임자들의 엄청난 반발과 자신의 업적에 대한 합리화의 격렬한 논쟁은 피할 수 없다. 특히 내부경쟁이 심한 대기업일수록 강하다. 진정으로 해야 하는 중요한 것들은 다 장기적이고 만 시간의 법칙이 필요한 것들이다. 힘든 노력 없이 돈으로 재미 있고 쉽게 해결해준다는 수 많은 유혹에 넘어가기는 쉽다. 하지만 그런 것은 존재하지 않는다는 진리를 기억하기 바란다.