신현묵 오픈헬스데이터 이사가 블로그에 게재한 글을 편집한 뒤 모비인사이드에서 한 번 더 소개합니다.
![이미지: shutterstock](http://ec2-13-125-22-250.ap-northeast-2.compute.amazonaws.com/wp-content/uploads/2016/08/shutterstock_381688312.jpg)
‘이직’이라는 화두는 샐러리맨에게는 매우 무섭게 다가온다. 평생 직장이라는 의미가 사라진 시대에 있어서 직장생활 중에 많이 만나게 되는 단어이다. 더군다나, 소프트웨어 개발자들에게는 매우 일상적으로 발생한다. 그러니, 이직을 너무 두려워하지 말자. 오히려 평소에 이직에 필요한 스킬과 준비를 매우 당연하게 해야 한다.
개인적으로 소프트웨어 관련 학과에서는 ‘이직’과 관련된 커리큘럼을 하나 만들어 두거나. 아니면, 교양과목이라도 있어야 된다고 생각한다.
필자도 여러 기업에 입사하고 이직을 고민하는 과정을 똑같이 경험했다. 더 큰 경험으로는 기업을 창업하고 직원을 채용하고, 퇴사하는 과정도 같이 경험했다. 돌이켜 생각해 보면 직원의 입장과 중간 관리자의 입장, 경영진과 최고 경영진의 입장에서의 ‘이직’을 바라보는 관점이 매우 다르다.
이번 이야기에서는 이런 ‘이직’의 관점을 ‘소프트웨어 개발자’의 입장에서 이야기해보자. 물론, 이번 이야가의 내용은 전적으로 필자의 주관적인 경험을 바탕으로 만들어진 내용들이기 때문에 매우 주관적이라는 것을 먼저 이야기하겠다.
다만, 작지 않은 경험을 적은 기업의 신입직원이었을 때부터, 벤처기업의 CEO, 중견기업의 CIO의 역할을 해보고 느낀 점 들을 몇 가지 정리하여 본 것이다.
이직이란 단어는 언제 만나게 될까?
이직이라는 단어를 머릿속에 떠올리게 되면서 당연하게 고민할 것이다. 더 좋은 조건을 제시하는 회사로 자리를 옮기거나, 현재 있는 직장에서 하는 일이 마음에 들지 않거나, 특정한 사람이나 환경 때문에도 이직이라는 단어를 떠올릴 수 있다.
자, 이 글을 읽는 독자들은 ‘이직’을 고민하는가?
혹은 이직이라는 단어에 대해서 어떻게 생각하는가?
직장을 너무 쉽게 바꾸거나, 특정한 이유에 너무 집착하여, 너무 쉽게 결정하지 않기를 바란다. 다만, 소프트웨어 개발자들 중 한 회사에 오래 근무할 수 있는 여건이 되는 사람은 매우 극소수에 해당된다고 생각한다. 대부분은 프로젝트가 종료되거나 의미가 없어지면서 이직에 대해 고민하게 된다. 너무도 자주 만나게 되는 이 단어에 대해서 나름 의미와 기준점을 잡아두는 것이 좋다. 각자 자신이 걸어가야 할 로드맵이나 기본적인 원칙을 한, 두가지 쯤 정해 두는 것이 좋다.
필자의 경우에는 초보 때에 세웠던 원칙이 몇 가지 있었고, 나름 경험이 많아지면서 조금씩 그 기준을 추가하게 됐다. 필자의 사례를 들어보자.
필자는 병역특례로 사회생활 초년병의 생활을 시작했다. 그래도 나름 기준은 있었다. 그것은 앞으로 소프트웨어 개발 일을 계속하기 위해서 ‘내가 어떤 기준으로 회사를 찾아야 하는가’에 대한 것이었다. 내가 세운 대원칙은 딱 하나였다. 하드웨어 작업을 병행하는 일을 한다는 것을 원칙으로 했다.
그래서 선택한 기업에서 처음 내게 할당된 일은 Z80으로 음성보드를 만들고, 적외선 센서로 터치스크린을 만드는 파트에서 Z80과 i8051의 크로스 어셈블리로 프로그래밍하는 일이었다. 내가 세운 큰 대원칙에는 맞는 일이었고, 일 자체에 대해서도 매우 큰 매력을 가졌다.
하지만, 그 업체에서 병역특례 일을 하다가 노동현장(?)의 부조리를 맞이 하게 되면서 회사를 그만두게 됐다. 그 당시 얻은 경험 중의 하나는 ‘부조리한 노동현장’은 빨리 떠나라는 개인적인 원칙도 세웠다. 그 기준은 나중에 기업을 운영하면서도 가장 부끄러워할 경영진의 몫이라는 것을 인지하게 된 것도 가장 큰 경험이었다. (이런 경험은 차라리 초보나 신입 때에 경험하는 것이 그나마 불행 중 다행이며, 사회의 쓴맛을 제대로 보았다고 하겠다. 무료 법률상담도 했고, 노무담당 문의도 했었다.)
그 후에 경력직 프로그래머로써 제대로 된 취업을 할 때에도 나름 원칙을 세웠다.
병역특례 일을 하다가 그만두고 군대를 다녀왔을 당시에는 윈도즈 어플리케이션의 개발이 매우 어렵던 시절이었기 때문에 나름 몸값을 요구할 수 있었다. 그래서 프로그래밍을 하는 데 조금은 특이한 솔루션을 활용하는 경험을 하고 싶었고 그것을 중요한 원칙으로 삼았다.
당시에 선택할 수 있는 기업은 세곳이었다. 하나는 용산 근처의 게임 개발사, 건대 부근 한국전력에 소프트웨어를 개발해서 판매하던 회사, 그리고 하나는 건축 소프트웨어 개발을 하는데 Auto-Cad의 ARX아키텍처 기반의 프로그래밍과 윈도즈 개발을 하는 일이었다.
모든 회사 면접이 통과된 이후 고민했다. 가장 적극적이었던 회사는 게임회사였다. 지금 기억으로도 90년대 중반에 팔레트 애니메이션을 능숙하게 조작하는 내 스킬을 보고 매우 탐냈던 게임업체의 사장이 기억난다. 그 먼 거리에서 인천 집까지 태워주면서, 같이 일하자고 설득했다.
하지만, 결정적으로 그 당시 결혼을 한 입장에서 ‘급여’가 가장 큰 걸림돌이었다. 전혀 엉뚱하게도 ‘급여’를 가장 많이 준다는 ‘회사’를 선택했다. 바로, 건축 소프트웨어 개발회사였다. (당연하지만, ‘급여’는 언제나 샐러리맨에게는 최고의 선택 기준이 될 것이다.)
아마도, 당시에 급여는 매우 적지만, 그 게임업체에 들어갔다면 운명이 매우 많이 바뀌었을 것으로 생각한다. 당시, 병역특례를 하다가 군대를 다녀오면서 네트워크 프로그래밍에 대한 스킬까지 겸비한 필자가 게임업계로 들어갔으면 나름 재미있는 미래가 진행되지 않았을까 한다.
하지만, 그 당시에 급여도 나름 가장 많았지만, 최고의 선택 기준은 ‘독특한 기술’에 대한 호기심이었다. 더군다나, 윈도즈 개발자로서 나름 이름을 알리기 시작하던 시기였기 때문에 필자의 선택은 옳았다고 생각한다.
이때 중요한 화두는 ‘급여’와 ‘윈도즈 개발환경’, ‘독특한 콘셉트’이었다. 당시 회사는 AutoCad에서 동작되는 한글 소프트웨어와 설계용 지원 유틸리티를 개발하는 업체였기 때문에 선배 개발자들과의 경험이 매우 좋았다. 선배 개발자와 개발실장으로 계시는 분들이 20대 중반이었던 필자를 매우 아껴주었던 기억이 난다.
최소한 그 계통에서 5년 이상 일을 했던 선배들이 몇 분 계셨고, 그분들에게 생각보다 많은 것을 얻을 수 있었다. 정말, 훌륭한 선배들은 언제나 초보와 신입들에게 큰 도움이 된다.
![이미지: shutterstock](http://ec2-13-125-22-250.ap-northeast-2.compute.amazonaws.com/wp-content/uploads/2016/08/shutterstock_412311502.jpg)
필자가 신입시절에 크게 결정한 것은 ‘장래성’이 아니고, ‘독특한 개발’을 경험할 수 있는 환경을 찾았다. 새로운 개발환경을 초기서부터 세팅하는 것도 포함되어 있었다.
‘개발자가 이직을 결정해야 할 때’는 언제 인가하고 후배들이 가끔 질문을 해오거나 자문을 구해올 때가 있다. 그렇다면, 소프트웨어 개발자가 이직을 생각하는 때에 대해서 어떤 것을 고민해야 하고, 이직을 결정하기 위해 중요한 사항은 어떤 것이 있을까?
물론, 이직은 모든 분야에서 공통적으로 발생하는 요소이기 때문에 전부를 이야기할 수 없겠지만, 가장 좋은 이직이란 무엇인지 필자의 경험을 중심으로 이야기해보자. 다음에 나열하는 요소들은 ‘이직’을 고민하게 될 가장 큰 가능성을 가지고 있다.
첫째. 자신의 전문성에 대해서 고민하기 시작할 때
보통은 자기 계발에 충실한 사람의 경우에 자신이 제대로 된 전문성을 확보하고 있는지에 대해서 의문점이 생기는 시점에 ‘이직’을 고민하게 된다. 이 일을 계속하는 것이 미래에 ‘전문성’을 가질 수 있느냐에 대해서 의문을 가지기 시작할 때부터이다.
둘째. 조직원들 간에 트러블이 발생하거나, 말도 안 되는 상사의 권위에 질렸을 때
이 부분은 일반 직장과 동일하다. 아무리 전문성이 보장되고, 일이 괜찮다고 하더라도 동료들과의 문제가 발생되는 부분은 어느 직종이나 동일하다.
필자는 소프트웨어 개발일을 하면서도 벤처기업의 경영진 역할과 중견 병원그룹의 CIO 생활을 하면서 다양한 직종의 사람들과 일을 해보고 인사권을 가지고 있었지만, 모두 동일하게 문제가 발생하는 것은 ‘직원들’ 간의 문제나, 중간 관리자의 전횡 등이 가장 큰 이유가 되었다.
셋째. 프로젝트가 종료됐을 때
생각보다 하나의 프로젝트가 종료되면서, 소프트웨어 품질이나 개발에 대한 연속성이 제대로 이어지지 않는 경우, 이직을 생각하게 된다.
재미있고 즐거운 개발을 필자가 주창하는 이유 중의 하나가 이러한 ‘프로젝트 종료’ 시의 이직에 대한 고민을 하지 않기 위해서이다. 하지만, 대부분의 프로젝트들은 실패하거나 어려움을 겪는 경우가 다반사이기 때문에 프로젝트가 종료될 때에 이런 충동을 느끼게 된다.
이상 3가지의 기본적인 이슈들은 직장생활을 하면서 매번 만나게 되는 고민이고, 3가지의 고민이 모두 발생한다면, 당연하게 ‘이직’을 오히려 권해야 할 사항이 될 것이다.
자, 이직에 대해서 고민하고, ‘이직’을 결정했다면, 미련없이 이직을 준비하자.
‘이직’을 준비하는 것에 있어서 가장 중요한 것은 옮겨갈 회사를 잘 고르는 것이 가장 크다. 그리고 퇴사를 하는 회사의 경우, 최소한 1개월 정도의 업무 인수인계 작업은 당연하게 고려해야 한다. 물론, 제대로 된 체계가 있는 회사라면 직원들의 이직 프로세스가 잘 잡혀있기 때문에 너무 걱정할 필요없다.
대부분의 조직은 누구 한 사람이 나간다고 하더라도, 그 프로젝트가 잘못되는 경우는 거의 없다. 본인의 마음이 떠난다면 ‘이직’을 진행하는 것이 맞을 것이다.
너무 걱정하지 말고 이직을 결심하고 진행하라고 조언하고 싶다.
다만, 필자는 ‘이직 시에 적합한 회사’를 찾기보다는, ‘이직 시에 안 좋은 회사’를 피하는 방법을 먼저 터득하라고 조언하고 싶다.
2부에서 ‘이직 시 적합한 회사를 찾는 방법’에 대해 소개합니다.