트렌드

[안영회의 베터코드] 복잡한 기술 스택이 경영진에게 주는 시사점

* 이 글은 ThoughtWorks 블로그에 올라온 Implications of Tech Stack Complexity for Executives를 번역한 글로 저자는 Jim HighsmithMike MasonNeal Ford입니다.

—————————————————————–

디지털 환경에서 성공하려면, 다양한 기술 변화가 여러분의 조직에 시사하는 바를 알아야 한다 기사는 새로 연재하는 Technology Radar Echoes 시리즈 1편으로 비즈니스 차별화를 이끄는 기술 문제와 솔루션에 대해 저자들이 가진 직관과 경험을 기업 리더들과 공유한다. 6년째 접어든 ThoughtWorks Technology Radar 소프트웨어 개발과 사업 전략에 현저히 영향을미치는 트렌드에 대한 평가서로 ThoughtWorks 다국적 기술 자문 위원회에서 작성한다.

소셜 미디어와 스마트폰, IoT, 클라우드빅데이터로 기술환경이 바뀐 것은 불과   전부터다 이전의 기술 스택(응용 프로그램 구현에 쓰이는 서로 다른  기술 계층) 단순했고 대부분 벤더 제품을 썼다대표적인 예가 마이크로소프트 스택인데프로그램 언어는 닷넷을 쓰고 응용 서버는 IIS, 데이터베이스는 SQL Server 제품을 쓰는 식이다.

오늘날 기술 스택은 폭발적으로 늘었다우리는 마이크로소프트의 Nano Server 비롯해 Deis, Fastly, 아파치의 Spark 그리고Kubernetes 같은 플랫폼을 쓰고 있다. Docker Toolbox, Gitrob, Polly, Prometheus, Sleepy Puppy 같은 새로운 도구가 매주등장한다프로그래밍 언어나 프레임워크에 있어서도 Nancy, Axon, Frege, Traveling Ruby 같은 언어들이 새롭게 소개되었다. Data Lake, Gitflow, Flux, NoPSD 같은 고급 기법도 성숙해졌고이런 행렬은 계속된다.

ThoughtWorks Technology Radar 발표할 때마다 대략 120 항목이 포함되고동시에 비슷한 숫자가 배열할 자리가 모자라제외된다지난 5년간 우리가 심각하게 고려한 2,000 정도의 기술이 레이더에 잡혔다추천 기술의 부분집합을 특정 프로그램에 적용하는 것까지 감안하면지난 5년간 기술스택의 복잡도는 지수적 증가세를 보이고 있다.

그런데 당신이 경영진의 일원이나 관리자 심지어 대표이사로서 기술스택 문제를 다뤄야 하는 이유는 무엇인가기술스택 문제는 기술자들이 다루면   아닌가그렇지 않다소프트웨어와 소프트웨어 개발은 디지털 미래를 여는 열쇠이다따라서구체적인 사항까지는 아니더라도 전반적 추이가 여러분 조직에 의미하는 바를 반드시 이해해야 한다.

기술은 다양한 형태로 차별화와 혁신을 주도한다경영진과 관리자는 다양한 기술이 시사하는 바를 반드시 이해해야 한다그래야만 올바른 의사결정을   있다.

시사점

기술 조경은 역동적인 균형 상태로 존재한다새로운 기술과 접근법이 나타나면기술 생태계가 이를 수용하고 새로운 평형 상태를 만든다.

최근 기술 조경 변화를 추리면 다음과 같다.

과거의 유물이 되어 버린 단일 벤더 솔루션

불과 얼마전까지만 해도 일부 대기업조차 단일 벤더 솔루션으로 기술 스택을 유지하곤 했다. 2000 중반 Jim  친구는 데이터웨어하우스 프로젝트를  완전히 IBM 제품에만 의존해서 작업했다 프로젝트에서 의뢰인은 IBM 데이터웨어하우스 기술  스택을 고집했고오래된 AS/400 하드웨어를 사용했다개발팀은 마이크로소프트의 기술 스택이 당시 상황에서 효과를   있다고 의뢰인 설득을 시도했다. IBM 하드웨어와 기술 스택을 사용하여 납기일을  차례 넘기고  후에야 비로소 윈도 서버에서 구동하는 마이크로소프트 스택을  이용해 프로토타입을 구축했고수차례 회의를 거친 관리자는 기술 스택 변경을 받아들였다진전은 극적으로 이루어졌다 회사가 새로운 응용분야로 진입할 단일 벤더를 고수하는 해법은 실패로 끝난 것이다.

