조인트 까이는 개발자

전문가 칼럼입력 :2015/08/18 07:39    수정: 2015/09/06 16:12

임백준 baekjun.lim@gmail.com

오키(OKKY) 운영자 허광남씨를 팟캐스트 방송에 초대해서 국내 SI 현황에 대한 이야기를 나누었다. 오키는 잘 알려진 국내개발자 커뮤니티다. 우리나라의 소프트웨어 개발환경에서 SI가 차지하는 비중이 높다는 사실, SI 개발환경이 열악하다는 이야기는 오래 전부터 알고 있었다. 그럼에도 불구하고 허광남씨가 들려준 에피소드는 충격이었다.

이런 이야기다. ‘갑’의 입장에 있는 사람이 소프트웨어 개발을 하는 하청업체 개발자에게 어떤 요구를 했다. 개발자는 주어진 시간 내에 그런 작업을 하는 것이 불가능하다고 말했고, ‘갑’은 개발자에게 닥치고 시키는 일을 하라고 말했단다. 상식적으로 보면 이런 폭언도 충격이지만 이게 전부가 아니다.

다음 날이 되었을 때 ‘갑’이 원했던 기능은 제대로 동작하지 않았다. 그러자 ‘갑’은 사람들이 보고 있는 공공장소로 개발자를 불러내었다. 그리고 호통을 치며 그의 정강이를 걷어찼다. 속된 말로 “조인트를 깐” 것이다. 군대에서라도 일어나지 말아야 할 일이 사회에서, 프로그래머를 대상으로 일어난 것이다. 아직 전부가 아니다. 개발자들이 이런 처우를 받으면서도 오히려 (프로젝트를 제 시간에 끝마치지 못했다는) 죄책감을 느끼며 키보드를 두드린다는 이야기가 내게는 진정 충격이었다.

얼마 전인 7월 8일 미국에서는 뉴욕증권거래소(NYSE)의 거래가 무려 3시간 38분 동안 전면 중단되는 심각한 사태가 벌어졌다. 막연하게 “기술적 고장(technology glitch)”이라고 알려졌던 사태의 원인은 다음 날인 7월 9일이 되어서야 설명되었다. 7월 11일에 소프트웨어 업그레이드가 예정되어 있었기 때문에 8일 아침에 일부 시스템에 대한 제한적인 업그레이드가 적용되었다. 그 과정에서 예상치 않은 문제가 발생하여 시스템 전체가 엉망이 되어버린 것이었다.

컴퓨터 시스템에서 버그가 발생하는 것은 있을 수 있는 일이지만 이 사건은 정도가 심했다. 특히 뉴욕증권거래소처럼 전 세계의 금융과 밀접하게 연결되어 있는 컴퓨터시스템에서 이렇게 아마추어 같은 문제가 발생했다는 것은 좀처럼 납득하기 어려운 일이었다.

일주일이 지난 후 뉴욕타임스는 사태의 원인을 분석한 다음 이런 제목의 기사를 실었다. “뉴욕증권거래소의 시스템 실패는 직원해고에 대한 관심을 끌고 있다(New York Stock Exchange system Failure Draws Attention to Staff Cuts)” 그리고 이렇게 말했다.

“지난 주 거래 도중에 뉴욕증권거래소의 시스템이 동작을 멈추었을 때, 과거에 거래소에서 발생한 기술적인 문제를 해결해오던 고참직원들은 회사에 남아있지 않았다. 2012년에 ICE가 뉴욕증권거래소를 합병한 이후 이 회사는 거래소의 직원을 수백 명 해고했다. 해고된 직원 중에는 거래소가 보유했던 최고 수준의 기술직원들이 거의 모두 포함되어 있었다.”

