입사할때 많은 회사에 면접을 보고 회사가 우리를 선택하는 경우가 대부분이다.

하지만 신입사원으로입사 하더라도, 자신이 근무하는 곳이며, 직장이 되는 곳에 대해 알아볼 필요가있고, 필수라고 생각한다

가끔, 역질문도 생각할 필요가 있다.

이회사의 근무환경은 어떠식으로 진행이 되는지를... 근무 환경을 파악해야 내가 어떤식으로 일을 하고, 진행할수 있는지

기본적인 바탕을 생각할 수 있지 않을까

 

 

개발자가 한달 쉬어도 끄떡없어야 좋은 회사

전규현 IT칼럼니스트 gracegyu@gmail.com 2014.08.26 / PM 04:16 개발자,

 

ㅣ 소셜댓글 : 1

칼럼니스트 : 전규현

이메일

gracegyu@gmail.com

약력

전규현 / gracegyu@gmail.com / 소프트웨어 컨설팅 회사인 ABC Tech(www.abcswcon.com)의 수석 컨설턴트이다. 20년간 한글과컴퓨터 및 안철수연구소에서 소프트웨어를 개발했으며 현재 소프트웨어공학 컨설턴트로서 수많은 소프트웨어 회사가 글로벌 소프트웨어 회사의 역량을 갖출 수 있도록 가이드를 하고 있다. 저서는 "소프트웨어 개발의 모든 것"(2008 페가수스)가 있으며 소프트웨어 개발자들이 가장 많이 보는 소프트웨어 공학 블로그인 www.allofsoftware.net의 운영자이다. 지금도 수많은 개발자의 멘토와 여러 소프트웨어 회사의 코치로서 실리콘밸리 소프트웨어 수준의 회사를 키우기 위해 노력하고 있다.

내가 만약 한달동안 휴가를 간다면 회사에서는 무슨일이 벌어질까? 각자 한번 상상을 해보자. 
 
내가 있던 없던 상관없이 회사는 잘 돌아갈까? 아니면 내가 관련된 일들이 진행되지 않아 회사가 마비될까? 내가 없으면 회사가 잘 안돌아가도 문제지만 내가 있으나 없으나 회사가 아무일 없이 잘 돌아가도 불안하다. 혹시 내가 없어도 되는 사람이 아닌가 걱정이 되기도 한다. 
 
“유지 보수가 어렵게 코딩하는 방법” 이란 책도있다.원제는“How to write unmaintainable code : Ensure a job for life ;-) This essay is a joke!”이다. 이 책은 조크지만 내가 없으면 유지보수가 몇배, 몇십배 어려워지는온갖 다양한 방법을 소개하고 있다. 사실 본인도 유지보수가 어려워지는 방법들이다. 
 
몇년에 한번씩 강제로 한달동안 휴가를 가야하는 회사가 있다. 휴가 기간 한달동안 원격지에서 일을 할 수 있다는 것이 아니다. 진짜 휴가를 가야 한다. 이런 강제 휴가 제도를 만든 이유는 어느 직원이던 그 직원이 없어도 회사가 잘 돌아가야 하기 때문이다. 업무의 특수성 때문에 한달동안 자리를 비울 수 없는 직원이 있다면 회사 조직을 바꾸던지 프로세스를 변경해 다른 사람으로 대체나 보완이 가능하도록 한다. 누가 한달간휴가를 떠나도 아무 문제없이 해놔야 한다. 
 
이런 회사에서는 직원들이 언제든지 짤릴 수 있다는 불안감을 가져야 할까? 
 
가상의 이야기가 있다. 원자력발전소에서 일하는 홍길동씨는 절대로 3일이상 휴가를 갈 수 없다. 홍길동은오랜 노하우로 적절하게 원자로의 온도를 조절하는 특수한 능력을 가지고 있고 홍길동외에는 그런 기술이없다고 하자. 홍길동은 수동으로 온도제어장치 조절이 가능한데 자동 처리 시스템을 갖추려면 엄청난 비용과 많은 추가 인력이 필요하다고 한다. 
 
회사 입장에서는 큰 비용을 투자하는 것 보다 홍길동씨만 잘 지키면 적은 비용으로 발전소 운영이 가능하고홍길동씨는 자신이 없으면 발전소가 돌아가지 않는 상황에 자부심을 가지고 있다. 하지만 홍길동씨는 격무에 시달려서 회사를 그만두거나 불의의 교통사고를 당할 수도 있다. 옆나라의 발전소에서 더 높은 연봉으로데려갈 수도 있다. 
 
