2010년 3월 4일 목요일

개발자의 야근은 공짜?

소프트웨어 회사의 일들은 대부분 사람, 특히 개발자에 의존하는 일이 많습니다.
따라서 인건비는 가장 큰 비중을 차지하는 고정비입니다.
그런데 일단 뽑아 놓은 직원들의 야근은 공짜로 생각하는 경우가 많습니다.

게다가 몇몇 기업을 제외하고는 개발자들에게 "야근 수당"이나 "시간 외 근무 수당"은 딴나라 얘기입니다. 
제가 하고 싶은 얘기는 "개발자들이 야근을 하면 안된다", "시간 외 근무 수당을 받아야 한다"라는 얘기가 아닙니다.
개발자들은 동기부여만 되면 얼마든지 밤을 세가며 일하고 이는 금액으로 따지기 어렵습니다.

오늘 할 얘기는 경영자들의 절약 정신이 소프트웨어 개발팀의 효율을 떨어뜨린다는 얘기입니다. 
절대적인 잣대가 있는 것은 아니지만, 개발자들의 여분의 노동력을 공짜로 생각해서는 안됩니다. 회사마다 조금씩 다르기는 하지만, 합리적인 투자가 있어야 개발팀의 최대 능률을 이끌어 낼 수 있습니다. 

 야근

개발자들이 야근을 많이 할수록 많은 시간 일을 할 수 있으니 똑같은 월급을 주고 훨씬 효율이 높다고 생각할 수 있으나 외부 요인으로 인해서 발생하는 야근의 효율성은 그리 높지 않습니다. 
특히 장기적이고 일상화된 야간 압력은 개발자의 사기 및 충성도를 떨어뜨리며 제품의 품질을 떨어뜨리고 개발자들의 발전을 저해하며 창의적인 아이디어 발생을 가로막고 개발팀의 효율을 떨어뜨립니다. 
단기적으로 야근의 압박이 있을 수는 있겠지만, 장기화 되는 것은 문제가 있습니다.
단, 자발적이고 능동적이고 자유롭고 적절한 야근은 오히려 도움이 되죠

 조용한 사무실

경영자 입장에서는 작은 공간에 최대한 많은 개발자와 다른 부서 직원들을 몰아 넣고 서로 긴밀하게 커뮤니케이션을 하면서 일을 하기를 바랄 겁니다. 일단 이렇게 하면 임대료가 적게 나가고 영업의 이슈가 즉각적으로 개발팀에 전달이 잘 될 것으로 생각하곤 합니다. 하지만 이런 북적이고 시끄러운 환경에서 개발자는 최고의 능력을 발휘할 수 없습니다. 그러면 자연스럽게 몰입할 수 있는 밤시간을 선택해서 개발을 하곤 합니다. 
영업사원들의 시끄러운 전화를 옆에서 엿들어야 커뮤니케이션이 잘되는 것은 아닙니다. 커뮤니케이션은 적절한 시스템과 프로세스와 문화가 필요한 것입니다. 그리고 개발자에게는 최대한 집중해서 일할 수 있는 조용한 공간이 필요합니다.
공간이 조금 더 들어가고 임대료가 조금 더 나가더라도 개발자에게 조용한 공간을 제공할 수 있는 벽을 세우거나 사무실을 만들어 주는 것이 좋습니다.
개발자들을 따로 띄어 놓으면 딴짓 할까봐 걱정이 된다구요. 그러면 처음부터 잘못 뽑았네요. 

 널찍한 모니터와 빠른 시스템

개발자들에게 끊임 없이 좋은 시스템으로 교체해주는 일이 쉬운 일은 아닙니다. 하지만 너무 인색한 회사는 좋은 시스템이 개발 효율성과 연관이 있다는 것을 잘 알아차리지 못합니다. 작은 모니터는 동시에 여러 화면을 보지 못하며 디버깅도 불편하여 조금씩 작업 시간이 더 오래 걸립니다. 특히 빌드를 밥 먹듯이 하는 개발자들은 빌드 시간을 10~20% 줄이는 것만으로도 전체적으로 꽤 많은 시간을 절약해 줍니다. 이런데 투자를 하는 것보다 개발자들이 하루에 몇십분씩 더 일하면 된다고 생각하는 경영자들도 있습니다. 개발자들의 여분의 시간은 공짜가 아닙니다.

 허리를 보호해 주는 의자

