태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

나는 한달 동안 휴가를 갈 수 있을까?

2014/08/30 15:38 by 전규현
 All of Software 블로그를 RSS Feed에 등록을 해 놓으시면 편리하게 받아보실 수 있습니다. rss RSS Feed




내가 만약 한달 동안 휴가를 간다면 회사에서는 무슨 일이 벌어질까? 각자 한번 상상을 해보자.

 

내가 있던 없던 상관없이 회사는 돌아갈까? 아니면 내가 관련된 일들이 진행되지 않아서 회사가 마비가 될까? 내가 없으면 회사가 돌아가도 문제지만 내가 있으나 없으나 회사가 아무 없이 돌아가도 불안하다. 혹시 내가 없어도 되는 사람이 아닌가 걱정이 되기도 한다.

 

유지보수가 어렵게 코딩하는 방법이란 책도 있다. 원제는 “How to write unmaintainable code : Ensure a job for life ;-) This essay is a joke!”이다. 책은 조크이지만 내가 없으면 유지보수가 몇배, 몇십배 어려워지는 온갖 다양한 방법을 소개하고 있다. 사실 본인도 유지보수가 어려워지는 방법들이다.

 

년에 한번씩 강제로 한달 동안 휴가를 가야 하는 회사가 있다. 휴가기간 한달 동안 원격지에서 일을 있다는 것이 아니다. 진짜 휴가를 가야 한다. 이런 강제 휴가제도를 만든 이유는 어느 직원이던지 직원이 없어도 회사가 돌아가야 하기 때문이다. 업무의 특수성 때문에 한달 동안 자리를 비울 없는 직원이 있다면 회사의 조직을 바꾸던지 프로세스를 바꿔서 다른 사람으로 대체가 가능하거나 보완이 가능하도록 한다. 누구든지 한달간 휴가를 떠나도 아무런 문제가 없이 해놔야 한다.

 

이런 회사에서는 직원들이 언제든지 짤릴 있다는 불안감을 가져야 할까?

 

가상의 이야기가 있다. 원자력 발전소에서 일하는 홍길동은 절대로 3 이상 휴가를 없다. 홍길동은 오랜 노하우로 적절하게 원자로의 온도를 조절하는 특수한 능력을 가지고 있고 홍길동 외에는 그런 기술이 없다고 하자. 홍길동은 수동으로 온도 제어장치 조절이 가능한데 자동 처리 시스템을 갖추려면 엄청난 비용과 많은 추가 인력이 필요하다고 한다. 회사 입장에서는 비용을 투자 하는 것보다 홍길동만 유지하면 적은 비용으로 발전소 운영이 가능하고 홍길동은 자신이 없으면 발전소가 돌아가지 않는 상황에 자부심을 가지고 있다. 하지만 홍길동은 격무에 시달려서 회사를 그만두거나 불의의 교통사고를 당할 수도 있다. 나라의 발전소에서 높은 연봉으로 데려갈 수도 있다.

 

나는 강연이나 세미나를 자주 묻는다. “지금 당장 퇴사를 해도 회사에 문제가 없는 사람”. 그러면 거의 대부분 손을 드는 사람이 없다. 실제로 퇴사를 해도 문제가 없는 사람이 없을 수도 있고 다른 사람들 눈치를 보기도 한다.

 

반대로 그럼 당장 퇴사하면 회사가 돌아가는 사람손을 들라고 하면 사람들이 당당하게 손을 번쩍 든다. 사람은 떠밀려서 손을 든다. 그러면서 주변에서는 웅성웅성 말들이 많아진다. 약간의 빈소적인 말도 들려온다. 대부분의 회사에서 공통적인 현상이다.

 

우리 주변의 소프트웨어 회사들 중에는 개발자 한두명만 퇴사를 해도 영향을 받는 회사가 많다. 회사의 경영진은 문서화도 잘되어 있고 공유도 되어 있어서 문제 없다고 하는 경우도 있지만 속을 들여다 보면 유지보수에 쓸모도 없는 문서에 공유는 형식적으로 되어 있어서 실제로는 문제지만 쉬쉬하는 경우가 많다. 개발자들도 자신이 없을 회사가 돌아가는 상황을 그렇게 나쁘게만 보지 않기 때문에 이슈로 생각하지 않는다.

 

이러한 현상 때문에 아버지가 돌아가셨는데 상중에도 회사를 나와서 일을 했다는 경우를 들기도 하고 신혼여행도 제대로 못가는 경우도 발생한다.

 