나는 강연이나 세미나를 할 때 자주 묻는다. “지금 당장 퇴사를 해도 회사에 큰 문제가 없는 사람?”. 그러면거의 대부분 손을 드는 사람이 없다. 실제로 퇴사를 해도 문제가 없는 사람이 없을 수도 있고 다른 사람들 눈치를 봐서 그랬을 수도 있다. 
 
반대로“그럼 당장 퇴사하면 회사가 안돌아가는 사람”손을 들라고 하면 몇사람들이 당당하게 손을 번쩍 든다. 몇 사람은 떠밀려서 손을 든다. 그러면서 주변에서는 웅성웅성 말들이 많아진다. 약간의 빈정적인 말도들려온다. 대부분의 회사에서 벌어지는 공통적인 현상이다. 
 
우리 주변의 소프트웨어 회사들 중에는 개발자 한두명만 퇴사를 해도 큰 영향을 받는 회사가 많다. 회사의경영진은 문서화도 잘 되어 있고 공유도 잘 되어 있어 문제없다고 하는 경우도 있지만 속을 들여다보면 유지보수에 별쓸모도 없는 문서에 공유는 형식적으로 되어 있어 실제로는 큰 문제지만 “쉬쉬”하는 경우가 많다. 개발자들도 자신이 없을 때 회사가 잘 안돌아가는 상황을 그렇게 나쁘게만 보지 않기 때문에 별 이슈로생각하지 않는다. 
 
이러한 현상 때문에 아버지가 돌아가셨는데 상중에도 회사를 나와서 일을 했다는 경우를 듣기도하고 신혼여행도 제대로 못가는 경우도 발생한다. 
 
그럼 이런 현상이 회사에는 불리하지만 개발자에게는 유리한 현상일까? 단기적으로는 그럴수 있으나 장기적으로는 얘기가 완전히 달라진다. 
 
나는“당장 퇴사하면 회사가 안돌아가는사람”은 하루빨리 정리를 해야하고, “지금 당장 퇴사를 해도 회사에큰 문제가 없는사람”은 회사에 꼭 필요한 사람이라고 얘기한다. “당장 퇴사하면 회사가 안돌아가는 사람”이많다면 회사가 갑자기 망해도 이상하지 않은 상황이다. 이렇게 망한 회사들은 이런 이유 때문에 망한 것이라는 것을 알아채기 쉽지않다. 
 
“지금 당장 퇴사를 해도 회사에 큰 문제가 없는 사람”중에는 정말로 하는 일이 없어서 있으나 마나 한 사람이 있을 수도 있지만 그건 주제에서 벗어난 얘기고 대부분 그동안 해왔던 일들이 문서화가 잘되어 있고, 공유가 잘 되어 있으며 다른 사람이 이어 받아서 처리하는데 문제가 없는 경우다. 이런 사람은 회사의 미래 프로젝트를 위해 꼭 필요한 사람이다. 
 
반대의 경우는 그동안 저질러 놓은 일이 많고 자신이 아니면 유지가 안된다. 뭘 하나 해결하려고 해도 원개발자에게 물어봐야 하고, 다른 사람들은 시스템에 대해서 이해하기도 어렵고 원개발자가 한두시간이면 뚝딱 해결할 수 있는 것을 유지보수 개발자에게 시키면 며칠이 걸려도 해결이 어렵고, 해결을 했다고 해도 또다른 문제를 만들어냈을까봐 두렵다. 회사입장에서는 큰 리스크가 아닐 수 없다. 하지만 회사에서는 이런 개발자를 핵심 개발자라고 착각하고 질질 끌려다닌다. 
 
물론 개발자가 일부러 이런 경우는 흔치 않다. 회사의 문화, 프로세스가 엉망이니 그냥 열심히 하던대로 개발하다 보면 이런 현상이 십중팔구 벌어진다. 특히나 개발능력이 뛰어난 개발자들에게서 이런 현상이 더 잘일어난다. 혼자서 많은 양의 코딩을 해내지만 같이 공유하고 리뷰를 해줄 개발자가 없고, 혼자서 제품 하나를 뚝딱 만들어도 유지보수에서 발을 빼기 어렵게 된다. 일부러 유지보수가 어렵게 코딩하는 사람은 없겠지만 작성해놓은 코드를 보면 “유지보수가 어렵게 코딩하는 방법” 이란 책을 공부한 사람처럼 코딩하는 경우도 있다. 
 