안타까운 얘기지만 소프트웨어 개발자로 10년 정도 종사하면 허리 디스크에 시달리는 것은 예사가 되었습니다.
비싸지만 좋은 의자들은 개발자들이 더 오랜 시간 몸에 무리가 가지 않게 일할 수 있게 만듭니다.
직접적으로 개발 효율을 높일 수 있는 투자이지만, 대부분의 회사에서는 가장 싼 의자 구매만 승인이 납니다. 그래서 여러 개발자들은 자신의 돈을 들여서 좋은 의자를 구입하곤 합니다. 이런 투자는 회사의 몫입니다.

 아침식사와 간식

최근에 컨설팅을 했던 회사는 매일 아침 직원들에게 신선한 식빵을 매일 제공하더군요. 오전시간에 속이 비어 있으면 두뇌 회전이 느려지고, 점심시간을 기다리느라고 일에 집중이 잘 안됩니다. 
비용은 얼마 안되는 투자이지만, 투자대비 효과가 높은 것 중 하나입니다. 

 테스트 조직

개발자와는 별도로 테스터 조직을 만드는 것을 비용으로 생각하는 회사가 의뢰로 많습니다. 테스트의 비중을 별로 높게 생각하지 않고 개발자들이야 말로 자신들이 만든 소프트웨어를 잘 테스트할 수 있다고 생각합니다. 이런 식으로 개발을 하면 평생 구멍가게를 면치 못합니다.
테스트의 비중은 생각보다 큽니다. 테스트 팀을 활용하지 않고 개발자들에게 테스트를 맡기는 것은 상대적으로 비용이 많이 드는 개발자들을 낭비하는 것이며 실제로 개발자들은 테스트를 잘하지 못합니다. 또한 이는 테스트의 전문성도 무시하는 겁니다. 
회사마다 다르기는 하지만 적절한 인원의 테스트팀을 유지하는 것이 비용이 더 적게 들면서도 제품의 품질을 잘 유지할 수 있는 길입니다.

소프트웨어 회사에서 주변을 둘러보면 비용 효율성을 높일 수 있는 요소들이 많이 있습니다. 대부분은 사소한 비용을 절약하기 위해서 더 큰 대가를 치를 경우가 많습니다. 어디에는 투자를 해야 하고 무엇을 아껴야 하는지 적절히 판단할 수 있는 균형 잡힌 시각이 필요합니다.

