지난 8년 동안 프로그래머로 일을 해 오면서 다양한 조직에서 여러가지 역할을 수행할 기회가 있었습니다. 지금처럼 일선에서 열심히 프로그래밍만 한 적도 있었고, 한동안은 프로젝트 수주를 위한 제안 작업을 한적도 있었습니다. 또 한 때는 PL(Project Leader)를 수행한 적도 있었습니다.

길지는 않은 시간이었지만 몇 군데 회사를 거치면서 나름대로 프로그래머를 가르는 기준이 하나 생겼는데요, 그것은 다음과 같습니다.

  • 선구자
  • 기여자
  • 일꾼
  • 방해꾼

위 기준은 직급이나 짬밥하고는 상관 없습니다. 오히려 프로그래머의 성향/태도와 더 관련이 있습니다. 우선 저 기준에서 일꾼은 그저 자기의 일을 해내는 사람입니다. 한마디로 "밥값"하는 프로그래머지요. 저는 이 레벨에 속해 있는 사람입니다(방해꾼은 아니고 싶어요. ㅜㅜ). 기여자는 자기 자신의 일 이상을 해내는 사람입니다. 팀에 필요한 도구들을 만들어 내며, 다른 사람들이 풀지 못하는 기술적인 난제들을 풀어냅니다. 선구자는 기여자의 특징 이외에도 비전을 갖고 있습니다. 제품의 3년 후, 5년 후를 내다보는 눈을 갖고 있고 자신 뿐 아니라 팀의 변화에 대해서도 많은 관심과 영향력을 갖고 있습니다.

"방해꾼"은 역량에서 한계를 보이는 데다, 학습 의지(능력이 아니라 의지!)도 없습니다. 당연히 자기 할 일도 제대로 해내지 못합니다. 수준이 낮은 문제에 대해서도 늘 남에게 도움을 요청하기 때문에 다른 사람들에게 도움을 청하고, 결과적으로 팀 전체의 퍼포먼스를 떨어뜨립니다. 문제는 이런 사람이 조직에 오래 살아남아 짬밥이 차는 경우입니다. 저는 짬밥이 많이 찬 방해꾼들이 선구자/기여자/일꾼 수준의 후배 프로그래머들을 조직에서 떠나게 만드는 경우를 여러 번 봤습니다. 이들은 자기가 작성한 Java 코드가 Class Not Found 예외 때문에 실행이 안된다며 후배에게 이걸 고쳐내라고 하는가 하면, 잘못된 지식을 가지고 한참 설교를 하기도 합니다. 이렇게 두 달 정도 당하더니 사표를 쓰더군요. 길게는 3년 정도를 버티는 사람도 봤습니다.

문제를 해결하려면 방해꾼을 "갱생"시키든지, 내보내든지 해야 하는데 전자의 경우가 성공하는 경우는 거의 보지 못했습니다. 대부분 어쩔 수 없이 후자를 수행해서 문제를 해결하거나, 그러지 못하는 경우에는 방해꾼을 다른 팀원들로부터 격리시키기 위해 독립적인 업무를 부여하더군요.

이 글은 어느 지인의 방해꾼에 대한 고민을 듣고 새삼 생각이 나서 쓴 것입니다. 그 분에게는 제가 예전에 써둔 이글을 보여드리는 것 말고는 달리 해드릴 수 있는 말씀이 없더군요. 정답이 될 수는 없겠지만 참고는 하실 수 있겠죠.

아이고, 벌써 출근 시간입니다. ^^;

저작자 표시 비영리 변경 금지
Posted by seanlab

Trackback Address :: http://www.seanlab.net/trackback/44 관련글 쓰기

  1. Subject: 내 맘대로 개발자 분류해보기....

    Tracked from 삶이 열정적이지 않은 건 관심과 사색이 부족하기 때... 2009/08/27 18:04  Delete

    오늘 RSS를 보다가 요즘 생각하고 있던 개발자의 분류법(?) 을 잘 정리한 블로그를 보고 나도 나름대로 정리를 한번 해야겠다는 생각이 들었다.. 이제 나도 개발 10년차에 들어가는 데.. 이제까지 느낀 개발자들은 다음과 같이 나뉘는 것 같다..(적어도 내가 보기에는...^^) - 선도 개발자 : 팀의 기술 및 개발 환경을 선도하고, 개발 방향을 이끌어 가며, 본인의 성과를 쉽게 달성할 뿐만 아니라 다른 팀원들의 성과까지 이...

  2. Subject: 일을 방해하는 프로그래머

    Tracked from 홍환민 블로그 2010/03/21 13:24  Delete

    좋은 글을 봐서 링크를 답니다. 일을 방해하는 프로그래머http://www.seanlab.net/entry/%ED%8C%80%EC%9D%84-%EB%B0%A9%ED%95%B4%ED%95%98%EB%8A%94-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8 닭이 먼저입니다http://wiseheart.textcube.com/108 iPhone 에서 작성된 글입니다.크리에이티브 커먼즈 라이센스이 저작물은 크리에이티브 ...

댓글을 달아 주세요

  1. Harry 2009/08/27 08:50 Address Modify/Delete Reply

    아..제가 마침 요새 느끼고 생각했던 기준과 매우 비슷하네요...^^
    저는 선도 개발자/실행 개발자/노력파 개발자/무기력 개발자로 구분했는데요..

    선도 개발자는 님이 말씀하신 선구자 + 기여자의 모습이고,
    실행 개발자는 정확히 일꾼 프로그래머와 같습니다..
    방해꾼을 저는 노력파 개발자와 무기력 개발자로 좀 더 구분했습니다..
    노력파 개발자는 노력은 하지만 그 노력에 비해서 결과가 좋지 않은 개발자를 이야기 합니다..
    공부도 하고 열심히 하기도 하지만, 코드나 일정, 커뮤니케이션 등에서 문제를 가끔 일으키기도 합니다..
    무기력 개발자는 말씀하신 방해꾼 정도의 프로그래머이겠지요...^^

    어느 정도 경력이 있으신 개발자 분들은 거의 다 비슷한 생각을 가지고 계시리라 생각이 듭니다..
    그렇지만, 방해꾼(무기력 개발자)은 이런 생각조차 하지 않을 수도 있다는 것이 우울합니다...

    • Favicon of http://www.seanlab.net BlogIcon seanlab 2009/08/27 09:06 Address Modify/Delete

      네 Harry 님.

      무기력 개발자(방해꾼)는 정말 갱생(?)의 여지가 없는 것 같습니다. 말씀하신 것처럼 대부분 자신의 문제를 깨닫지 못하는 것 같아요. 주변에서 충고를 해줘도 충고한 사람을 미워하기만 합니다. ㅜㅜ