2014년 11월 23일 일요일

SW 개발자 대우 - 10년 전과 달라졌나?





아래 글 "SW 개발자가 우대받는 사회를 만들자"는 필자가 10년 전인 2004년에 정부의 요청으로 기고한 기사였다. 필자가 "대한민국에는 소프트웨어가 없다"라는 책을 출판 한 때가 2003년 이었으니까 그 다음 해이다. 그 때도 SW 개발자를 우대하자는 취지였는데 10년 동안 전혀 변한 것이 없다는 것을 증명한다. 지금도 필자가 비슷한 기사를 쓰는 것을 보면 10년 전과 복사판이다. 전체적인 분위기는 더 악화된 것 같은 생각도 든다. 그만큼 정부, 학계, 기업이 전혀 변하지 않았다. 10년 동안 우리는 무엇을 했는가? 그럼 앞으로 10년이 더 지난다고 변할 수 있는가? 공자님이 2천년 전에 하신 말씀도 아직까지도 따라하지 못하는데 과연 무엇을 바랄 수 있을까 하는 생각도 든다. 지금도 수 많은 탁상공론들이 난무한다. 10년 동안 변하지 않았다는 것을 명심하고 공멸하지 않기 위해서는 모두 기득권을 내려놓고 진심으로 변화하기를 바란다.



SW 개발자가 우대받는 사회를 만들자




한국의 소프트웨어 산업이 발전하기 위해서는 여러 가지 요소가 필요하다. 현실감 있는 정부의 정책도 있어야 하고, 회사도 적합한 환경을 제공해야 되고 소프트웨어 개발자들의 열정도 있어야 한다. 그 중에 개발자들의 열정은 회사나 정부정책에 많은 영향을 받을 수 밖에 없다. 현재는 여러 가지 이유로 소프트웨어에 종사하는 개발자들이 좋은 대우를 받지 못한다. 개발자들이 좋은 대우를 받지 못하니 그 길을 선호할 리 없다. IT 거품이 일어났을 때 몇 년간을 제외하고는 모두가 기피하고 희망이 없는 직종이 되어 버렸다. IT 거품이 꺼지면서 시장수요가 줄었다고는 하나 근본 원인은 다른 곳에 있다.

필자가 소프트웨어분야에 오랫동안 기술자로 근무하면서 새로운 기술을 습득하기 위한 방법중의 하나가 컨퍼런스나 세미나에 가는 것이다. 지금부터 수년 전 미국에서 돌아온 지 얼마 되지 않았을 때였다. 어느 소프트웨어 신기술 세미나에 참석한 적이 있는데 20대나 30대로 보이는 젊은 층밖에 없는 것이었다. 나와 같은 연령대의 사람은 한명도 없었다. 왜 40대, 50대의 기술자는 없는 것인가 생각해 보았다. 미국과 같은 분위기를 생각하고 갔다가 앉아 있기가 민망해서 중간에 나와 버렸다. 그러면서 생각해 보니 미국에서는 빌 게이츠 같은 최고 경영자들이 제품데모도 하고 프리젠테이션도 직접 하는데 한국에서는 최고경영자가 직접 프리젠테이션 하는 경우를 본적이 없다. 그럴 수 있는 능력도 없을 것이다. 높은 직위에 있는 사람들은 보고 받고 결정만 하지 실제 경험은 하지 않기 때문이다.

사회에 잘못된 통념이 있다. 어느 회사나 왜 승진하려면 꼭 관리가 되어야 하는 것일까. 나이 들면 젊은 사람들과 신기술에서 경쟁하기 어렵다고 한다. 나는 동의하지 않는다. 이유는 다른 곳에 있다. 기술습득에 시간을 소비하지 않고 관리업무에 시간을 소비하기 때문이다. 관리업무도 하고 기술습득도 하려면 뒤떨어 질 수 밖에 없다. 실제 소프트웨어 회사의 현황을 살펴보자. 회사의 종류를 살펴보면 단발성의 프로젝트를 주로 하는 SI 업체를 제외하면 정말 경쟁력 있는 패키지 소프트웨어를 만드는 기업은 몇 손가락에 꼽힌다. SI 업체는 수 많은 단발성의 프로젝트를 하므로 관리쪽이 더 중요하다. 기술자는 찬밥신세가 되기 쉽다. SI 업체가 아니고 패키지를 개발하는 소프트웨어회사에서도 소프트웨어 엔지니어로 시작해서 능력 있는 사람들은 대부분이 서서히 관리직으로 넘어가게 된다. 관리직으로 넘어가지 못하면 도태되어 회사를 그만 두는 수 밖에 없다. 사농공상의 전통문화와 굴뚝산업에 익숙한 경영진들의 경영방식 때문에 소프트웨어산업은 악순환을 거듭할 수 밖에 없다. 전문가의 가치를 모르니 전문가가 생겨나기 어렵고 전문가가 없으니 좋은 제품을 만들 수가 없고 그러니 경쟁력이 떨어져 장기적으로 성공하기 어렵게 된다.

