개발자의 파워는 어디에서 오는가?

 
By 2012년 7월 11일 
TAGGED :

소프트웨어 회사에서 흔히 볼 수 있는 가장 비효율적인 현상 중 하나는 “회사에서 가장 뛰어난 개발자를 관리자로 써먹는 것”이다.

뛰어난 개발자를 관리자로 써먹는 이유는 여러 가지겠지만 가장 주된 이유는 회사에서 개발자로서 꾸준히 성장할 수 있는 “Technical Career Path”를 보장해주지 않기 때문이다.

우리나라 현실에서는 회사에서 경력이 쌓이고 좀더 중요한 일을 하려면 팀장이 되고 관리자가 되어야 한다. 그래야 개발자들을 거느리며 힘을 행사할 수 있게 된다. 하지만 일단 팀장이나 관리자가 되고 나면 개발에 전념할 시간은 점점 줄어들게 된다. 그렇다고 개발을 포기하고 관리에만 전념하기도 어렵다. 한편으로는 관리를 포기하면 회사 내에서 파워가 줄어들게 될 까봐 걱정을 하기도 한다.

흔히들 개발자는 행정적인 파워가 없어도 기술력에 따른 카리스마에서 파워가 생긴다고 하지만 이는 실제 개발 현장에서는 공허한 얘기처럼 들린다. 소프트웨어 선진국에서는 개발과 관리는 잘 분리되어 있고 개발자가 자기 부서를 가지고 관리를 하지 않아도 개발자는 개발력에서 나오는 파워를 상당히 가진다. 이는 관리자가 자기 마음대로 터치를 못하게 되어 있다. 하지만 우리나라는 개발자가 조직구조상 관리자 밑에서 제대로 힘을 못쓰는 경우가 흔하다.

선진화된 소프트웨어 개발조직은 관리라는 것이 그렇게 많이 필요하지 않다. 하지만 그렇지 못한 회사는 관리자가 꼼꼼히 관리를 해줘야만 조직이 제대로 돌아가게 된다. 그러다 보면 뛰어난 선임 개발자들이 개발과 관리를 넘나드는 사이에 기술과는 점점 멀어지게 되고 돌아올 수 없는 강을 건너는 경우가 흔하게 발생한다.

회사에서는 결국 100원짜리 개발자를 10원짜리 관리자로 만드는 셈이 된다. 그렇다고 연봉을 10원을 주는 것이 아니지만, 개발자 역량의 10%밖에 활용하지 못하는 셈이고 미래가치까지 생각하면 그 손실은 더욱 커진다.

물론 개발자 중에는 관리능력도 뛰어나서 관리자 역할을 훌륭하게 수행해 내는 사람도 있다. 이 경우 개발자가 개발보다 관리에 관심이 많고 관리 능력이 더 뛰어나다면 관리자로 전환하는 것도 좋은 방법이다. 하지만 개발과 관리 둘 다 능력이 좋다면 개발을 선택하는 것이 좋을 것이다. 이런 경우 대부분 개발에 집중할 때에 부가가치가 더 높으며 개발은 다른 사람으로 쉽게 대체할 수가 없기 때문에 더욱더 가치가 높다. 둘 다 훌륭하게 수행해내기를 바란다면 욕심이다.

뛰어난 개발자를 계속 개발자로 있게 하려면 회사에서 개발자의 경력을 보장해줘야 한다. 말뿐이 경력보장이 아니고 개발자로 꾸준히 성장할 수 있는 Position을 만들어야 하고 연봉에서 충분한 대우를 해줘야 하고 관리자 이상의 파워를 가질 수 있는 제도를 마련해줘야 한다. 그렇지 않는다면 뛰어난 개발자들이 개발과 관리 사이에서 끊임없이 고민하다가 많은 개발자들이 관리자로 전환되면서 회사에 손해를 끼치게 될 것이다.

수평적인 조직구조를 가진 외국 회사들과 다르게 수직적인 조직구조를 가지고 있는 우리나라 회사에서 개발자에게 힘을 실어주기란 쉽지 않다. 그래서 개발 문화가 바뀌어야 한다. 우리도 이제 수직적인 조직구조에서 탈피를 해야 한다. 전문성이 존중되는 수평적인 조직구조를 받아들여야 한다. 전문가들의 의견과 결정을 단순히 윗사람이라는 이유로 관리자가 뒤집는 문화는 바꿔나가야 한다. 이런 문화의 탈바꿈과 제도적인 뒷받침이 없다면 개발자는 계속 관리자로 바뀌게 될 것이다.

현실적으로 쉽지 않은 일임을 공감한다. 개발에 대한 전문성을 인정해주는 분위기가 널리 퍼지고 개발자가 개발 전문성에서 오는 파워를 가질 수 있어야 한다.

페이스북으로 댓글을 남기실 수 있습니다.
THE AUTHOR
전규현 (gracegyu@gmail.com, allofsoftware.net) | 소프트웨어 컨설팅 회사인 ABC Tech(www.abcswcon.com)의 수석 컨설턴트이다. 연세공대를 졸업하고 18년 간 한글과컴퓨터를 시작으로 안철수연구소에까지 이르면서 수많은 소프트웨어를 개발하였고 Programming Engineer, Project Leader, Project Manager, CTO 등 소프트웨어 개발 분야의 다양한 역할을 두루 경험했다. 현재는 소프트웨어 개발 컨설턴트로서 소프트웨어 회사가 갖고 있는 소프트웨어 개발에 관련된 문제들을 해결해 주는 일을 하고 있다. Tech it 독자들의 구체적인 문의는 언제든지 환영합니다.