시스템 붕괴의 이유는 간단했다. ICE가 NYSE를 합병했을 때 그들은 합병된 회사에 남아있는 개발자들의 가치를 과소평가한 것이다. 오랫동안 거래소의 컴퓨터시스템을 개발하고 관리해온 사람들을 망설임 없이 거의 모두 해고했다. 비용절감이라는 이유를 내세웠겠지만, 그러한 오판으로 인해서 지불해야 하는 비용은 크고 혹독했다. 거래소가 오랫동안 쌓아올린 지적, 기술적 재산은 떠나가는 개발자와 함께 허공으로 흩어졌고, 그로부터 3년 뒤에 거래소는 아무 것도 아닌 기술배포조차 제대로 하지 못하여 금전적 손실을 야기하며 체면을 구겼다.

다시 원래 이야기로 돌아가 보자. 개발자에게 시키는 대로 일하라고 막말을 하고, 물리적인 폭력까지 행사한 ‘갑’의 이야기를 들으며 화가 난 지점은 막말과 폭력이 아니다. 그렇게 몰상식한 일은 거론하고 싶지도 않다. 정말 참기 어려운 부분은 프로그래머의 노동이 걸레를 쥐어짜면 나오는 물과 같다고 생각하는 ‘갑’의 착각이다. 개발의 ‘개’도 이해하지 못한, 바닥이 보이지 않는 무식한 기운이 뉴욕에까지 느껴진다.

개발자를 개발자답게 대접하지 않으면 ‘갑’도 소프트웨어답지 않은 소프트웨어를 손에 넣을 수밖에 없다. 그런 간단한 공식을 이해하지 못하는 걸까. 국내 SI 현장에는 개발자의 컴퓨터가 인터넷에 연결되어 있으면 일과 시간에 ‘일’을 하지 않고 놀까봐 인터넷 연결을 끊어놓는 경우까지 있다는 이야기도 들었다. 축구선수들이 “축구를 하지 않고 뛰어다닐까봐” 발에 족쇄를 채웠다는 이야기보다 황당하다.

소프트웨어 기술은 비즈니스를 거드는 변방의 장식물이 아니다. 우리는 이미 업종과 무관하게 소프트웨어 자체가 비즈니스이고 비즈니스가 소프트웨어인 시대를 살고 있다. 증권거래소에서 주식을 중개하는 거래인보다 시스템의 성능과 안정성을 보장하는 기술자가 더 핵심적인 인력이 된 것은 이미 오래 전의 일이다.

주식거래만이 아니다. 모든 비즈니스가 소프트웨어 기술을 기반으로 하지 않으면 경쟁력을 갖기 어렵다. 그런 시대적 흐름을 읽지 못하면 핵심 개발자를 모두 해고해도 아무 일이 없을 거라고 믿은 ICE의 애잔한 착각을 따라하게 된다. 시스템을 개발하고 관리하는 개발자들이 회사의 가장 핵심적인 재산이라는 사실을 인식하지 못하고 헛꿈을 꾸는 것이다.

관련기사

이런 면에서 개발자들이 우르르 몰려와서 소프트웨어를 개발하고, 프로젝트가 종료되면 소수의 인원만 남기고 모두 바람처럼 떠나는 국내 SI의 모습은 ICE가 저지른 실수를 공식적으로 되풀이하는 하나의 거대한 소동처럼 느껴진다. 지적, 기술적 재산의 축적이 발생하지 않고, 생색내기와 책임전가만이 무성하다. 나라 전체가 거대한 ICE처럼 행동하며 경쟁력을 상실해나가는 것이다.

이 정도면 정치가 개입해야 옳다. 중간이 끊어진 다리를 향해 달리는 SI 열차의 폭주를 멈추고, 지금부터라도 정상적인 철로를 이용하도록 방향을 바꾸어 주어야 한다. 그런 일은 개인이나 일부 기업의 힘으로 할 수 있는 일이 아니다. 하청을 법으로 금지시키고, 야근수당 없이 야근을 강요하는 관행을 철폐하고, SI 프로젝트보다 사내(in-house) 개발자에 의한 개발을 장려하고, 프로젝트 단가와 개발자의 임금을 현실화해야 한다. 개발자가 즐겁지 않은 사회는 미래가 없다.

*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.