유능한 개발자에 대한 수요가 급증함에 따라 개발자 인재를 영입하고 관리하는 일이 CIO에게 가장 큰 도전 과제 가운데 하나로 부상했다. 특히 오라클이나 구글 같은 대기업과 인재를 놓고 경쟁해야 하는 상황이라면 더욱 큰 문제가 된다.
벤처 창업 투자사인 와이컴비네이터(Y Combinator)의 공동 창업자인 폴 그래험은 한 글로그에서 개발자에 관해 다음과 같이 이야기했다. “미국 인구는 전세계 인구의 5% 미만이다. 이 말인 즉, 유능한 개발자가 될 수 있는 자질을 갖춘 이의 비율도 5%이라고 본다면 나머지 95%는 미국 밖에서 살고 있다는 의미다.”
그래험은 미국이 기술 경쟁력을 고취하기 위해서는 가능한 많은 해외 개발자를 미국으로 건너올 수 있는 환경을 만들어야 한다고 주장한다. 미국의 고용주가 정해진 기간 안에 특수 분야의 외국인 근로자를 고용할 수 있는 비이민 비자인 H-1B를 더 많이 발급하는 것도 방법이다(현재 매년 발급할 수 있는 H-1B 비자의 수는 6만 5,000개다. 그러나 일부 경우 예외가 적용된다)
이 밖에도 유능한 개발자 고용 문제를 해결하는 방법이 또 하나 있다. 네브라스카, 인도의 뭄바이, 영국의 런던, 호주의 시드니 등 장소에 제약을 받지 않고 유능한 인재들이 원격 근무를 할 수 있도록 허용하는 방법이다.
물론 일부 기업에는 문제의 소지가 될 수도 있다. 예를 들어, 구글은 전세계의 개발자로 구성된 원격 근무 팀을 운용했었다. 그러나 2009년부터 이를 더 큰 규모로 중앙 집중화된 팀으로 통합하기 시작했다. 이에 대해 당시 구글의 엔지니어링 및 연구 부문 수석 부사장인 앨런 유스타스는 "팀을 한곳에 모으는 것은 조직 규모를 키우고 능률을 높이게 하면서도, 커뮤니케이션 부담을 줄이고 개발자가 참여할 수 있는 미래형 프로젝트의 선택지를 확대해준다””고 설명했다.
그러나 많은 기업이 입증하고 있듯, 분산된 개발팀을 생산적으로 운영하는 것이 불가능한 일만은 아니다. 이를 위해 개발 업무 경험이 풍부한 사람들을 효과적으로 활용하는 8가지 팁을 소개한다.
커뮤니케이션에 초점을 맞춘다
이미지 출처 : Thinkstock워드프레스의 초기 개발자 중 한 명으로, 웹 개발 업체인 오토매틱(Automatice)을 창업한 매트 물렌웨그는 "커뮤니케이션은 성공의 열쇠다. 커뮤니케이션이 제대로 이뤄지면 원격 개발팀이 내부 팀보다 더 큰 능률을 발휘하면서 구글과 오라클이 도전할 수 없는 것으로 승부를 내볼 수 있다"고 강조했다.
그렇다면 원격 근무 개발자들이 팀원들과 효과적으로 커뮤니케이션 할 수 있는 방법은 뭘까? 물렌웨그는 이메일을 사용하지 말라고 충고했는데, 효과적으로 협력할 수 없는 도구라는 점 때문이다. 그리고 개발자들의 협력 수준을 높일 커뮤니케이션 도구를 제안했다. 이메일 대신 워드프레스의 P2 테마를 사용할 것을 권장했다. 또 팀원 간의 메시징 프로그램으로는 슬랙(Slack), 개발자 팀 회의에는 구글 행아웃(Hangout)이 좋다고 추천했다.
원격 근무 개발팀에 맞는 프로젝트를 선정한다인도 애자일 소프트웨어 커뮤니티(Agile Software Community)의 창립자인 나레쉬 자인은 지리적으로 분산된 개발팀에 맞지 않는 소프트웨어 프로젝트도 있다고 지적했다. 자인은 “특정 비즈니스 영역으로부터의 피드백과 깊이 있는 전문성이 필요하다면 분산적인 개발은 100% 효과를 발휘하기는 힘들다"고 말했다.
예를 들어, 은행이나 보험 회사를 대상으로 한 소프트웨어 프로젝트의 경우 해당 분야의 전문가가 가까이 위치해 개발자들에게 필요한 부분을 알려줘야 한다. 자일은 “각 분야 전문가가 회의에 참석해야 개발자들이 필요사항을 더 빨리 파악할 수 있다”며, “특히 단시일에 필요사항이 바뀔 가능성이 있는 경우는 더욱 중요하다"고 말했다.
이어, "의료 보험 등 전문 프로젝트의 경우 개발자가 해당 분야에 경험이 었으면 프로젝트 자체를 이해하기 쉽지가 않을 것”이라고 덧붙였다.
원격 근무를 선호하는 개발자를 채용한다당연한 이야기로 들릴지 모르겠지만 아주 중요하다. 물렌웨그는 "모든 것이 채용에서 시작된다. 지역적으로 분산된 환경에서는 생산성을 발휘하지 못하는 사람을 걸러내야 한다"고 강조했다.
어느 회사에나 주로 밖에서 업무를 보는 직원들이 있다. 신문사 기자들, 영업부 직원들을 예로 들 수 있다. 이들은 원격 근무에 익숙한 사람들이다. 원격 근무에 맞는 개발자도 있다. 그러나 모든 사람이 원격 근무에 적합한 것은 아니다.
물렌웨그는 "직장이라는 특정 건물이나 장소에서 사회생활을 하려는 개발자에게 원격 근무는 맞지 않는 옷을 입는 것과 마찬가지”라고 지정했다.
정기적으로 직접 만나 대화하는 자리를 마련한다수제품을 판매하는 온라인 상점 엣시(Etsy)의 운영 담당 엔지니어인 에이블린 비그는 커뮤니케이션 도구가 효과적일 수는 있으나, 우연히 동료 개발자와 수다를 떨 때 발생하는 '워터 쿨러 효과(회사 휴게실에서 만나 대화를 나눌 때 발생하는 효과)'를 대신하지는 못한다고 지적했다.
비그는 "엣시의 경우, 개발자들이 매 분기 직접 만나는 자리를 마련해 이 문제를 해결하고 있다. 매일 다섯 차례씩 워터 쿨러 생산성 효과가 발생하는 만남을 가질 수는 없을지 모른다. 그러나 몇 주에 한 번 정도는 이와 비슷한 효과를 낼 수 있다. 짧은 만남 동안 워터 쿨러 효과를 극대화하려는 다양한 시도를 하고 있다"고 말했다.
비그는 이런 분기 회합이 개발자들의 사회적 유대관계 형성, 관심 분야 공유에 도움을 준다고 설명했다. 비그는 "때때로 누군가를 직접 만나야 발생할 수 있는 효과”라고 강조했다.
프로젝트 리더가 원격 근무 팀도 관리할 수 있다고 믿는다비그는 유능한 프로젝트 관리자라고 해서 원격에서 개발팀을 관리하는 데도 반드시 능력이 있을 것이라고 단정 짓지 말라고 강조했다.
비그는 "사무실에서 근무할 때 매주 한 차례 30분씩 매니저와 일대일로 대화하는 기회를 가졌다. 원격 근무를 하는 지금은 프로젝트 관리자가 매주 2~3차례 약 1시간 동안 전화를 한다”며, “한편으로는 더 많은 시간을 투자하기에 능률이 없는 것으로 비칠 수도 있다”고 말했다. 이어, “사실은 그렇지 않다. 사무실에 모여 근무할 경우에는 더 넓은 인간관계를 형성할 수 있는데, 원격으로 일할 경우 그럴 수 없기 때문에 프로젝트 관리자는 더 많은 시간을 대화에 할애하는 것 뿐”이라고 덧붙였다.
마지막으로 “프로젝트 리더들은 이와 같은 새로운 방법으로 원격 개발팀을 관리하는 방법을 터득할 필요가 있다”고 설명했다.
나레쉬 자인은 한발 더 나아가 팀을 전담하는 리더가 필요 없을 수도 있다고 말했다. 자인은 "오픈 소스 프로젝트에는 중앙화된 '명령 & 통제' 조직 구조가 없다. 필요에 따라 리더가 생겼다가 사라진다. 원격 근무 팀도 이와 마찬가지로 팀을 전담해 관리하는 리더가 필요 없다"고 설명했다.
시간대(Time Zone)를 이점으로 활용한다물렌웨그는 "원격 근무 팀에 귀찮은 골칫거리 중 하나는 시간대이다. 동일한 장소에 개발자들을 몰아넣고 싶은 생각은 없었다. 그러나 시간대가 8시간 이상 차이가 나는 지역에 팀원들이 분산된 것이 문제가 됐다. 관련성이 큰 팀 작업일수록 어려움은 가중된다”고 경고했다.
그러나 팀원들이 여러 시간대에 근무하면서 365일 24시간 작업을 할 수 있다는 점이 큰 장점이 될 수도 있다. 시간대가 낮인 지역의 팀원에게 미국이 야간작업을 맡길 수 있기 때문이다. 또 지역에 따라 공휴일이 다른 것도 장점이다.
모든 팀원을 원격 근무자로 동등하게 대우한다이미지 출처 : Thinkstock사무실에서 근무하는 개발자와 원격 근무하는 개발자로 구성된 원격 근무 팀이 많다. 비그는 이 경우, 모든 팀원을 원격 근무자로 동등하게 대우하는 것이 좋다고 권고했다.
비그는 "사무실에서 근무하는 모든 사람이 이메일, 인스턴트 메시징, 기타 커뮤니케이션 도구를 사용하도록 권고하고, 같은 사무실 근무자들끼리 대화를 나누는 일이 없도록 주의해야 한다”며, “사무실 근무자가 그룹 커뮤니케이션 도구를 사용하지 않을 경우, 원격 근무자가 대화에서 배제되면서 팀의 동력이 깨질 수 있다"고 강조했다.
즉각적인 커뮤니케이션을 기대하지 않는다비그는 원격 근무자들이 스스로 업무를 볼 수 있도록 하는 것이 중요하다고 강조했다. 커뮤니케이션 도구가 효과적일 수 있지만, 일정 부분은 일대일 대화의 형태를 띠고 있기도 하다.