2004년을 사는 개발자를 위한「경력관리 로드맵」 |
노규남 |
2004/11/30 |
정부에서 개발자 100만 명을 양성한다고 한다. IMF 이후 피폐해진 나라 살림을 일으키기 위한 돌파구로 정부는 벤처와 IT 기술에 집중적인 투자를 단행했고 당연한 귀결처럼 수많은 IT 기업과 개발자들이 탄생했으며 한국은 세계에서 으뜸가는 첨단 제품의 테스트베드가 되었다. 온라인 게임이나 커뮤니티가 한국만큼 잘 발달한 곳이 없고 CDMA를 세계 최초로 상용화한 나라도 한국이다. 최근에는 모바일 컨텐츠 시장을 얘기할 때도 한국을 'Best Practice(최우량 사례)'로 꼽을 정도이다. 온갖 얼리 어댑터용 제품들이 한국으로 쏟아져 들어오고 있으며 용산은 아시아에서 가장 큰 컴퓨터 상가로 자리잡았다. 겉으로 나타나는 지표로서는 분명 IT 강국이라는 이름이 부끄럽지 않을 것이다. 하지만 이 IT 강국에서 개발자로 일하는 혹은 개발자의 길을 걷고자 하는 사람들이 처한 현실을 살펴보면 이 땅에서 개발자로 먹고 살기는 결코 녹록치 않을 것이라는 생각이 든다. 수당 없는 야근은 기본이고 공휴일 근무를 하지 않는 것만도 다행이다. 쏟아져 나오는 신기술에 대비하기 위해 항상 공부를 하고 있지만 오히려 특별한 노력이 필요 없는 타 직종에 비해 월급은 형편없고 그나마 제때 나오지 않는 경우가 더 많다. 세계적으로 IT 강국이라는 한국의 개발자들인데 어째서 이렇게 상황이 좋지 않은 것일까. 피해갈 수 없는 골드러시 공식 결론부터 이야기하자면 상황이 이렇게까지 된 것은 정부와 개발자와 기업의 합작품이다. 누가 가장 큰 잘못을 했다고 경중을 따질 필요 없이 세 주체가 모두 안이하게 대처했기 때문에 이같은 상황이 벌어진 것이다. 먼저 정책 문제부터 짚어보자. 정부의 문제는 IMF 이후의 경기 부양을 위해 벤처, 특히 IT 벤처의 육성에 집중했다는 것이다(물론 이것 자체로는 문제가 아니다). 때마침 세계적으로 불기 시작한 인터넷 붐을 타고 새로운 비즈니스 모델이 생겨났으며 이는 성공적인 프로모션으로 이어지며 수많은 기업들이 돈방석 위에 앉게 되었다. 현재 300포인트 대에 머물고 있는(이전 방식으로는 30대) 코스닥 지수는 2800포인트 이상으로 치솟았고 '전자', '텔레콤' 등의 이름을 달았다는 이유만으로 투자자들이 자금을 싸들고 모여들었다. 법적 절차가 간단한 인터넷 소액 공모로도 몇 억씩 모을 수 있을 정도로 IT 전망에 대한 장미빛 미래만이 가득했고 IT가 가져온 소위 '신경제'는 불황과 호황이 번갈아가며 나타난다는 '구경제'의 이론마저 부정하게 되었다. 정부는 향후 개발자의 수가 크게 부족할 것으로 보고 실직자 대상의 IT 교육과정을 대거 개설했다. 이같은 상황을 스티브 맥코넬의 표현을 빌자면 'Gold Rush'에 비유할 수 있다. 미국 서부에서 금광이 발견되자 수많은 사람들이 동부에서 서부로 이주하듯 IT라는 새로운 금맥을 발견한 사람들이 이 분야로 몰리는 것은 당연한 현상이었기 때문이다. 인터넷의 대중화가 가져온 IT 붐은 한국뿐만이 아니라 전세계적으로 마찬가지였다. 이 시기에는 기존 패러다임을 변화시키는 신기술들이 속속 등장했으며 이 신기술은 또 다른 기술 저변의 확대를 촉진하게 된다. 신기술이 대중화되어 더 이상 '새로운' 개념으로 다가설 수 없게 되면 붐은 가라앉고 경쟁은 치열해진다. 대체제가 없어 별 수 없이 상품을 구입했던 고객도 선택의 폭이 넓어지면서 전에 없던 요구사항을 늘어놓게 된다. 경쟁사가 늘어날수록 수익성은 낮아지게 되며 상품성이 검증된 시장에는 자본력을 무기로 삼은 대기업이 밀려들어와 규모의 경제를 실현하는 경우도 생긴다. 이것이 골드러시의 이후에 생기는 현상이며 현재 모바일 서비스를 제외하고 특별한 이슈가 없는 전 세계 IT 업계는 인터넷 붐 이후 소강기를 거치고 있다고 말할 수 있다. 여기까지 읽은 눈치 빠른 독자라면 이제 필자가 무슨 얘기를 하고자 하는지 대충 감을 잡을 것이다. 운이 좋았든 개인적 판단이 유효했든지간에 인터넷 붐에 시기적절하게 편승해 업계에 뛰어든 사람들은 워낙 개발자가 부족했던 당시 상당한 대우를 받으면서 일할 수 있었고 또 어느 정도 치부도 할 수 있었다. 특히 온라인 게임이 황금알을 낳는 거위로 여겨졌던 2000년대 초에는 서버 개발자의 부족이 심각해서 마음만 먹는다면 연봉을 2~3배 올려가며 원하는 일자리를 찾는 것이 가능했다. 좋았던 시절의 얘기다. 하지만 골드러시가 끝날 무렵 막연하게 IT 분야는 전망이 밝겠지라는 안일한 생각에서 업계에 투신한 사람들은 속된 말로 '피를 보지' 않을 수 없었다. 이미 붐은 끝났기 때문에 이전처럼 시장에서 뛰어들어서 운 좋게 성공하기를 바라는 것은 매우 어려워졌기 때문이다. 이 사실은 기업에도, 개인에게도 마찬가지로 적용된다. 골드러시 이후에는 이전보다 훨씬 많은 사람들이 크기가 작아진 파이를 두고 격전을 벌일 수밖에 없기 때문이다. 그리고 이것이 바로 2004년 9월 현재 대한민국 IT계의 현주소이다. 어떻게 보면 IT 경기 순환의 불경기에 해당한다고 말할 수도 있을 것이다. 정부의 가장 큰 과오는 벤처 투자를 독려함으로써 경기를 부양시킨 것까지는 좋았으나 IT 분야에 투자하면 항상 대박이 터진다는 환상을 심어주어 과잉 투자를 유발시키고 IT 경기의 연착륙이 어렵게 만들었다는 것이다. 또한 향후 IT 인력이 부족해질 것이라는 인식 자체는 옳았으나 이를 해결하는 방식으로 단기 속성 교육과정들의 개설을 독려해 초심자들의 숫자만 늘린 책임도 있다. 기업에서 실제 원하는 인재들은 이렇게 기초 수준을 막 벗어난 사람들이 아니라 혼자서 업무를 수행할 수 있는 중급 이상의 개발자들인데 이러한 교육과정만 거치면 고연봉에 좋은 일자리를 얻을 수 있을 것 같은 분위기를 조장한 사실도 역시 부정할 수 없다. 결국 호경기는 오래가지 않았으나 IT 업계에는 고연봉과 높은 사회적 지위를 기대하는 초보 개발자들만 득시글거리게 되었다. 그리고 많지 않은 황금의 자리는 당연히 그들을 위한 것이 아니었다. 국내에서 재현되는 제 2의 아타리 쇼크 그렇다면 개발자는 엇나간 정부 정책에 의한 온전한 희생자일 뿐인가. 현재 개발자가 충분히 대우받지 못하게 된 근본적인 원인은 인터넷 도입 초기 IT 기업의 성장 단계에서 지나친 투자가 단행됐다는 사실에 있다. 다시 말하면 현재 시기는 IT 경제의 불경기로, 과잉 투자된 것이 구조조정되는 단계에 있는 것이다. 여기에 덧붙여 고유가와 테러 등으로 인한 세계적인 불경기도 IT 업계를 힘들게 하는 한 가지 요인이 되었다. 하지만 이같은 외부 상황을 감안하더라도 개발자 자신들도 이 사태에 대한 책임이 전혀 없다고 말할 수는 없다. 필자 역시 기업에서 개발 인력을 고용하기 위해 이력서를 다수 받아보지만 실무에 투입할 수 있는 인재가 극히 드물었다. 기업에서는 실무 능력을 갖춘 사람이라면 무리를 해서라도 대접할 자세가 되어 있으나 기대에 부응하는 중급 이상의 개발자의 수가 극히 부족하다. 반면 당장 실무에 투입할 수는 없고 어느 정도 교육 단계를 거쳐야 하는 초심자들은 차고 넘친다. 이런 사태는 한때 세계 게임계를 주름잡았던 아타리(Atari)사의 몰락을 설명하는 '아타리 쇼크'라는 단어에 딱 걸맞을 것이다. 아타리는 싸고 좋은 하드웨어와 풍부한 타이틀로 1980년대 초 미국의 게임 시장을 주름잡았지만 출시되는 타이틀의 품질을 규제하지 않은 결과 저질의 소프트웨어가 범람해 침몰한 역사를 갖고 있다. 다시 말해 저질 소프트웨어가 대량 생산되면서 쓸 만한 소프트웨어까지 싸잡아 소비자들의 외면을 받게 된 것이다. IT 분야의 인력 사정도 비슷하지 않을까. 필자가 보건대 현재 IT 분야의 인력 구조는 대다수의 초급 개발자와 극소수의 고급 개발자, 그리고 이보다 약간 많은 수준의 중급 개발자로 이루어져 있다. 이는 출간되는 컴퓨터 관련 서적의 출간 동향만 보아도 쉽게 알 수 있다. 출판사들이 중급 이상의 수준 높은 책들을 발간하지 않는 경향도 이 시장이 매우 협소하고 사람들이 어려운 책을 읽지 않으려고 하기 때문이다. 현재 서점에는 초보 개발자용 서적들만 쌓여간다. 따라서 개발자 자신도 결코 이 책임에서 자유로울 수 없다. 비판적으로 말해 개발 일을 너무 녹록하게 본다는 느낌이 들 정도로 노력을 하지 않는다. 개발자에게 필수적인 매뉴얼을 읽기 위해서는 영어의 직독직해 정도는 기본 인데 이조차 되지 않는 개발자들이 수두룩하다. 한 마디로 개발자들이 노력하지 않기 때문에 실력 있는 개발자까지 도매금으로 싸구려 취급을 받고 있다는 것이다. 일을 맡겨보면 실력 있는 개발자와 초심자의 작업 효율이 10배 이상 차이가 나기도 하는 데도 말이다. 실제 소프트웨어산업협회가 발간한 2003년도 연차 보고서를 보면 초급 기술자 이하의 인력이 전체의 50%에 달하는 것을 확인할 수 있다(초급 기술자 42.3%, 고급 기능사 2.1%, 중급 기능사 2.0%, 초급 기능사 2.3%). 개발자 2명 중 1명은 초급 이하의 수준에 머물러 있는 것이다. 이 통계는 경력이나 자격을 기준으로 인력을 구분하므로 실무 능력에 따라 정확하게 분류한 것은 아니지만 전체 개발자들 중 직무에 투입하기 어려운 초급자가 많다는 견해에 대한 하나의 실증을 보여준다고 할 수 있다(정보처리기사나 산업기사 자격증만 따면 일단은 초급 기술자이다). 더구나 이 통계는 현재 '실무에 종사중인' 사람들을 대상으로 한 것이다. 구직자까지 합한다면 개발자 혹은 개발자를 지망하는 사람들 중 초급자의 비율은 더욱 높아진다. 앞서 언급한 대로 기업 경기가 좋지 않음에도 불구하고 제대로 된 개발자라면 고비용을 감수하고라도 인력을 고용하려는 기업들은 많다. 따라서 자신이 IT 분야에 몸을 담고 있는데 희망이 보이지 않는다면 1/3 정도는 본인에게도 책임이 있다고 감히 말할 수 있는 것이다. 통상 지불하는 임금의 3배 정도의 매출이 개인당 발생해야 겨우 적자를 면한다는 것이 기업의 생리인데 자신이 받는 연봉의 3배 매출을 올릴 만한 역할을 하고 있는지 잘 생각해보기 바란다. 아직 취업을 하지 못했다면 자신이 원하는 연봉의 3배 정도의 매출을 만들 자신이 있는지도 판단해 보라. 아울러 IT 기업들이 판매하는 솔루션의 가격과 마진을 고려해서 한 사람의 연봉을 주기 위해 제품을 얼마나 판매해야 하는지도 생각해보면 업계가 얼마나 힘든 시기를 지나고 있는지 실감할 수 있을 것이다. 호시절을 소비한 기업은 유죄 이제 개발자를 고용하는 기업의 책임에 대해서 말해보자. 국내 IT 기업들은 현재 혹독한 자금난을 겪고 있지만 코스닥 지수가 300(현재 기준으로는 3000) 포인트를 향해갈 무렵 이들에게 쏟아진 투자금은 어마어마했다. 액면가 대비 1000배 이상의 투자를 받기도 했고 뚜렷한 솔루션, 비즈니스모델도 없는 기업이 수백억 원을 투자받는 경우도 적지 않았다. 모 기업은 투자받은 당시부터 지금까지 엄청난 실패만을 거듭해 왔음에도 불구하고 아직 투자 받은 현금이 사내 유보로 수백억 원 이상 남아있을 정도다. 문제는 호기를 맞아 투자받은 자금으로 인력을 확충하고 기술 개발에 전념한 것이 아니라 M&A나 스톡옵션 잔치 등 바람직하지 않은 용도로 모두 사용해버렸다는 것이다. 시장에서 수위에 있는 기업은 관련 산업을 선도할 책임이 있는 만큼 영세한 기업들이 행하지 못하는 과감한 투자도 해야 하고 때로는 매우 실험적인 프로젝트도 실시해야 한다. 이것이 시장에서의 선도(leading) 기업의 의무다. 하지만 국내 IT 기업들이 코스닥 시장에서 보여준 배임, 횡령, 탈법 등의 행태는 상상을 초월할 수준이었으며 투자자들을 너무나 실망시켰다. 무엇보다도 투자한 자금으로 어떻게 수익을 창출할 것인지 명확한 비즈니스모델도 없이 투자 자체만을 목적으로 삼은 결과 IT 기업의 수익성에 대한 심각한 회의가 초래되었다. 이런 이유로 인해 후발 기업들은 이전보다 훨씬 좋지 않은 조건으로 투자를 받거나 아니면 아예 투자를 받지 못하는 경우도 다수 발생했다. 어떻게 보면 투자자들이 좀 더 냉정하고 합리적으로 판단하게 되었다는 긍정적인 평가를 할 수도 있을 것이다. 물론 인터넷이라고 하는 새로운 매체에 적합한 비즈니스모델이 존재하지 않는 무(無)의 상태에서 자신의 갈 길을 찾아낸 이들 1세대 기업의 공을 무시할 수는 없다. 이들의 노력이 있었기에 오늘날 우리나라가 IT 강국이라는 평가를 받을 수 있는 것이라 생각한다. 하지만 한탕주의에 물든 문제 있는 기업들도 적지 않았고, 이들이 물을 흐린 결과는 지금까지 영향을 미치고 있다. 코스닥 지수는 가장 잘 나간다는 때였던 2000년대 초 2800포인트를 넘었지만 지금은 그의 1/8 수준인 340선에 머물고 있다. 이는 기업의 가치가 평균 팔분의 일로 토막이 났다는 말로, 그만큼 투자자들에게 외면을 받고 있다는 것이다. 다시 개발자의 얘기로 돌아가자. 개발자의 처우는 물론 실력에 비례해야겠지만 '실력이 좋기 때문에' 연봉을 많이 받는 것이 아니라 '기업이 돈을 잘 벌기 때문에' 연봉이 높은 경우가 많다. 즉 기업이 수익을 내지 못하고 있다면 아무리 실력이 뛰어난 개발자라도 수준에 걸맞는 연봉을 받기 어려워진다. 이것은 대단히 중요한 명제로 IT 분야가 아닌 모든 기업에 적용되는 원리다. 결론적으로 우리나라 IT 기업들은 꽃 피고 새 우는 호시절에 회사의 실력을 키우는 데 게을리했기 때문에 어려운 시기를 견뎌내기 어렵게 된 것이며 이에 대한 고통분담을 개발자들이 하지 않을 수 없게 된 것이다. 이것이 한국의 개발자가 힘든 세 번째 이유이다. 내수 시장의 벽 ‘1억’ 여기에 더해서 국내 IT 시장이 갖는 근본적인 문제가 있다. 이는 관련 시장 규모가 협소하다는 점이다. 통상적으로 내수 시장이 마켓으로서의 의미를 갖는데 중요한 한계선 중 하나는 바로 '1억 명의 인구'이다. 이 숫자를 넘어서면 외부 여건이 변화해도 크게 영향을 받지 않을 수 있는 내수 시장이 형성된다. 따라서 인구가 1억 명을 훨씬 넘는 일본이나 미국과 같은 국가의 경우 수출을 전혀 하지 않고도 내수 시장만을 무대로 운영되는 대규모 기업이 여럿 존재한다. 반면 싱가포르처럼 인구가 천만 명 수준이 되는 않는 국가라면 내수는 독점화될 수밖에 없으며 소인구 국가가 살아남을 길은 오로지 수출이다. 이에 반해 한국 시장의 경우 인구가 5000만 명 정도로 내수 시장에 치중하기에는 다소 부족하고 무시하기에는 적잖이 큰 그런 어중간한 시장이 형성되어 있다. 이런 시장은 필연적으로 몇 개 업체의 과점으로 내수 시장을 분할하게 되고 그 역할은 대기업이나 중견 기업 등 규모의 경제를 실현할 수 있는 덩치 큰 기업들이 맡게 된다. 다시 말해 국내는 중소기업과 중견기업 그리고 대기업이 제대로 공존할 수 있는 규모의 시장을 갖지 못하고 있다는 것이다. 그럼에도 불구하고 국내 대다수 기업들이 내수에 올인하는 형편인 만큼 경쟁은 격화될 수밖에 없다. 이 상황에서 살아남는 업체는 일찌감치 시장에 뛰어들어 이미 자리를 잡은 중견기업과 자금과 영업력을 무기로 삼는 대기업뿐이다. 나머지 업체들은 어려운 상황을 맞이할 수밖에 없다. 당연한 결과로 기업이 이윤을 내지 못하면 응당 개발자의 처지도 어렵게 된다. 개인적 견해로 국내 IT 기업들은 지나치게 내수용 제품에만 집중하고 있으며 이보다는 국제 수준에 맞춰 제품을 개발한 후 수출에 주력하는 편이 옳다고 판단된다. 그렇다면 어떻게 살아남을 것인가 그렇다면 이같은 상황을 극복하기 위해서는 어떻게 해야 하는가. IT 불황은 국내에 국한된 것이 아닌 세계적인 현상인 만큼 개인 차원에서 쉽게 해결 가능한 문제는 아니다. 그렇다고 손 놓고 환경 탓만 할 수는 없다. 개발자 개인의 노력으로 상황을 극복하는 방안으로 몇 가지를 찾아보자. 그 첫 번째는 이미 끝나버린 골드러시 시장을 뒤로 하고 새로운 금맥을 찾아서 떠나는 것이 한 가지 방법이 될 수 있다. 현재 주목받지 못하고 있지만 가능성이 있다고 판단되는 분야에 투신해 향후 각광받게 될 시점에서 준비된 실력으로 시장을 선점하는 것이다. 자바의 탄생 초기 불확실한 시장을 감수하고 과감하게 뛰어든 개발자들, 그리고 리눅스나 온라인 게임에서도 시장을 미리 내다본 선각자들만이 성공할 수 있었다. 하지만 모든 벤처 분야가 그러하듯이 이 방법 역시 상당한 위험을 동반한다. 금맥을 캐기 위해 서부로 떠난 마차들이 길을 잃거나, 인디언의 습격을 받거나, 때로 열사병 등으로 전멸한 사례를 서적과 다큐멘터리 등을 통해 접했을 것이다. 지금 IT 분야가 어렵다고 말을 하지만 비즈니스모델조차 존재하지 않았던 시절에 이 길을 택한 사람들의 어려움은 현재에 비할 바가 아니었다. 항상 가장 먼저 시작하는 프론티어의 길은 매우 험난한 대신 향후 그만큼 큰 이익을 얻을 가능성이 있다. 또 서부에 도착했다고 하더라도 실제 치부할 정도로 금을 캔 사람은 그 중에서 소수였다라는 사실도 기억해야 할 것이다. 만약 이런 고위험을 감수하고 싶지 않다면 이미 안정적인 시장이 형성되어 있는 곳에서 자신의 자리를 찾지 않으면 안된다. 이 경우는 앞서 언급한 대로 '기업이 돈을 벌어야 개발자도 돈을 번다'라는 명제를 반드시 기억하기 바란다. 다시 말해 현재 충분한 수익을 내고 있거나 최소한 머지않은 장래 많은 수익이 기대되는 업체 혹은 분야에 투신하지 않으면 안정된 수입을 얻기는 어렵다는 것이다. 또한 IT 업계는 워낙 부침이 심한 곳이기 때문에 오늘 각광받는 분야가 내일은 사양 산업으로 분류될 수도 있다. 한때 가장 수입이 좋았던 웹 프로그래머들이 지금 어떤 대우를 받고 있는지 생각해 보라. 가장 바람직한 선택법은 수입과 관계없이 자신이 정말로 하고 싶은 분야를 선택하는 것이겠지만 IT 분야에 투신한 사람들이 정말 그 일이 좋아서 하기보다는 단지 호구지책으로 일을 하고 있는 경우가 많은 것도 사실이다. 또 일 자체는 좋아하지만 어쩔 수 없는 현실적인 이유에 의해 타 분야로 전직하는 경우도 드물지 않다. 필자는 이런 사람들을 폄하하거나 비난할 생각은 없으며 이 역시 개인적인 선택으로 인정 받을 만하다고 판단한다. 하지만 어차피 본인의 기호와 관계없이 직장을 선택할 것이라면 각 분야별로 현재 상태와 앞으로의 전망을 알고 있는 편이 원하는 바를 충족하는 데 도움이 되리라 생각한다. 그럼 이제 각 분야별로 개발자가 도전해볼 만한 분야의 성장 가능성을 짚어보겠다. 온라인 게임, 네트워크 프로그래밍으로 기본기를 갖춰라 리니지의 성공 이후 수많은 기업과 개발자들이 온라인 게임의 대박을 꿈꾸었지만 이 중 극소수만이 원하던 바를 성취할 수 있었다. 현재 국내 온라인 게임 시장은 캐주얼 게임부터 아케이드, MMORPG까지 업체 수도 많고 서비스되는 게임 종류도 많아서 이미 포화 상태가 되었다는 견해가 일반적이다. 하지만 문화관광부에서 펴낸 '2004년 대한민국 게임백서'를 보면 작년 한 해 온라인 게임은 70%에 가까운 성장률을 보여 아직까지는 게임 시장의 열기가 식지 않다는 것을 확인할 수 있다. 다만 온라인 게임들도 점점 대형화, 블록버스터화되면서 성장의 과실을 대형 중견업체들이 차지한다는 문제점이 있다. 따라서 향후 신규업체가 이 시장에서 크게 성공하기는 어려워질 것으로 전망한다. 희망적인 것은 세계 온라인 게임 시장 역시 매년 80% 이상 성장하는데 해외 시장에는 아직 미개척지가 많으므로 이 시장에서의 경쟁은 여지가 충분하다고 할 수 있다. 또한 기존에 없던 참신한 컨텐츠를 제공하면 신규 시장을 창출하는 것이 가능하다는 사실이 이미 몇몇 게임의 성공으로 증명된 바 있다. 온라인 게임의 경우 서버와 클라이언트로 분야를 나눈다면 클라이언트 개발자는 많고 서버 개발자는 상대적으로 적은 양상을 보인다. 서버 개발자는 IOCP나 쓰레딩 모델 등 다양한 지식을 섭렵해야 하며 겉으로 보기엔 어려울 것이 없어 보여도 하나의 서버를 안정화시키는 데는 상당한 노력과 시간이 소요된다. 서버는 리눅스와 윈도우의 두 가지 OS가 주류이며 전통적으로 게임 회사에서는 윈도우 서버를 사용하는 곳이 많다. 윈도우에서 서버를 개발하고자 한다면 Ralph Davis의 『Win32 Network Programming』을 강력하게 추천한다(번역서도 있다). 출판된 지 10년 가까이 되었지만 필자가 아는 한 윈도우에서의 네트워크 프로그래밍을 다룬 제대로 된 거의 유일한 책이다. 리눅스 분야에서의 서버 개발이라면 매우 유명한 서적인 스티븐스의 『Unix Network Programming』, 속칭 UNP 볼륨 1을 보기를 권한다. 최근에는 온라인 게임 서버 관련 서적이나 자료들이 많이 공개되어서 네트워크 프로그래밍을 몇 번 시도해 보고는 ‘게임 서버도 쉽구나’라고 생각해버리는 경우가 왕왕 있는데 이같은 생각은 매우 위험하다. 온라인 게임 서버는 몇 천, 몇 만의 사용자가 동시에 문제없이 실시간으로 게임을 동작할 수 있게 해주는 핵심 기술이므로 단순한 네트워크 프로그래밍만으로는 이루어지지 않으며 그 이상의 정교한 기술을 요구한다. 필드에서 실제 서버를 운영하다 보면 책에는 나와 있지 않은 온갖 황당한 경우에 부딪치게 되는데 기초가 튼튼하지 못하다면 이런 상황에 적절하게 대처할 수 없게 된다. 따라서 온라인 게임 서버에 뜻을 두고 있다면 쓰레딩 모델이나 IOCP, STL 등 기초가 되는 기술을 충분히 수련하고 시작하기를 권하고 싶다. 디바이스 드라이버, 하드웨어 지식으로 전문성을 업그레이드 하라 디바이스 드라이버는 특정 하드웨어를 OS에서 사용할 수 있게 만드는 커널의 일부로서 향후 전망치가 밝은 분야이다. PC가 데스크탑 시장을 장악하고 있는 한 신규 하드웨어는 끊임없이 개발되며, 이에 대한 수요 역시 꾸준하기 때문이다. 그러나 디바이스 드라이버의 개발은 상당히 어려운 작업으로 커널의 구조부터 시작해서 하드웨어에 대한 지식까지 폭넓은 지식을 요구하기 때문이다. 하드웨어에 대한 지식 없이도 일단 작업은 가능하지만 제대로 알고 작업하는 것과는 큰 차이가 생기게 된다. 하드웨어가 항상 100% 완벽하게 작동하는 것이 아닌 만큼 경우에 따라서는 보드를 디버그해서 땜질해야 하는 경우도 생기는데 이럴 때 담당자가 올 때까지 속수무책이라면 작업 진행에 상당한 애로가 있게 된다. 또한 커널의 일부로 작동하는 관계로 디버그가 상당히 어렵고, 원하는 대로 작동시키려면 하드웨어의 매뉴얼을 수백 번 읽어서 너덜너덜해질 때까지 시도하게 된다. 따라서 최소한 타이밍도 정도를 읽을 수 있으면 작업이 좀 더 수월해질 수 있다. 가장 큰 시장은 윈도우용 디바이스 드라이버와 임베디드 시스템용의 리눅스 디바이스 드라이버로 개발자로서는 윈도우 개발자가 좀 더 나은 대우를 받을 수 있다. 윈도우 분야를 공부하려면 Chris Cant의 『Writing Windows WDM Device Drivers』를 독파하는 것이 일반적인데 번역서도 나쁘지 않다. 리눅스에서는 O'Reilly의 『Linux Device Drivers 2nd』를 많이 보는 것 같지만 이 책의 내용은 다소 딱딱하고 읽다 보면 쉽게 갈피를 잡을 수 없는 경우가 있다. 더불어 컴파일되지 않는 예제들도 있기 때문에 차라리 KELP(http://www.kelp.or.kr)의 자료들을 일독하기를 권한다. 황금시장의 마지막 금맥, 모바일 현재 IT 업계에서 유비쿼터스와 더불어 남아있는 마지막 금맥으로 여겨지는 것이 바로 모바일 분야이다. 가트너 자료에 의하면 WinCE나 팜으로 대표되는 PDA 시장은 올해 전세계적으로 -1%의 성장이 예상되는 등 상당히 침체되어 있지만 국내에서만 2000만 명 이상의 유효 사용 인구를 가진 휴대폰 시장이 앞으로의 전망을 밝게 하고 있다. 현재는 번호 이동성 제도로 이통사들의 경쟁이 시끄럽지만 어차피 정해진 숫자 안에서 고객을 서로 뺏는 제로섬 게임일 뿐 머지 않아 통화와 문자 메시지를 제외한 부가 서비스를 통해 ARPU(Average Revenue Per User : 가입자당 평균 매출액)를 높이는 쪽으로 무게중심이 이동할 것으로 예측된다. 그리고 그 중심에 모바일 게임을 주축으로 한 모바일 애플리케이션 서비스가 자리잡고 있다. 국내에서 서비스하고 있는 이통통신 3사의 플랫폼은 모두 다른데, SK텔레콤이 SK-VM(Java/CDLC/MIDP)와 GVM, KTF가 브루(Brew), LG텔리콤이 ez-Java(Java/CDLC/MIDP)를 채택하고 있다. 이중 플랫폼으로써 가장 우수한 것은 KTF가 채택한 브루라고 일반적으로 평가받고 있으며 이는 브루가 하드웨어에 밀접하게 연관되어 작동하기 때문이다. 용량 제한도 적고(최근의 브루 게임은 600KB에 육박한다) 속도도 빠르지만 단말기마다 특성이 잘 나타난다는 단점이 있다. 또 얼마 전까지만 해도 모바일 게임은 맞고나 플래시 게임의 이식이 주류를 이루었지만 최근에는 타이쿤류를 중심으로 한 창작 게임과 RPG, 세미 네트워크 게임 등이 대거 등장해 대작화/네트워크화 되는 경향을 보여주고 있다. 플랫폼 자체의 한계 때문에 어느 정도 수준 이상의 컨텐츠는 하드웨어적인 한계에 부딪친다. 개발에 있어 기술적인 난점은 별로 없는 편이지만 삼성전자와 팬택앤큐리텔 등의 단말기 업체가 게임폰 사업을 발표하면서 관련 시장도 향후 본격화될 전망이다. 덧붙여 내년 4월부터 위피(WIPI) 탑재가 의무화되면서 이 업계도 한치 앞을 내다볼 수 없는 시기로 접어들고 있다. 인터넷이 끼친 정도의 파급력까지는 안 되겠지만 모바일 서비스도 본격화되었을 경우 우리네 생활의 상당 부분을 변화시킬 정도의 잠재력을 가지고 있다고 평가되기 때문에 많은 업체들이 주목하는 분야이다. 향후 성장성이 매우 높기 때문에 한번 투신해볼 가치가 있는 분야로 생각된다. 리눅스, 임베디드로 가능성 열어 리눅스는 국내의 경우 몇 년 전 크게 붐이 불며 윈도우 시리즈를 제칠 가능성까지 거론되었다. 하지만 지금은 분위기가 상당히 가라앉은 상태이다. 관련 시장도 이미 성숙돼 레드햇과 같은 규모의 경제를 실현하지 않으면 가치를 창출하기 어렵다. 웹을 중심으로 한 미드레인지 서버 시장은 어느 정도 완만한 발전 가능성이 있지만 데스크탑이나 배포판 시장의 경제성은 제로에 가깝다. 리눅스 창시자인 리누스 토발즈의 말처럼 '그냥 재미로' 하고 싶다면 말릴 이유가 없지만 경제적인 문제가 결부되는 '일'로서는 그다지 추천할 만한 분야가 되지 않는다는 것이 개인적인 생각이다. 물론 이는 데스크탑이나 배포판에 한정한 경우다. 반면 임베디드 용도의 리눅스는 강력한 네트워크 지원 기능을 바탕으로 다양한 오픈소스를 사용할 수 있다는 장점에서 꾸준히 사용 빈도가 증가하고 있다. ARM7/9 계열의 CPU들이 주로 사용되며 셋탑박스처럼 복잡한 기능을 수행해야 하는 경우는 x86 호환의 Geode를 사용하기도 한다. 가깝게는 서울시 버스의 카드 과금기에 임베디드 리눅스가 탑재 되어 있으며 스포츠토토 복권기 역시 리눅스 기반이다. 네트워킹이 강력하기 때문에 공유기 등 간단한 네트워크 장비는 99% 이상 리눅스의 서브셋인 uClinux를 사용한다고 보아도 무방하다. 리눅스의 경우 APM 등의 활용 자료는 많이 있으나 개발 자체에 관련된 자료가 매우 귀하기 때문에 이 분야를 개발하고자 한다면 상당한 고생을 각오해야 한다. 자료 자체는 오픈되어 있지만 MSDN처럼 체계적으로 정리되어 있지 않고 넓게 산재되어 있으므로 개발자 입장에서는 용이한 작업은 아닐 것이다. 임베디드나 서버로서의 리눅스는 앞으로 어느 정도 가능성이 있다고 할 수 있지만 아파치의 탄생처럼 폭발적인 관심을 모으기는 어렵고 조용한 성장을 지속할 것으로 예측한다. SI, 개발자 노동 강도 가장 높아 한국소프트웨어산업협회가 내놓은 '2003년 SW 산업 연차 보고서'에 따르면 협회 회원사 중 SI를 주업으로 하는 업체가 전체의 50.7%에 달해 개발사의 과반이 SI 시장을 두고 경쟁하는 것으로 조사되었다. 물론 이는 회원사만을 대상으로 한 것이기 때문에 실제 국내 소프트웨어 산업의 절반이 SI 업체다라고 말할 수는 없지만 그만큼 전체 IT 산업에서 비중이 높다고 해석할 수 있는 근거가 된다(보고서에서 파악된 SI 시장 규모는 9조원을 넘는다). 이를 인력수로 따지면 더욱 높아져 전체 인력의 68.3%가 SI 기업에 종사하는 것으로 파악되었다. 이 결과는 SI 시장이 그만큼 크다는 사실을 의미하지만 지나치게 경쟁이 심하기 때문에 SI 업체의 향후 전망은 그리 밝지 않다. 또한 대기업이 SI 계약을 따낸 다음 이를 하청업체에 맡기고 또 다시 재하청이 되는 반복 하청 구조로 인한 문제점도 어제오늘 일이 아니다. 이는 앞서 언급한대로 국내 시장이 소수의 대기업이 과점할 수밖에 없는 규모이기 때문으로 동 보고서에서도 이 내용을 확인할 수 있다. 전체 회원사중 대기업(자본금 100억 이상)은 1.8%에 불과하지만 소프트웨어 전체 시장 점유율은 49.4%에 달하고 있으며 SI 시장에서의 점유율도 50%에 가깝다. 몇 단계의 재하청에 의해 개발자의 처우나 복지는 형편없고 노동 강도도 가장 세며 가장 많은 불평이 터져 나오는 곳이 바로 이 SI 업계일 것이다. 이런 이유로 인해 끊임없이 인력이 빠져나가면서 동시에 임금이 낮은 신규 인력이 유입되어 자리를 메우는 행태가 반복되고 있다. 매년 성장이 이루어지고 있기는 하지만 신규 업체의 숫자도 그만큼 늘고 있으며 한정된 시장으로 인해 어느 정도 후에는 한계에 부딪치게 될 수밖에 없다. 디지털 유목민을 기다리며 원고 청탁을 의뢰한 마소 편집팀의 요청은 '개발자 희망의 메시지'를 전달해 달라는 의도였으나 막상 원고를 작성하고 보니 국내 IT 업계에 대한 부정적인 모습을 잔뜩 늘어놓은 듯한 기분이 든다. 하지만 무언가를 개선하기 위해서는 먼저 현실을 똑바로 볼 필요가 있으며 현실이 불만족스럽다고 해서 이를 도피, 왜곡해서는 안 된다고 생각한다. 본문에서 언급한대로 현재 특정 분야를 제외하고는 세계적으로 IT 업계가 침체되어 있는 상황이며 국내는 더욱 상황이 좋지 않다. 허나 간과하지 말아야 할 사실이 있다. 이는 황금시대 이전, 즉 인터넷 붐이 시작되기 전의 IT 업계는 지금보다 상황이 더욱 좋지 않았다는 사실이다. 당시 컴퓨터를 다룬다고 하면 취미로는 어떨지 모르겠으나 본업으로는 밥 굶기 딱 좋다는 것이 주위의 평가였다. 소프트웨어를 만들어도 용산 등의 전자상가에서는 이를 불법복제해 주는 것이 당연시되던 시절이었고 그나마 취업할 곳도 마땅치 않았다. 그러나 그처럼 어려운 상황에서도 컴퓨터를 하려는 사람들은 있었고 그들이 신규 솔루션을 만들어내고 비즈니스모델을 개척한 결과 오늘날 IT 강국인 한국의 모습이 가능했다. 이렇게 IT 업계에서는 항상 기존의 가치와 체계에서 벗어나 새로운 가치를 창조해내는 이들이 존재해왔는데 이 사람들이야말로 항간에 회자되는 디지털 유목민(Nomad)의 선구자라고 할 수 있을 것이다. 어떻게 보면 최근 몇 년간 국내 IT 업계가 정체해 있는 것은 기존의 성공에 도취해 항상 해체와 창조를 반복해야 하는 노마디즘(Nomadism)을 잃은 결과일 수도 있다. 앞서 본문에서 현재의 어려운 상황을 타개하기 위해 고위험을 무릅쓰고 다른 금맥을 찾거나 또는 기존 가치에 편입되어 자신의 자리를 마련하거나 하는 두 가지 방법을 제시했지만 개인적으로는 좀 더 많은 사람들이 전자의 길을 택해주기를 바란다. 현 상태에 안주하지 않고 일신우일신(日新又日新)하는 모습이야말로 30년도 되지 않는 기간 동안 이 세상을 온통 디지털로 뒤덮은 원동력이며, 진정한 희망은 어려움을 감수하고 새로운 가치를 추구하는 사람들이 많을 때 발견할 수 있는 것이기 때문이다. @ |