이러한 추세는 점점  추진력을 얻고 있다너무 많은 일들이너무도 빨리 벌어진 나머지 마이크로소프트나 오라클 같은 규모의 회사조차 따라잡기 버거울 정도다급속도로 쏟아지는 변화의 규모와 더불어상당수 변화에 내재된 파괴력은 기존 제품을진부하게 만든다문제는 어떤 회사든지 자신들이 보물로 생각하던 것을 버리고 떠나기가 어렵다는 점이다.

오픈소스 도구가 부상 하면서 이러한 현상은 증가 추세에 있다오픈소스 도구는 회사를 넘나드는 협업을 촉진하여 벤더로 하여금 수많은 다른 기술을 활용할 라이선스 취득 문제를 벗어나서 새로운 도구를 만들  있게 한다단일 기술 분야 전문기업으로 작고 특화된 회사를 촉진시킨다이제 대규모 벤더로 역량을 모아서 얻는 이점은 거의 사라졌고기술이 퇴조하는 상황에서는 도리어 퇴로가 막히는 아이러니에 놓인다.

효율을 중시하는 경영자에게 표준화는 강조하고  강조하는 금언이다하지만오늘날의 세상에서 표준화는 조직을 경직시켜 자칫 괴멸로 이끄는 지름길이   있다.”

모바일 개발은 다양한 기기에서 구동하는 많은 운영체제 제작 벤더를 다뤄야 함을 뜻한다 데이터 개발이란 이기종 데이터베이스 관리 시스템(DBMS) 다뤄야 함을 의미하며, DBMS 상당수가 오픈소스이거나 실적이 많지 않은 신규 벤더 제품이다하나의 DBMS 쓰던 시대는 끝났다.

디지털 기업이 되고자 한다면 기술 스택 복잡성은 증가한다자연히 벤더 복잡성도 증가하여 골치 아픈 일이 많아지겠지만 그만큼 기회도 많아진다.

 구성과 조직 구조 변화의 필요성

기술 스택이 복잡해지면 기술 계층에 맞춰 팀을 꾸리는 것이 점점 효과를 잃는다인터넷 초기 기술 계층은 비즈니스 로직미들웨어표현 계층 정도로 고정되어 있었고기술 계층에 맞춰 팀을 조직하는 일이 매력적이진 않아도 그럭저럭 통했다이제는 불가능해졌다현대적인 애플리케이션 구축에 필요한 기술의 다양성으로 기능별 분업보다 협력하는 팀워크가 절실하다 두명이 설계구축배포에 필요한 모든 기술을 갖고 있는 경우는 점차 자취를 감추고 있다게다가 필요한 기술 획득을 위해 팀의 규모가 커지면서다채로운 팀의 긴밀한 협력이 성공의 필수요소가 되고 있다.

과거에는 운영 비용과 복잡성 탓에 개발, QA, 운영 각각을 회사  독립 기술 조직으로 만들었다그러나클라우드와 DevOps 문화에 집중하면 자동화된 서버 개통과 제품 신기능 일일 배포가 가능하다이러한 역량은 아키텍처 측면에서 새로운 기회를제공한다아키텍처를 기술 계층에 맞춰 구분하는 대신에 고객Customer, 주문Order 같은 식으로 업무 영역의 개념 중심으로팀을 조직해 나갈  있고기술 계층을 드러내지 않고 서비스에 내포시킬  있다기술 계층에 따른 조직 대신 이러한 업무영역 혹은 제품 기준으로 조직하는 추세는 디지털 기업화에 발맞춰 증가하고 있다만일 기술에 따라 나뉜 조직을 고수한다면특정 팀별로 나뉜 기능 탓에 상호작용 급증과 통합 문제가 심각하게 야기될 것이다.

협력적인 팀이란 절대 요소

팀이 복잡해지면서 협력의 중요성은 높아진다앞서 말한대로 오늘날 팀은 넓은 기술 범위를 요구한다순수 기술 스택 전문성은 물론이고운영부터 제품 설계와 제품 관리까지를 아우른다이러한 다양성에 대한 필요는 갈수록 증대되는 반면에 효과적협력은 더욱 어려워지게 된다애자일agile lean 운동을 통해 얻는 대표적인 혜택이 충분한 권한을 부여 받은 협력적인 교차기능 cross-functional teams 장려이다.

더욱 어려워진 소프트웨어 전달 역량 구축