미국의 소프트웨어회사를 방문하게 되면 주시해 볼 것이 있다. 주요 기술직에 있는 사람을 만나게 될 때 잘 주시해 보면 대개 나이가 많은 사람들임을 알게 될 것이다. 40대에서 50대 60대 까지도 있다. 그런 사람들의 명함에는 보통 “Fellow Engineer”, “Chief Engineer”, “Chief Scientist” 라고 쓰여 있다. 이러한 사람들이 회사에서 하는 역할은 기술적 업무와 중요한 결정을 담당하게 되는데 관리쪽 일은 전혀 안 하는 경우가 대부분이다. 관리쪽 일을 하게 되면 이미 기술자로서의 능력을 조금씩 상실하게 된다. 회의에서 만나더라도 이런 사람들의 결정이 가장 중요하다는 것을 명심해야 한다. 새 제품을 기안하는 사람은 마케팅부서 같은 기획조직에서 시작할 지 모르나 그 기안을 승인하는 것은 기술적인 면에서는 이런 최고 기술자가 한다. 기술적으로 승인이 안 나면 프로젝트는 취소될 수 밖에 없다. 기술적으로 안 된다는데 무대포로 밀어 붙일 수는 없다. 이런 기술자는 회사의 운명을 좌우할 수 있는 직위이다. 비슷한 명칭으로는 기술이사나 아키텍트라고도 할 수 있다.

요새 한국에서 아키텍트라는 말을 많이 사용한다. 사람마다 의미를 조금씩 다르게 사용한다. 한가지 경우를 살펴보자. 소프트웨어분야에는 많은 요소기술이 있다 J2EE, 닷넷, CBD 등등 많다. 이러한 요소기술 전문가라는 뜻으로 아키텍트라는 명칭을 붙인다. 요소기술 아키텍트는 양성되기가 상대적으로 쉽다. 경험보다는 지식적인 부분이 더 많기 때문에 교육으로 쉽게 양성될 수 있다. 이러한 요소기술 아키텍트보다는 전체 개발 프로세스를 이해하고 어떠한 제품도 처음부터 끝까지 개발할 수 있는 체계와 정책을 수립할 수 있는 경험과 지식을 균형되게 소유한 확장형 아키텍트가 바로 최고의 기술자이며 또 필요한 것이 한국 소프트웨어의 현실이다. 이론적인 요소기술 지식으로서는 세계 어느 나라에도 뒤지지 않는다. 소프트웨어 엔지니어들을 보면 열심히 공부하는 사람들이 많다. 소프트웨어 엔지니어링, UML 방법론 등 책에서 다 익힐 수 있다. 하지만 오케스트라의 지휘자같이 전체적인 측면에서 바라볼 수 있는 경험과 지식을 두루 갖춘 안목있는 확장형 아키텍트가 필요한 것이다.

소프트웨어기술자들이 언론매체에서 앤티 IT라는 말을 만들어 절망적인 상황을 표현했듯이 지금과 같은 기업문화에서는 소프트웨어 엔지니어들의 희망도 없고 아키텍트나 Chief Engineer와 같은 국가발전의 원동력이 될 기술자도 양성되기 어렵다. 모두 관리자의 길로 빠질 수 밖에 없고 전문지식 없이 기술적인 판단을 할 수 밖에 없다. 그렇게 해서는 올바른 결정이 나올 수도 없고 기술적으로 경쟁력 있는 제품이 생산될 리 만무하다. SI 업체와 같이 수주를 받아서 개발해 주는 회사는 되도록이면 저렴한 임금의 초급엔지니어들을 사용해서 이윤을 남기는 것이 최대의 목적이니까 하청업체에다가 헐 값에 넘기게 되고 하청업체는 당연히 값싼 엔지니어를 고용할 수 밖에 없는 것이 소프트업계에 종사하면 누구나 다 아는 현실이다. 이러한 환경에서 회사에서 최고의 연봉과 지위를 보장 받는 아키텍트들을 고용한다는 것은 어려울 수 밖에 없다.

이러한 소프트웨어 문화 때문에 아키텍트라고 불리는 전문기술자 숫자가 절대적으로 부족하다. 이제부터라도 아키텍트를 양성하는 것도 중요하고 그러한 아키텍트들이 살아남을 수 있는 기업의 문화가 중요함은 두말할 나위도 없다. 소프트웨어 기술자들이 기술직에 전념할 수 있는 환경을 기업이 제공해 줄 수 있다면 소프트웨어발전의 기초는 세워진 것이다. 동시에 정부의 정책도 이런 기술자들을 정부관리에 등용할 수 있는 기회를 만들면 현실에 맞는 정책이 수립되지 않을까 생각된다. 소프트웨어가 발전하기 위해서는 천재 경영자가 필요한 것이 아니고 소프트웨어 기술자가 우대 받고 존경 받는 문화가 가장 중요하다. 그러면 좋은 소프트웨어는 저절로 나온다.

댓글 없음: