2018.09.19

칼럼 | 더 많은 개발자를 채용해야 한다, 그러나···

Matt Asay | InfoWorld
돈으로 행복을 살 수는 없지만 개발자는 살 수 있다. 스트라이프(Stripe)의 설문조사 결과를 보면, 기업이 드디어 엔지니어링 인재에 대한 접근성이 자본에 대한 접근성보다 성장에 더 큰 장애물로 작용한다는 사실을 깨달았다. 실제로 오래된 IT 인프라로 어려움을 겪고 있는 기업은 좋은 개발자를 찾을 수만 있다면 다른 문제 대부분은 그리 중요하지 않을 것이라고 생각한다. 하지만 개발자를 더 고용하는 것이 정답이 아닐 수 있다. 대신 더 필요한 것이 있다.



물론 개발 역량은 더 필요하다. 현재 업종별 선두 기업은 가장 큰 위협이 같은 업종의 다른 경쟁사가 아닐 가능성이 높다는 사실을 인지하고 있다. 대신 지금은 경쟁 상대가 아닌 IT 업체라고 해도 나중에 확실하고 현실적인 위험이 될 수 있다. 이런 IT 업체는 개발자로부터 새로운 경쟁력을 얻는다. 많은 기업이 앞다투어 "개발자를 채용"하는 것도 이 때문이다.

개발자를 키우고 그 성장을 주시하라
스트라이프가 진행한 설문조사에 따르면, 기업의 55%가 성장의 가장 큰 걸림돌로 인재에 대한 접근성을 꼽았다. 특히 성공에 위한 투자에서 현금(52%)보다 개발자(53%)가 더 높은 응답률을 보였다.

개발자가 자신을 우주의 중심이라고 생각하는 것일까? 물론 그럴 가능성도 있다. 그러나 해리스 폴(Harris Poll)과 함께 진행한 이 설문조사는 1,000명의 개발자뿐만 아니라 미국, 싱가포르, 프랑스, 독일, 영국에 있는 1,000명 이상의 임원을 대상으로 했다. 개발자와 임원은 개발자 추가 채용(61%)이 세율(58%), 무역 장벽(56%), 브렉시트(Brexit, 55%)보다 기업 성공의 더 중요한 변수라고 답했다.

이에 따라 기업의 96%는 개발자의 생산성 향상에 높은 우선순위를 두었으며, 56%는 지난 해 개발자 인원을 늘렸다고 답했다. 기술 기업이 전방위로 시장을 확장하면서 농업과 제조업 등 기술과 관련성이 없어 보이는 산업의 기업까지 두려움을 느끼고 더 많은 개발자를 고용하려 필사적으로 노력하고 있음을 알 수 있다. 하지만 그것이 정답이 아닐 수 있다.

개발자만 많다고 능사가 아니다
모든 기업이 경쟁 우위를 위한 기술 확보에 최선을 다하고 있다. 여러 산업 부문에서 향후 5년을 내다본 최고의 투자 영역은 소프트웨어 인프라와 기술(43%)이며 R&D(31%)와 기술 인재 채용(31%) 등이 상위 3개를 차지했다. 마케팅(29%), 영업(26%), 고객 서비스(24%) 등 더 전통적인 영역은 기업의 차별화에 상대적으로 큰 역할을 하지 못하는 것으로 보인다. 전체 응답자 중 81%는 업계에 상관없이 앞으로 10년 동안 소프트웨어 개발이 핵심 역량이 돼야 한다고 답했다.

이러한 새로운 경쟁을 위해 기업은 점차 스스로 IT 기업이 돼야 하며, 스스로 단순히 식료품점이나 호텔 체인점이나 병원이 아니어야 한다는 사실을 인식하고 있다. 21세기 새로운 시장 경쟁에서 승리하려면 소프트웨어가 기업의 핵심이 돼야 한다. 이로 인해 인재 고용이 더 어려워지고 있는 상황에서도 좋은 소프트웨어 개발자를 고용할 필요성이 강조되고 있다.

어쨌든 스트라이프와 해리스의 설문조사 응답자 중 77%는 자신의 기업에 이미 "기술 트렌드를 따라잡기 위한 충분한 엔지니어링 자원"이 있다고 확신했다. 확신이 없다는 응답자는 "숙련된 직원이 부족하다"(42%)고 답했다. 그러나 필자가 보기에 이것은 상황을 잘못 이해하고 있는 것이다.

일반적인 개발자는 주당 41.1시간을 일한다. 그런데 이 중 약 절반(17.3시간)이 유지보수(잘못된 코드 수정, 디버깅(Debugging), 리팩토링(Refactoring))에 소요된다. 따라서 문제를 해결할 사람을 추가하는 것이 개발자 생산성을 위한 가장 효과적인 방법이 아니다. 오히려 더 중요한 것이 소프트웨어의 품질을 높이는 것이다. 물론, 말처럼 쉽지는 않다. 기업이 점점 성장하면서 레거시 시스템과 기술 부채는 피할 수 없다. 그러나 그렇다고 해도 문서화 개선, 작성 단위, 기능 시험 등 코드 품질 개선에 접근할 수 있는 다양한 방법이 있다.

또한 확실한 효과가 있지만 아직은 무시되는 경우가 많은 것이 오픈 소스의 현실이다. 쿠버네티스(Kubernetes)를 대체할 솔루션을 직접 개발하고 있다면(필자는 실제로 목격한 적이 있다) 그것은 굉장히 잘못된 일이다. 스마트한 기업은 독자적으로 개발하는 대신 많은 기업이 전투적으로 도입해 사용하는 최고의 오픈 소스 프로젝트를 선택한다. 유명 컨설턴트인 토비 랭겔은 오픈 소스를 통해 개발자가 훌륭한 오픈 소스 코드를 차용한 후 단지 "글루(Glue) 코드만 작성"해 연결함으로써 "코드 작업량을 줄일 수 있다고 말한다.

물론, 개발자가 오픈 소스에 더 많은 기여하도록 해 개발자를 교육하는 것이 가장 좋다. 실제로 새로운 연구에 따르면 오픈 소스 기여자가 단순히 오픈 소스에 편승하는 사람보다 강점이 있는 것으로 나타났다. 더 많이 기여할수록 코드를 더 많이 이해하고 좋은 코드를 작성해 사용할 수 있는 것이다.


마찬가지로 구글, 마이크로소프트, AWS가 필요한 클라우드 서비스를 제공하는 경우 이를 쓰는 것이 좋다. 록인(Lockin)이 걱정될 수도 있지만 실제로 더 큰 문제는 개발자의 생산성이다. 게다가 내부 개발자가 스스로 도망칠 수 없는 시스템을 구축하는 것이 클라우드 업체로부터 구매하는 것보다 덜 번거로울 수 있을까? 필자는 그렇지 않다고 확신한다.

가트너(Gartner)의 애널리스트 스베틀라나 시큘러는 데이터 과학자(Data scientist) 부족 문제를 다루면서 "기업은 이름만 그럴 듯한 '데이터 과학자'보다 자사의 데이터를 더 잘 알고 있는 인재를 이미 보유하고 있다"고 지적했다. 개발자 부족도 비슷하다. 대부분 기업의 개발자 부족 문제 해법은 내부 개발자의 생산성을 더 높이는 것이다. 그리고 이를 위해서는 오픈 소스가 (유일하지는 않지만 훌륭한) 해결책이다.

기업이 개발자의 생산성에 더 집중한다면 새 개발자를 찾느라 수고할 필요가 없어질 것이다. 프레드 브룩의 '맨먼스 미신(The Mythical Man-Month)'에서도 보았듯이 "이미 지연된 소프트웨어 프로젝트에 인력을 더 투입하면 그만큼 더 지연될" 뿐이다. 엉성한 코드에 개발자를 추가하면 더 많은 개발자가 엉성한 코드에 중요한 시간을 낭비하게 되는 것이다. 더 많은 일을 할 수도 있지만, 비용이 불필요하게 늘어날 것이다. ciokr@idg.co.kr 
2018.09.19

칼럼 | 더 많은 개발자를 채용해야 한다, 그러나···

Matt Asay | InfoWorld
돈으로 행복을 살 수는 없지만 개발자는 살 수 있다. 스트라이프(Stripe)의 설문조사 결과를 보면, 기업이 드디어 엔지니어링 인재에 대한 접근성이 자본에 대한 접근성보다 성장에 더 큰 장애물로 작용한다는 사실을 깨달았다. 실제로 오래된 IT 인프라로 어려움을 겪고 있는 기업은 좋은 개발자를 찾을 수만 있다면 다른 문제 대부분은 그리 중요하지 않을 것이라고 생각한다. 하지만 개발자를 더 고용하는 것이 정답이 아닐 수 있다. 대신 더 필요한 것이 있다.



물론 개발 역량은 더 필요하다. 현재 업종별 선두 기업은 가장 큰 위협이 같은 업종의 다른 경쟁사가 아닐 가능성이 높다는 사실을 인지하고 있다. 대신 지금은 경쟁 상대가 아닌 IT 업체라고 해도 나중에 확실하고 현실적인 위험이 될 수 있다. 이런 IT 업체는 개발자로부터 새로운 경쟁력을 얻는다. 많은 기업이 앞다투어 "개발자를 채용"하는 것도 이 때문이다.

개발자를 키우고 그 성장을 주시하라
스트라이프가 진행한 설문조사에 따르면, 기업의 55%가 성장의 가장 큰 걸림돌로 인재에 대한 접근성을 꼽았다. 특히 성공에 위한 투자에서 현금(52%)보다 개발자(53%)가 더 높은 응답률을 보였다.

개발자가 자신을 우주의 중심이라고 생각하는 것일까? 물론 그럴 가능성도 있다. 그러나 해리스 폴(Harris Poll)과 함께 진행한 이 설문조사는 1,000명의 개발자뿐만 아니라 미국, 싱가포르, 프랑스, 독일, 영국에 있는 1,000명 이상의 임원을 대상으로 했다. 개발자와 임원은 개발자 추가 채용(61%)이 세율(58%), 무역 장벽(56%), 브렉시트(Brexit, 55%)보다 기업 성공의 더 중요한 변수라고 답했다.

이에 따라 기업의 96%는 개발자의 생산성 향상에 높은 우선순위를 두었으며, 56%는 지난 해 개발자 인원을 늘렸다고 답했다. 기술 기업이 전방위로 시장을 확장하면서 농업과 제조업 등 기술과 관련성이 없어 보이는 산업의 기업까지 두려움을 느끼고 더 많은 개발자를 고용하려 필사적으로 노력하고 있음을 알 수 있다. 하지만 그것이 정답이 아닐 수 있다.

개발자만 많다고 능사가 아니다
모든 기업이 경쟁 우위를 위한 기술 확보에 최선을 다하고 있다. 여러 산업 부문에서 향후 5년을 내다본 최고의 투자 영역은 소프트웨어 인프라와 기술(43%)이며 R&D(31%)와 기술 인재 채용(31%) 등이 상위 3개를 차지했다. 마케팅(29%), 영업(26%), 고객 서비스(24%) 등 더 전통적인 영역은 기업의 차별화에 상대적으로 큰 역할을 하지 못하는 것으로 보인다. 전체 응답자 중 81%는 업계에 상관없이 앞으로 10년 동안 소프트웨어 개발이 핵심 역량이 돼야 한다고 답했다.

이러한 새로운 경쟁을 위해 기업은 점차 스스로 IT 기업이 돼야 하며, 스스로 단순히 식료품점이나 호텔 체인점이나 병원이 아니어야 한다는 사실을 인식하고 있다. 21세기 새로운 시장 경쟁에서 승리하려면 소프트웨어가 기업의 핵심이 돼야 한다. 이로 인해 인재 고용이 더 어려워지고 있는 상황에서도 좋은 소프트웨어 개발자를 고용할 필요성이 강조되고 있다.

어쨌든 스트라이프와 해리스의 설문조사 응답자 중 77%는 자신의 기업에 이미 "기술 트렌드를 따라잡기 위한 충분한 엔지니어링 자원"이 있다고 확신했다. 확신이 없다는 응답자는 "숙련된 직원이 부족하다"(42%)고 답했다. 그러나 필자가 보기에 이것은 상황을 잘못 이해하고 있는 것이다.

일반적인 개발자는 주당 41.1시간을 일한다. 그런데 이 중 약 절반(17.3시간)이 유지보수(잘못된 코드 수정, 디버깅(Debugging), 리팩토링(Refactoring))에 소요된다. 따라서 문제를 해결할 사람을 추가하는 것이 개발자 생산성을 위한 가장 효과적인 방법이 아니다. 오히려 더 중요한 것이 소프트웨어의 품질을 높이는 것이다. 물론, 말처럼 쉽지는 않다. 기업이 점점 성장하면서 레거시 시스템과 기술 부채는 피할 수 없다. 그러나 그렇다고 해도 문서화 개선, 작성 단위, 기능 시험 등 코드 품질 개선에 접근할 수 있는 다양한 방법이 있다.

또한 확실한 효과가 있지만 아직은 무시되는 경우가 많은 것이 오픈 소스의 현실이다. 쿠버네티스(Kubernetes)를 대체할 솔루션을 직접 개발하고 있다면(필자는 실제로 목격한 적이 있다) 그것은 굉장히 잘못된 일이다. 스마트한 기업은 독자적으로 개발하는 대신 많은 기업이 전투적으로 도입해 사용하는 최고의 오픈 소스 프로젝트를 선택한다. 유명 컨설턴트인 토비 랭겔은 오픈 소스를 통해 개발자가 훌륭한 오픈 소스 코드를 차용한 후 단지 "글루(Glue) 코드만 작성"해 연결함으로써 "코드 작업량을 줄일 수 있다고 말한다.

물론, 개발자가 오픈 소스에 더 많은 기여하도록 해 개발자를 교육하는 것이 가장 좋다. 실제로 새로운 연구에 따르면 오픈 소스 기여자가 단순히 오픈 소스에 편승하는 사람보다 강점이 있는 것으로 나타났다. 더 많이 기여할수록 코드를 더 많이 이해하고 좋은 코드를 작성해 사용할 수 있는 것이다.


마찬가지로 구글, 마이크로소프트, AWS가 필요한 클라우드 서비스를 제공하는 경우 이를 쓰는 것이 좋다. 록인(Lockin)이 걱정될 수도 있지만 실제로 더 큰 문제는 개발자의 생산성이다. 게다가 내부 개발자가 스스로 도망칠 수 없는 시스템을 구축하는 것이 클라우드 업체로부터 구매하는 것보다 덜 번거로울 수 있을까? 필자는 그렇지 않다고 확신한다.

가트너(Gartner)의 애널리스트 스베틀라나 시큘러는 데이터 과학자(Data scientist) 부족 문제를 다루면서 "기업은 이름만 그럴 듯한 '데이터 과학자'보다 자사의 데이터를 더 잘 알고 있는 인재를 이미 보유하고 있다"고 지적했다. 개발자 부족도 비슷하다. 대부분 기업의 개발자 부족 문제 해법은 내부 개발자의 생산성을 더 높이는 것이다. 그리고 이를 위해서는 오픈 소스가 (유일하지는 않지만 훌륭한) 해결책이다.

기업이 개발자의 생산성에 더 집중한다면 새 개발자를 찾느라 수고할 필요가 없어질 것이다. 프레드 브룩의 '맨먼스 미신(The Mythical Man-Month)'에서도 보았듯이 "이미 지연된 소프트웨어 프로젝트에 인력을 더 투입하면 그만큼 더 지연될" 뿐이다. 엉성한 코드에 개발자를 추가하면 더 많은 개발자가 엉성한 코드에 중요한 시간을 낭비하게 되는 것이다. 더 많은 일을 할 수도 있지만, 비용이 불필요하게 늘어날 것이다. ciokr@idg.co.kr 
X