댓글 43개:

  1. 개발자의 야근은 공짜?. ㅋㅋ 이 분을 팀장으로 모십시다… :)

    답글삭제
  2. 아.. 전부 너무 와 닫는 내용들이에요 ㅠ.ㅠ


    개발서버 교체로 인한 에피소드가 어제 하나 있었는데
    기존에 30분 걸리던게 5분 정도 걸리게 되니까 컴파일 제대로 안된거 같다고 우스개 소리로 이야기 하시더라구요 ㅋ

    답글삭제
  3. 아..너무 좋으신 말씀들입니다.

    저희회사도 직원들을 많이 생각하려는 노력이 보여 좋은것 같은데요..

    우리나라의 모든 IT 경영자들이 저런 마인드를 가졌으면합니다.

    답글삭제
  4. 예전에 읽었던 피플웨어란 책 내용이 생각나게하는 글이네요. 아주 좋은 글 잘 읽었어요. 아마도 경영자들에게 그 책을 한번 선물해주면 뭔가의 변화가 있을지도... ^^

    답글삭제
  5. 정말 평소에 제가 생각하던 것과 못 생각했던 부분을 딱 짚어주시네요.
    우리 사장님께 보내드리면 뭐라고 하실라나..^^;

    답글삭제
  6. 언제나 균형잡힌 시각의 명쾌한 글 잘 읽고
    많이 배우고 있습니다.
    앞으로도 좋은글 부탁드립니다. ^^

    답글삭제
  7. 정말 직원들이 이 글을 읽으면 모두 공감하는 내용들이네요 ^^
    하지만 윗분들은 어떻게 생각하실련지 ^^;;;
    개발자 뿐만 아니라 IT에 일하시는 모든 분에게 공감얻는 좋은 글이였습니다~^^

    답글삭제
  8. 저런 생각을 가진 CEO와 함께 일한다면 정말 좋겠죠~,~

    답글삭제
  9. 개발자의 야근은 공짜?, All of Software // 개발자의 야근은 자발적으로 이루어져야 하는 것이다. ㅡ_-);; 밀린 일정 때문에 어쩔수 없이 하는, 혹은 관리자에 의해 강제된 야근 + 주말근무는 오히려 효율성을 떨어뜨린다.

    답글삭제
  10. RT JunoTweet님 개발환경은 체험중—; 공감~ RT agiletalk님 공감 200% RT zzangmyon님: 100% 공감합니다. RT murianwind님 개발자의 야근은 공짜? http://bit.ly/b1kfHB

    답글삭제
  11. 회사 하나 만드세요. 그리고 저 좀 뽑아주세요. ㅋ

    답글삭제
  12. 직원들에게 투자하는 작은 비용을 아끼기보다
    작은 비용을 투자해서
    직원들이 내는 최대의 성과로 큰 이익을 얻겠다는 마인드가 중요한거 같습니다.. ^^

    답글삭제
  13. 그래도 시스템은 좋은 것 쓰시나보네요. ^^

    답글삭제
  14. DoubleJ님 안녕하세요.
    소프트웨어에 대한 이해와 Long term view가 필요한데 경영자들에게 기대하기 힘든 것들입니다.

    답글삭제
  15. 안녕하세요. 반디숲지기님
    "피플웨어" 좋은 책이죠. 우리 현실에 안맞는 부분이 약간 있지만, 생각할게 많은 책입니다.
    경영자들에게 이책은 너무 Gap이 커서 도움이 될지 걱정이기도 합니다. ^^ 경영자들은 대부분 너무 단기적이 이익이 집중하거든요.

    답글삭제
  16. 창천님 안녕하세요.
    사장님께 보고하고 결과 꼭 알려주세요. ^^

    답글삭제
  17. 용훈님 안녕하세요.
    감사합니다.

    답글삭제
  18. 별군님 안녕하세요.
    사실 투자대비 효과가 큰 것들만 적었기 때문에 윗분들이 더 공감해야 하는데 현실은 그렇지 않은 것 같습니다.

    답글삭제
  19. BackToT님 안녕하세요.
    나중이 이런 CEO가 되시는 것은 어떨까요?

    답글삭제
  20. 아름드리님 안녕하세요.
    제가 회사를 만들면 블로그에 공지를 하도록 하겠습니다. ^^
    그때 Apply해보세요. 감사합니다.

    답글삭제
  21. 라라윈님 안녕하세요.
    재미있는 블로그를 가지고 계시네요. 바로 RSS Feed 등록했습니다. ^^

    답글삭제
  22. 역설적으로 이전 개발서버가 출장갈때 썼던 센트리노 1.7Ghz 노트북이었답니다 ㅋ
    그러던녀석을 듀얼코어 E5400으로 교체하니 날아 다닐수 밖에요 ㅎ

    답글삭제
  23. 서버가 노트북이라니...
    그럼, 개발/빌드/테스트 장비는 잘 분리되어 있나요?

    답글삭제
  24. 개발+빌드+테스트 죠 ^^;
    임베디드이다 보니 엄밀하게 테스트를 구분하기는 모호한거 같아요.


    서버가 노트북이라니.. 라고 생각하시기 보다는
    어떤면에서는 중소규모 기업에서는 노트북을 서버로 쓰는게 어떤 면에서는 더 좋은거 같다는 생각이 듭니다.

    성능/가격으로 따지면 일반 데스크탑 서버가 좋겠지만
    UPS를 감안하면 노트북이 더 나을수도 있으니까요. 그리고 UPS는 끽해야 30분인데 노트북은 2시간은 버티잖아요 ㅎ 아무래도 임베디드 쪽은 실수하면 전기나가는게 다반사라 서버가 정전으로 인해 먹통이 되는것 보다는 안정적인 작동이 가능한 노트북이 UPS없는 서버보다는 낫지 않을까 생각을 한답니다.

    답글삭제
  25. 보통 임베디드 개발은 빌드 시간이 짧아서 높은 성능의 서버가 필요하 않을 수 있겠네요.
    하지만 임베디드라고 하더라도 빌드, 테스트는 구분해야 합니다.
    그렇지 않으면 dirty environment가 됩니다.
    조직이 구분되어 있지 않으면 대충 섞어 쓰는 경우가 많지만, 이런 경우라도 적절히 구분해야 합니다.

    답글삭제
  26. 이런 슬픈 기사도 있네요.
    [연합뉴스] "야근 인정해달라"..한 IT 근로자의 절규
    http://www.yonhapnews.co.kr/special/2010/02/26/1401000000AKR20100226135900026.HTML

    답글삭제
  27. 저도 오늘 그 기사를 보곤 전날 본 이 글이 생각나더군요..
    회사에선 인력으로 조차도 보지 않는 그저 인간 같은 기계처럼 생각하고 부려먹고 있는 겁니다. 그저 시간안에 만들어라. 또 하나가 끝나기도 전에 다른 일까지 시작되어 야근은 끝이 없게 되어버립니다.
    아직도 이전과 변하게 없는 현실이 슬픕니다. ㅡㅡ

    답글삭제
  28. 쭉 내려보다가 저도 의자에서 공감이..
    지금 11년 된 의자를 쓰고 있는데 ㅠ.ㅜ
    예전에 네이버 ceo가 허먼 밀러인가? 100만원이 넘는 의자에 앉아보고 너무 마음에 들어
    직원들 의자를 그걸로 다 바꿔줬다는 이야기가 생각나네요
    퍼시스 리플라이 시리즈나 시디즈 의자 정도만 되어도 눈물을 흘릴텐데 말이죠..

    여하튼 잘 보고 갑니다~

    답글삭제
  29. 전 아침에 식빵+쨈 보다는 든든한 밥이 더 좋더라구요..^^ 밥을 주는 회사가 좋아요..ㅋㅋ

    좋은 마인드를 가진 사람도 사장이 되면 변한다고 하던데..어떻게 생각하시나요?
    마인드는 유지하시는 것처럼 보여도 실제 행동은 그렇지 못한 경우가 많다고 하더라구요.
    저도 그런걸 경험했구요. 사업상 어쩔수 없다고는 하지만 모든 희생은 직원들이 짊어져야 한다는..(물론 사장님도 짊어지시죠..);;;

    답글삭제
  30. 청하님 안녕하세요.
    전 빵이라도 감지덕지네요. ^^
    변하는 사람은 좋은 마인드를 가진게 아니고 그런 척한게 아닐까요? 진짜 아는게 아니고 아는척하는 거죠.
    위에서도 언급했듯이 적절한 투자라는 것이 회사마다 다르기 때문에 절대 기준은 없습니다.

    답글삭제
  31. 그 의자... 저도 욕심나는데요. ^^
    저는 지금 듀오백에서 가장 비싼 의자를 쓰고 있는데, 허리는 보호를 해주긴 하는것 같은데 그렇게 편하지는 않네요.

    답글삭제
  32. 이런걸 회사에서 봐야하는데 말이에요.. -_-;;
    전 만성 허리통증으로 고생을 흑흑.. ㅠㅠ

    답글삭제
  33. 꼬미님 회사에서 의자 안사주면 개인돈으로도 사세요. - -;

    답글삭제
  34. 안녕하세요 전규현님.. 인사가 늦었습니다.
    좋은 컨설팅을 경험하고 또 늘 좋은글을 읽고 있어 감사드립니다 ^^
    덧글로도 참여하고 싶지만 워낙 글재주가 없는터라 ^^
    이런게 넓은 시각을 가질 수 있고 생각할 수 있는 상황을 가지고 있으신 것이 그저 부럽습니다 ^^
    희한하게도 위의 글은 저희회사가 추가하는 방향이라 모두 해당하고 있네요
    테스트 조직만 아직은 인원 부족이라 내부에서 처리하기도 하지만 외부에 베타 테스트 등을 통해서 추구하고 있습니다. (아마 알고 계실지도 모르겠지만요 ^^)
    그런데 개발자의 동기 부여라는 것이 그러한 환경적 요인으로 극대화 할 수 있을까라는 질문에 가끔 의문을 가지기도 하고 그러한 부분이 항상 문제가 되기도 합니다.
    아마도 개발자라는 사람들이 특성이 워낙 강해 그러한 환경적인 것으로 그러한 동기부여를 하기엔 아직은 역부족이지 않는가 의심되기도 하구요.. 우리나라 개발자의 인식부족인지를 의심해보기도 합니다.
    다음에 "(우리나라)개발자의 동기부여"라는 제목으로 글을 한번 적어주신다면 정말 많은 도움이 될 수 있을 것 같습니다 ^^
    그럼 다음에 또 기회가 되면 인사드리겠습니다.
    아 그리고 전 한길아이티 신종화입니다. 수고하세요 ^^

    답글삭제
  35. 이사님 오랫만입니다.
    이글은 말씀하신 주제와는 거리가 있는 글입니다. 투자효율성에 대한 글이죠. 좋은 주제라고 생각합니다. 나중에 꼭 다뤄보죠. 감사합니다.

    답글삭제
  36. 효율에 대한 지적은 정말 동감합니다.

    더더욱 문제는 개발자 본인들도 느껴야 하는데 어느덧 그 생활에 익숙해져 푸념은 푸념대로 야근은 야근대로 계속하는 경우가 많더라구요

    답글삭제
  37. 정말 구구절절히 맞는 말씀이시네요
    항상 잊지말고 하나씩이라도 실천해가는 회사가 되로록 해야겠습니다.. ^^

    답글삭제
  38. tack님 안녕하세요.
    개발자도 매너리즘에 빠지는 경우가 많죠.

    답글삭제
  39. blackstone님은 회사 경영자이신가요? 아님 개발자?

    답글삭제
  40. 저희 회사는 누가 시켜서라기 보다는 알아서 야근을 하는 체제입니다.
    다들 야근은 싫어하지만 일정 산정등을 통해서 보다는 상황논리에 의해 마감일 등이 정해지다 보니
    이제는 하루의 근무시간을 8시간으로 해서 1MM를 산정하는 것이 아니라 하루 12시간 기준으로 1MM를
    산정하는듯 싶습니다.
    개인적인 삶보다 회사의 일이 "최!" 우선시 되어가는 듯 하여 요즘 많은 회의가 들기도 합니다.
    위에 쓰신글중에 정말 테스트 조직이라도 구성되었으면 합니다.

    답글삭제
  41. 아직도 많은 경영자들이 관성화된 야근의 장기적인 피해를 모르고 있습니다.
    하지만 이를 피하려면 먼저 제대로 된 시스템과 프로세스와 개발자들이 역량이 뒷받침되어야 합니다.
    닭이 먼저냐 달걀이 먼저냐 하는 이슈죠.

    답글삭제
  42. 안녕하세요.
    가끔 들러서 보기만 하다가. 너무 공감되는거 같아서 댓글 달아봅니다. (사실 전에도 달았던거 같기도..)
    한달에 한두번쯤 들러서 못본글 싹 보고 가는데. 규현님의 글들이 초급개발자인 제게는 아주 많은 가르침을 주는거 같아요. ㅎㅎ

    항상 좋은글 너무 감사합니다.. ^^

    답글삭제
  43. 안녕하세요. 피요히코님
    RSS feed 등록해놓고 보시면 편리합니다.

    답글삭제