엔지니어링이 중요하다점차 많은 회사들이 글로벌 수준의 소프트웨어 전달 역량 없는 디지털 전략은 공염불이란 사실을 깨달아가고 있다.“디지털 기술이 경쟁 양상을 끊임없이 변모 시키면서제품과 서비스 차별화와 성능 개선이 갈수록 소프트웨어에의존하고 있다소프트웨어의 치명적 중요성에 비해최고위 임원들이 보이는 무관심 수준은 놀라울 정도다최근 연구에 따르면훌륭한 소프트웨어 생산이 갖는 전략적 중요성을 제대로 평가하지 못하는 회사들은 대가를 치루지 않을  없을 것이라고한다.” [소프트웨어 개발을 무시한 재앙, 2015 매킨지 분기 보고]

글로벌 수준 소프트웨어 전달 역량 확보에  영향을 주는 다섯 가지 핵심 요소가 있다기술의 넓이와 깊이빠른 학습혁신 그리고 의사결정이 그것이다.

오늘날 애플리케이션을 구축할  필요한 기술의 폭은 기술 스택의 복잡도 증가에 비례하여 획기적으로 넓어지고 있다이를따라 잡으려면 소프트웨어 배포 기술과 함께 IoT(Internet of Things) 기술 개발까지 병행해야  경우도 생긴다.