그럼 이런 현상이 회사에는 불리하지만 개발자에게는 유리한 현상일까? 단기적으로는 그렇게 생각할 있지만 장기적으로는 얘기가 완전히 달라진다.

 

나는 당장 퇴사하면 회사가 돌아가는 사람 하루 빨리 정리를 해야 하고, “지금 당장 퇴사를 해도 회사에 문제가 없는 사람 회사에 필요한 사람이라고 얘기한다. “당장 퇴사하면 회사가 돌아가는 사람 많다면 회사가 갑자기 망해도 이상하지 않은 상황이다. 이렇게 망한 회사들은 이런 이유 때문에 망한 것이라는 것을 알아채기는 쉽지 않다.

 

지금 당장 퇴사를 해도 회사에 문제가 없는 사람중에는 정말로 하는 일이 없어서 있으나 마나 사람이 있을 수도 있지만 그건 주제에서 벗어난 얘기고 대부분 동안 해왔던 일들이 문서화가 되어 있고, 공유가 잘되어 있으며 다른 사람이 이어 받아서 처리하는데 문제가 없는 경우다. 이런 사람은 회사의 미래의 프로젝트를 위해서 필요한 사람이다.

 

반대의 경우는 동안 저질러 놓은 일이 많고 자신이 아니면 유지가 된다. 하나 해결하려고 해도 개발자에게 물어봐야 하고, 다른 사람들은 시스템에 대해서 이해하기도 어렵고 개발자가 한두 시간이면 뚝딱 해결할 있는 것을 유지보수 개발자에게 시키면 며칠이 걸려도 해결이 어렵고, 해결을 했다고 해도 다른 문제를 만들어 냈을까봐 두렵다. 회사입장에서는 리스크가 아닐 없없다. 하지만 회사에서는 이런 개발자를 핵심 개발자라고 착각하고 질질 끌려 다닌다.

 

물론 개발자가 일부러 이런 경우는 흔치 않다회사의 문화, 프로세스가 엉망이니 그냥 열심히 하던 대로 개발을 하다 보면 이런 현상은 십중팔구 일어난다. 특히나 개발 능력이 뛰어난 개발자들에게서 이런 현상이 일어난다. 혼자서 많은 양의 코딩을 해내지만 같이 공유하고 리뷰를 해줄 개발자가 없고, 혼자서 제품 하나를 뚝딱 만들어도 유지보수에서 발을 빼기 어렵게 된다. 일부러 유지보수가 어렵게 코딩하는 사람은 없겠지만 작성해놓은 코드를 보면 유지보수가 어렵게 코딩하는 방법이란 책을 공부한 사람처럼 코딩하는 경우도 있다.

 

이렇게 자신의 과거 업무에 발목이 잡혀있는 개발자들은 앞으로 나아가면서 성장하기 어렵다. 회사의 미래 프로젝트, 좀더 어렵고 재미있는 일을 못하게 된다. 새로운 기술이나 지식을 익힐 기회는 점점 줄어들고 매일 하던 반복적인 유지보수에 매달리거나 과거에 해놓은 일의 기억을 헤집는 일을 주로 하게 된다. 자신의 과거의 업무에서 자유로워지는 일은 자신의 가치를 좀더 높이는 일이다.

 

물론 우리나라 회사에서는 이런 것이 통하지 않는다고 주장하는 사람도 있을 것이다. 개발자를 부품으로만 생각하는 회사는 개발자가 없어도 문제없게 만들어 놓은 개발자는 언제든지 자를 있다. 실제 이런 회사도 많이 있고 이런 회사에서 일하는 개발자라면 유지보수가 어렵게 코딩하는 방법 공부하기를 바란다.

 

개발자가 자신이 없어도 회사가 문제 없이 돌아가게 하려면 공유를 해야 한다. 문화적으로 성숙되고 프로세스를 갖춘 회사라면 모든 개발업무가 진행되면서 자연스럽게 공유가 되는 시스템을 갖추고 있다. 중간 중간 리뷰 과정을 거치고 문서화가 되며 지식과 경험이 자연스럽게 여러 사람과 공유가 된다. 이런 프로세스를 뒷받침할 기반시스템도 적절히 갖추고 있다. 공유를 위한 공유가 아니기 때문에 훨씬 자연스럽고 부담도 없다.

 