이렇게 자신의 과거 업무에 발목이 잡혀 있는 개발자들은 성장하기 어렵다. 회사의 미래 프로젝트, 좀더 어렵고 재미있는 일을 못하게 된다. 새로운 기술이나 지식을 익힐 기회는 점점 줄어들고 매일하던 반복적인 유지보수에 매달리거나 과거에 해놓은 일의 기억을 헤집는 일을 주로 하게 된다. 자신의 과거 업무에서 자유로워지는 일은 자신의 가치를 좀더 높이는 일이다. 
 
물론 우리나라 회사에서는 이런 것이 통하지 않는다고 주장하는 사람도 있을 것이다. 개발자를 부품으로만생각하는 회사는 개발자가 없어도 문제없게 만들어 놓은 개발자는 언제든지 자를 수 있다. 실제이런 회사도많이 있고 이런 회사에서 일하는 개발자라면 “유지 보수가 어렵게 코딩하는 방법”을 잘 공부하기 바란다. 
 
개발자가 자신이 없어도 회사가 문제없이 돌아가게 하려면 공유를 잘 해야 한다. 문화적으로 성숙되고 프로세스를 잘갖춘 회사라면 모든 개발 업무가 진행되면서 자연스럽게 공유가 되는 시스템을 갖추고 있다. 중간중간 리뷰 과정을 다거치고 문서화가 되며 지식과 경험이 자연스럽게 여러사람과 공유가 된다. 
 
이런 프로세스를 뒷받침할 기반 시스템도 적절히 갖추고 있다. 공유를 위한 공유가 아니기 때문에 훨씬 자연스럽고 부담도 없다. 자신은 어떤가 생각해보자. 한달간 휴가를 갈 수 있을까? 회사의 모든 직원이 각자 한달간 휴가를 갈 수 있을까? 그렇지 않다면 무엇을 바꿔야 할지 생각해 보자.

 

'기타' 카테고리의 다른 글

[News]"SW 경쟁력 향상? 효율적인 '한 팀'부터 키워라"  (0) 2015.05.16
블로그 이미지

알 수 없는 사용자

,
http://www.hankyung.com/news/app/newsview.php?aid=2015032034641

 

우리나라의 근무시간 문제와 해외 근무시간을 비교할수 있는 좋은 기사!

24시간 일하듯이 일하는 우리나라의효율 Vs 정규시간을 이용하면서 근무 방식을 효율적 이용!

 

"SW 경쟁력 향상? 효율적인 '한 팀'부터 키워라"

삼성전자·구글도 배워가는 '소프트웨어 업계의 맥킨지' 피보탈랩스

"소통만 해결하면 개발 못할 SW없다"…2명씩 짝지어 대련하듯 프로그래밍
헤드폰 쓰고 밤샘 개발 효율 떨어져…오전9시~오후6시 근무 후 '칼퇴근'
피보탈랩스는 두 명이 같은 화면을 보고 프로그램을 짜는 ‘페어 프로그래밍’ 시스템을 채택하고 있다.

피보탈랩스는 두 명이 같은 화면을 보고 프로그램을 짜는 ‘페어 프로그래밍’ 시스템을 채택하고 있다.


삼성전자 구글 트위터 등 내로라하는 글로벌 정보기술(IT) 기업들이 소프트웨어를 개발하다가 벽에 부딪힐 때 도움을 청하는 기업이 있다. 기한 내 개발을 못 할 것 같을 때, 효율성이 떨어진다고 느낄 때 유수의 IT 기업이 이 회사 문을 두드린다. ‘소프트웨어업계의 맥킨지’로 불리는 소프트웨어 컨설팅 기업 피보탈랩스다. 지난 17일 미국 샌프란시스코에 있는 이 회사를 찾았다. 경쟁이 치열한 소프트웨어 업계에서 문제해결사로 인정받는 까닭을 물었다. 기업의 소프트웨어 경쟁력을 높이기 위한 조언도 구했다. 두 가지 모두 답은 ‘소통’이었다. 혁신의 현장에는 소통에 최적화된 특별한 시스템이 갖춰져 있었다.

