개발팀장 찾습니다
우리나라에는 개발팀장이라는 직급이 있다. 구인 공고를 살펴보면 개발팀장 찾습니다라는 제목이 많이 보인다. 이는 특히 규모가 작은 조직에서 더욱 그렇다. 인원이 많은 회사라고 해도, IT 부서의 규모가 상대적으로 적은 조직에서도 마찬가지다.
코딩을 좋아하는 개발자들이 경력이 쌓이면 팀장을 맡아달라는 회사의 요구를 듣게 된다. 많은 경우 회사의 이런 제안에 대해 거부 반응을 보인다. 이유는 개발팀장 이라는 네글자로 명명된 직급이 그 역할에 있어 애매모호하기 때문이다.
여기에는 많은 역할들이 뒤섞여 있다. 부하 직원들도 관리해야 하고, 시스템을 설계하고 신입들 멘토링도 해야 하며, 프로젝트를 스케줄에 맞게 끝내도록 조정해야 한다. 쉽게 말해 아직 기능이 분화되지 않는 역할 취급을 받는다. 그만큼 소프트웨어 개발 문화가 가야할 길이 멀다는 뜻이기도 하다. 그렇다보니 어느 정도 나이가 차고 나면, 관리자로 뺑뺑이 돌다가 결국은 치킨 가게를 차린다는 자조도 나오는 것이다.
회사에서 오래 함께 한 개발자가 퇴사하면 회사 입장에서도 비용이 만만치 않게 드는 문제가 있다. 이는 금전적 비용 뿐만 아니라 시간적인 비용이기도 하다. 다른 개발자가 퇴사자의 역할을 이어 받을 수 있을 만큼 업무에 능숙해지려면 시간이 걸리기 때문이다.
문제는 커리어패스다
문제는 커리어패스다. 회사는 개발자들에게 스스로의 커리어를 성장시켜 나갈 수 있는 로드맵을 제시해주어야 한다. 그리고 이 들이 스스로를 성장시켜 나가도록 독려해주고 환경을 만들어 주어야 한다. 단순히 “개발팀장이 되어주세요” 한 마디로 퉁칠 수 있는 것이 아니다.
“개발팀장” 이라는 직급은 다음과 같이 나눠져야 한다.
- 리드 개발자
- 피플 매니저
- 프로젝트 관리자
리드 개발자는 리드 프로그래머 또는 데브 리드 라고 불리는 역할이다. 영향의 범위는 일반 개발자 보다 넓지만, 본질은 개발자다. 실무자 트랙을 계속 밟고 나간다면, 이 역할을 거쳐 CTO 역할로 나아가게 된다.
피플 매니저는 사람을 뽑고, 주어진 일을 제대로 수행하고 있는지 평가하는 등의 관리 업무를 하는 사람이다. 조직 관리와 관련된 작업을 주 임무로 하고 있으나, 개발 작업에 대한 이해도 함께 가지고 있어야 한다. 어쨋든 본질은 관리자이다. 관리자 트랙을 계속 밟고 나간다면, 이 역할을 거쳐 VP Engineering 로 나아가게 된다.
프로젝트 관리자는 위의 두 트랙과 궤를 달리한다. 프로젝트 관리자는 프로젝트 수행을 통해 결과물을 납품하는 것을 주 임무로 하는 역할이다. 이 역할은 프로그래머 직군과 다르므로 애초에 분리를 해야 한다. 이 쪽의 커리어패스에 대해서는 자세히 알지 못하나 관련 직업 구분에 대해서는 예전에 써뒀던 글이 있으니 참고하면 좋을 듯 하다.
한시적인 겸업
매니지먼트와 실무자라는 두 트랙으로 업무를 분리하고 나면, 각각에 맞는 사람을 채용할 수 있는 확률이 더욱 높아진다. 직원 입장에서도 본인의 업무 범위를 더욱 명확히 할 수 있으니 서로가 좋은 결론인 것이다.
다만 몇 명 안되는 소규모 개발팀에서는 예외가 적용되야 한다. 하지만 이는 어디까지나 한시적인 것임을 명시해야 하고, 여러가지 역할을 겸임함으로써 발생하는 오버헤드에 대한 배려가 있어야 한다. 이후 사업 및 팀의 성장과 함께 겸임했던 역할을 다른 사람에게 위임하는 등의 역할 분화가 뒤따라야 할 것이다.
참고글
-
[씨넷코리아 우리나라 SW회사엔 Technical career path가 없다.](http://www.cnet.co.kr/view/6047) - SW 개발자의 미래 - All of Software
- Lead Programmer
- Program Management