자신은 어떤가 생각을 해보자. 한달간 휴가를 있을까? 회사의 모든 직원이 각자 한달간 휴가를 있을까? 그렇지 않다면 무엇을 바꿔야 할지 생각해보자.

 

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

전규현 소프트웨어이야기

Trackback Address: http://allofsoftware.net/trackback/354 관련글 쓰기
  1. 잘 보고 가요. 좋은 하루 되세요. ^^

  2. 글을 읽고 나니 생각이 바뀌는군요 ㅎㅎ

  3. 나 없으면 회사가 안 돌아간다는 자신있게 얘기한 제가 부끄러워지네요^^;;

나는 한달 동안 휴가를 갈 수 있을까?

내가 만약 한달 동안 휴가를 간다면 회사에서는 무슨 일이 벌어질까? 각자 한번 상상을 해보자. 내가 있던 없던 상관없이 회사는 잘 돌아갈까? 아니면 내가 관련된 일들이 진행되지 않아서 회사가 마비가 될까? 내가 없으면 회사가..

편한 개발환경이 가져온 부작용

필자는 개발자를 채용할 때 인터뷰 시 칠판을 이용한 코딩 테스트를 꼭 실시한다. 아무리 화려한 이력을 가지고 있다고 하더라도 코딩 테스트를 통과하지 못하면 채용하지 않는다. 코딩 테스트 문제는 정말 간단하다. 숫자를 문자로..

인원 늘면 꼬이는 SW개발문화의 현주소

꽤 오래 전 TV에서 혼자서 무인 자동차를 개발하고 있는 한 대학 교수의 이야기를 본 적이 있다. 20년째 혼자서 연구를 하고 있었고 조금씩 개량해서 그 당시 한적한 국도를 혼자서 달릴 수 있는 수준이었지만 복잡한 도로에서는..

SW교육, 프로그래밍이 핵심 아니다

메르세데스벤츠의 CEO 디터는“이제 자동차는 기름이 아닌 소프트웨어로 달린다”고 말했다. 앞으로의 산업에서 소프트웨어가 차지하는 중요도를 단적으로 나타내는 말이다. 과거 전세계 제조업시장에서 1등자리를내주었던 미국이 세계 최..

개발 경쟁력과 실속없는 화려한 보고서

몇 년 전 C사에서 있었던 일이다. C사가 그동안 진행했던 프로젝트를 경영진에게 보고하기 위해서 직원들이 보고서를 만들 때였다. 그런데 직원들 보고서가 최소 1주일 전에 완성 되어야 한다는 것이다. 경영진이 보고서를 매우 까..

한국에는 가짜 CTO가 많다

소프트웨어 회사에서 가장 중요한 한 사람을 꼽으라고 하면 단연 CTO다. 회사 전체 기술의 총 책임자이며 기술 비전과 로드맵을 이끄는 핵심이다. 회사 비즈니스 전략을 기술에 녹여내는 중추 역할을 한다. 회사 기술을 속속들이..

SW개발, 착한 리더보다 독한 리더가 낫다

몇년전 A사에서 이슈관리 시스템 도입에 대해서 경영자와 의논한 적이 있다. A사는 이슈관리시스템을 사용하고 있지 않았고 버그만 엑셀 파일로 관리하고 있었다. 이슈관리시스템이 꼭 필요한 상황이었고 당장이라도 도입해야 했었다...

개발자에게 재택 근무가 필요한 이유

과거 서울 남부의 경기도에서 소프트웨어 개발자를 채용할 때였다. 서울에서 별로 멀리 떨어져 있지 않은 경기도에 있는 곳인데도 많은 지원자들이 거리상의 문제로 지원을 포기 했고, 특히 서울 북부에 사는 사람들은 인터뷰 시에도..

SW업계에는 망치를 만드는 사람이 많다

누군가 빌딩을 만드는데 망치도 못도 다 만들어 쓴다고 하면 어떤 생각이 드는가? 빌딩을 만드는 사람은 망치와 못은 사다가 쓰는 것이 훨씬 낫다는 것을 누구나 알고 있다. 하지만 소프트웨어 업계에서는 망치와 못을 직접 만들어서..

평등한 토론이 SW혁신 만든다

소프트웨어에서 창의적인 혁신은 천재 한 사람의 머리에서 나오는 것이 아니다. 여러 직원들의 격 없는 평등한 토론에서 탄생하는 것이다. 이런 토론 문화 없이 혁신적인 소프트웨어가 탄생하기는 어렵다. 이는 비단 소프트웨어만의 문..