기술의 폭이 넓어졌을 뿐만 아니라 필요로 하는 기술의 깊이(기초 ~ 고급또한 증가하고 있다최신 애플리케이션에는 최신 기술이 필요하다마치 난이도 등급 5.10 암벽 등반자는 5.13 루트에 등정하는 기회를 얻을  없듯이평균 수준의 소프트웨어 팀이 깜짝 놀랄 만한 애플리케이션을 배포할 가능성은 매우 희박하다.

앞서 살펴본대로 기술 스택 변화 속도가 워낙 빠르기 때문에 내일 필요한 기술과 지식은 변할 것이다따라서당신이 필요로 하는 사람은 현재 필요한 기술을 보유하고 있을  아니라 미래의 기술도 빨리 습득할  있는 사람이어야 한다.

적응하고 학습하는 문화를 뿌리내리는 일은 특정 기술을 구축하는  만큼이나 중요하다.

길게 인용된 관찰기록에서  경영자는 개발자가 이직할까 두려워 훈련 보내기를 꺼려온 일을 후회한다고 했다그에 대한 대답은 “당신이 그들을 훈련은 시키지 않으면서 회사만 다니게 한다면 어떻게 되지요?”

기술적으로는 최신 유행을 따라가야 하지만 개발자들도 기술을 혁신적 방법으로 사용할 필요가 있다그러자면 모험심과 탐구정신이 조직문화에 내재해 있어야 한다.

마지막으로조직에서 특히 중요한 것은 역량과 기술을 둘러싼 의사결정 개선이다다음과 같은 질문에 대해 결정할  있어야한다필요한 기술이 무엇인가 기술을 내부적으로 구축할  있는가 기술세트skill set 어느 정도 깊이로 필요한가공식적인 교육 훈련과 경험을 통한 기술 획득 사이에서 균형은 어떻게 맞추는가기술을 지속적으로 갱신하는 방법은 무엇인가내부적으로 기술을 구축할 것인가 아니면 외부에서 사오거나 빌릴 것인가?

외주개발내부개발공동개발 선택은  이상 비용 위주로 판단할 정도로 단순한 문제가 아니다

오늘날 많은 조직이 요구 수준에 맞추어기술과 소프트웨어 전달 역량을 구축하고 유지할  없음을 깨닫고 있다회사에서 필요한 인재를 유치하지 못하는 이유는먼저 최고의 개발자들의 높은 요구 수준에 비해 많은 회사의 IT 부서 급여수준이 낮은 탓이다또한최고의 개발자가 뉴욕이나 런던처럼 세계적인 글로벌 도시에 살기를 원하는데 반해회사 위치도 매력적이지 않기때문이다 일부 회사는 재능있는 이들을 장기 채용할  자체가 없다꾸준히 디지털 비즈니스 프로젝트를 만들어낼  없기때문이다지난 10년간 비용 절감과 효율중심 전략을 구사하던 기간에 많은 회사들은 너무나 많은 역량을 외주 개발에 맡겼다현재 필요한 수준에 맞춰 다시 구축할 때는 기간이 오래 걸리게 되고  기간 만큼 경쟁에서 뒤쳐지는 상태에 놓이게 된다오늘날 디지털 비즈니스 구축 전략은 비용 절약이 아니라 혁신전달 주기그리고 가치 생성에 중점을 둬야 한다

오늘날 외주 기술 개발은 비용 절감이 아닌 역량 획득 관점으로 주도해야 하다나아가 여러분이 찾아야  대상은 단지 현재 필요한 기능 제공 뿐만 아니라 빠르게 새로운 기능을 구축해서 시연해   있는 파트너이다.

외주 역량을 활용하여 긴급히 발생한 기회를 처리할 수는 있겠으나비용 절감 목적의 외주와 똑같은 문제를 야기하고증상은오히려 증폭되어 나타난다예를 들어 외주 개발한 애플리케이션을 나중에 내부에서 자체 처리로 옮기려하면외주 개발 당시드러나지 않았던 기술 전수 문제가 그제서야 드러난다기술 스택이 복잡해져서 기술 전수 문제는 더욱 확대되었다벤더 수가늘어나고 새로운 형태의 계약이 등장한 탓에 추가적인 도전거리가 생겨난다일례로 계약의 어려움을   있다비용 통제 지향 계약은 그다지 어렵지 않던 일이었으나 혁신 중심의 가치 지향 계약은 상대적으로 난해한 일이다.

최신 기술 조직을 만들려면 비용이 든다

우리가 의뢰인을 통해 듣는 소식은, Hadoop 같은 최신 기술 스택을 수용하기가 두렵다는 것이다 이유는직원들이 기술력을 충분히 갖출거라고 믿지 못하기 때문이라는 것이다동시에 그들은 젊고 유능한 인재를 유치하고자 하는데 그러자면 인재들이 신나게 일할  있도록 신기술을 수용해야 하는 것도 알고 있다이러한 역설은 기술 조직 수준에서 해결될  있는 문제가아니다최고위 리더십이 요구되는 일이다.

달리 방도가 없다비용 절감 정신으로는 디지털에 정통한 기업이   없다복잡해지는 기술 스택에 따라 기술은 물론이고비즈니스 모델과 제품 수준 그리고 인재 영입 전쟁을 아우르는 혁신을 요구한다최신 기술 조직을 구축하는 전략 수행은 결코가볍게 다뤄질 사안이 아니다선두를 지향하는 의사결정으로 비즈니스 전략 전체가 기업가 정신으로 무장하고 디지털 비즈니스를 창조하게 해야 한다그리고비용 중심으로 흘러가지 않도록 가치에 무게를 둬야 한다비용은 중요한 제약사항은  있겠으나 목표는 아니다.

기술 변화가 압도적이지만 뒤쳐지지 말고 선두로 가야 한다

오늘날의 경쟁환경에서 성공하기 위해서는  가지 핵심 역량이 필요하다효과적인 디지털 전략 수립역동적인 가치 주도 포트폴리오 관리 프로세스 구현빠르게 반복할  있는 소프트웨어 전달 역량 구축그리고 적응하고 혁신하는 조직 문화 확산이그것이다.

소프트웨어 엔지니어링은 단지 기술자에게만 중요한 것이 아니라 최고위 임원에게도 중요하다

결론을 말한다면기술 변화는 비즈니스 변화를 규정하며장기적으로 사업의 생존 가능성도 높여줄 것이다최근  년간 디지털 비즈니스 애플리케이션이 요구하는 기술 스택이 급격히 복잡해지면서 기업들은 곤경에 빠졌다디지털 비즈니스에 도전해야 하는 필요성이 제기 되는 상황에서다른 한편으론 이러한 도전에 걸맞는 기술 역량을 구축하면서 미처 예상 못한 어려움에직면하고 있다기술 변화의 속도가 빨라질수록 기술 전략은 필히 비즈니스 전략을 지원해야 한다 일을 의미있게 하는 유일한 방법은 신기술을 평가하고 채택하고적응할  있는 조직을 육성하는 일이다.

choi글 : 안영회 / 베터코드 주식회사 대표이사. SW 전문지식을 기반으로 유통회사의 디지털 적응을 함께 하고 있으며, 최근에는 중국 커머스 환경에서 자사의 생존역량도 함께 키우고 있다. tony@bettercode.kr

외부 전문가 혹은 필진이 플래텀에 기고한 글입니다. 외부기고는 본지의 편집방향과 다를 수 있습니다. / 기고문의 editor@platum.kr

댓글

Leave a Comment


관련 기사

트렌드

[안영회의 베터코드] 일상 협업 이야기: 참조 아키텍처 써먹기 편

트렌드

[안영회의 베터코드]마이크로 서비스는 왜 점점 더 각광을 받을 수 밖에 없을까?

트렌드

[안영회의 베터코드] “마이크로 서비스 공부하게 책 하나 추천해주세요”

트렌드

[안영회의 베터코드] 인터넷 기업이 아닌 회사는 왜 IT를 활용하지 못하는가?