종종 현업 개발자들이랑 만나면, 듣는 이야기가 있습니다.
 
   "개발자로써 커리어를 관리하기 어렵다."
   "지금 하고 있는 개발 스킬을 다른 회사에서 활용할 수 있을까?"
 
개발자들끼리 조금 진지하게 대화를 나누면 나오는 주제입니다. 물론 저도 이런 고민을 수도 없이 했는데요. 종종 "개발자로써 커리어를 관리하기 어려운 이유가 무엇인가"에 대해 생각해 봤습니다. 가끔은 다른 회사의 임원이나 관리자분들을 만날 기회가 있었는데, 그 분들과 대화를 나누니 무엇인가 퍼즐이 맞춰진다는 느낌을 받았습니다.
 
그 퍼즐은 바로 "개발자의 커리어 관리"입니다.
 
많은 분들이 취준생들에게 어찌보면 포괄적이고 두루뭉실한 조언을 많이 합니다. 그것은;
 
    "열심히 노력해라. 노력한 만큼 보상이 주어지는 게 소프트웨어 개발이다."
    "개발자로써 실력을 키우도록 노력해라."
 
틀린 말은 아니지만, 저에겐 뭔가 공허한 소리로만 들리는데요. 그 이유에 대해 조금 더 말씀드리겠습니다.
 
개발자들은 부서장들의 성과를 위해서만 존재한다
 
개발자로써 커리어를 관리하고 키우기 전에 먼저 알아야 할 핵심이 있습니다.
 
   "개발자들은 부서장들의 성과를 위해서만 존재한다."
 
한국에 있는 대부분의 IT 회사들은 위에서 언급한 규칙에 따라 움직이게 되어 있습니다. 여러분들은 여러분의 상사를 위해 존재한다는 말입니다. 이런 문장을 읽으면 물론 불쾌한 느낌이 들기 마련인데요. 조금은 듣기는 거북해도 맞는 말이란 생각이 듭니다. 쓴 약이 몸에도 좋다는 말이 있잖아요.
 
매니저들이나 부서장(대부분 개발자들의 상사)들은 개발자들에게 다음과 같이 조언합니다.
 
   "개발자로써 역량을 키우는게 중요하다."  
 
개발자들이 매니저에게 이런 말을 들으면 "그래, 개발자로써 실력을 키우는 게 중요하지. 열심히 공부해야 겠다"란 생각이 들 것입니다. 그런데 부서장들의 속 마음을 디버깅해보면 그들이 정말로 하고 싶은 메시지는 다음과 같습니다.
 
   " (나의 성과를 위해) 개발자로써 역량을 키우는게 중요하다."  
 
부서장 입장에서는 자신의 성과를 달성하는게 가장 중요합니다. 첫 째도 성과, 두 번째도 성과입니다. 이를 위해 필요한 조건 중의 하나가 개발 역량인 겁니다. 그런데 부서장은 한술 더 떠서 다음과 같은 이야기를 합니다.
 
   " 개발자로써 전문성을 유지하고 키워나가는 게 중요하다."  
 
하지만 이들의 속마음을 들여다보면 "나의 성과를 이루기 위해 내 부서에 있는 개발자들이 전문성을 키웠으면 한다" 진심입니다.
 
니가 나를 위해 일하지 않고, 니가 크려고 해!
 
그런데 가끔 개발자 중에 전문성을 키우다가 "개발자가 소속된 부서의 성과"를 내는 것 이상의 실력을 키우는 경우도 있습니다. 개발자로써 역량을 끌어올리다 보니 전문성이 계속 증진되는 경우입니다.
 
예를 들면, 리눅스 커널에 컨트리뷰션(기여)를 한다던가, 컴파일러 코드를 개선해 뭔가 성능을 개선하는 것을 들 수 있습니다. 가끔은 공부한 내용을 잘 정리해 책을 출간하기도 합니다.
 
그런데 거의 대부분의 부서장들은 자신의 성과에 직접적인 결실을 맺을 수 없는 개발 역량을 키우는 것 별로 좋아 하지 않습니다. 물론 책을 쓰는 것을 싫어하는 분들도 많습니다.(이 사실을 제가 출판사 사장님께도 들은 내용입니다.) 그 이유는 간단합니다.
 
    "자신을 위해 일을 하지 않기 때문입니다."
 
부서장들은 자신도 모르게 이런 생각이 들 겁니다.
 
   "니가 나를 위해 일하지 않고, 니가 크려고 해!"
   "그건 내가 용납할 줄 알아" 
 
극단적으로 말해, 부서장은 자신의 성과를 위해 개발자 여러분이 어떤 개발 역량을 갖추었는지 관심을 갖습니다. 자신의 성과를 위해 여러분이 존재할 뿐인 것이죠.
 
대부분 IT 업체는 부서장의 성과를 중심으로 운영됩니다. 이 점을 염두에 두면 그 동안 이해되지 않았던 많은 부분이 명쾌해질 것입니다.

+ Recent posts