○직원 간 소통을 최대한 끌어올리는 시스템

샌프란시스코 시내 하워드가(街)에 있는 피보탈랩스를 방문한 시간은 오전 8시40분께. 매일 이 시간에 아침식사를 하는 것이 전통이라고 했다. 회사 임직원, 파견 나온 고객사 직원들이 구내식당에서 대화를 나눈다. 식사를 마친 직원들이 한군데 모이자 사회를 맡은 직원이 “새로 온 사람?” “오늘 이벤트가 있나요?” 하고 물었다. 손을 든 사람에게는 마이크가 내장된 연두색 쿠션을 던졌다.

열린 기업 문화가 느껴졌지만 여기까지는 구글 페이스북 등 실리콘밸리의 여느 IT 기업 문화와 다를 바 없다. 데이비스 프랭크 피보탈랩스 상무는 “우리가 하는 진짜 소통은 단순한 아침식사가 아닌, 시스템에서 나온다”고 했다. 각자 자리로 돌아간 직원들은 소규모 팀 회의를 시작했다. 그날 해야 할 일과 우선순위를 토론하고 할당량을 정한다.

작업을 시작한 직원들의 모니터를 보니 신기한 점이 눈에 띄었다. 두 사람씩 같은 화면을 보고 있었다. 피보탈랩스의 명물인 ‘페어(pair·짝) 프로그래밍’ 시스템이다. 두 명이 같은 프로그램을 협업해 짜게끔 하는 것이다. 짝은 매일 바뀐다. 이렇게 짝을 바꾸며 공동 작업을 하면 팀원 모두가 프로그램 전체의 흐름을 자연스럽게 이해할 수 있다. 프랭크 상무는 “새벽 3시에 헤드폰을 끼고 혼자서 일하려는 프로그래머가 많다”며 “밤새 한 일을 다시 설명해야 하고, 늦잠을 자거나 아프면 일이 지연된다”고 말했다. 이곳에서 야근 없이 오전 9시부터 오후 6시까지 정시 근무가 이뤄질 수 있는 이유다.

오전 9시부터 열리는 피보탈랩스 전체 회의. 새로 온 직원이나 그날 예정된 이벤트 등을 소개한다.

오전 9시부터 열리는 피보탈랩스 전체 회의. 새로 온 직원이나 그날 예정된 이벤트 등을 소개한다.


○삼성전자·구글도 배워가

맡은 일은 매일 바뀌지만 ‘피보탈 트래커’ 시스템을 통해 인수인계를 한다. 일종의 작업일지로 꼭 해야 하는 일, 앞으로 할 일, 개발 과정에서 든 의문점과 답이 적혀 있다. ‘왜 만드는가’ 등 근원적 질문부터 세부적 기술 사항까지 다양하다. 팀원 모두가 볼 수 있다. 프로그래머 윌 리드는 “이렇게 일하면 프로그램이 산으로 갈 일이 없다”고 말했다. 기업들이 문제를 풀기 위해 이 회사에 직원을 파견했다가 해결한 뒤에는 일하는 방법 자체를 배워가려 하는 경우가 많다. 2000년대 초반 구글이 방법론을 배워간 사례는 유명하다. 트위터도 지난해까지 도움을 받았다. 삼성전자는 작년에 직원을 파견하고 페어 프로그래밍 도입을 검토하기도 했다.

데이비드 오로 피보탈랩스 전무는 “전 세계 많은 IT 회사가 소프트웨어 경쟁력을 높이기 위해 노력한다”며 “하지만 최고경영자(CEO)가 ‘어떤 사람을 뽑아라’ 혹은 ‘오늘부터 어떤 시스템을 도입한다’고 선언하는 게 대부분”이라고 지적했다. 그렇게 하면 실패로 돌아간다는 것이다. 프랭크 상무는 “일단 한 팀을 아주 효율적으로 만든 뒤 그 팀원을 반으로 나눠 다른 팀에 배속하는 보텀업(bottom-up) 방식으로 회사 전체에 효율성을 전파하라”고 조언했다.

 

'기타' 카테고리의 다른 글

[News] 개발자가 한달 쉬어도 끄떡없어야 좋은 회사  (1) 2015.05.16
블로그 이미지

알 수 없는 사용자

,