반응형
다음은 이 글의 동영상 버전입니다.
우리 팀이 높은 성과를 내는 조직이 되기 위해서 가장 필요한 것은 무엇일까요?
회사가 성장하면서 끊임없이 하게 되는 질문입니다.
지난주 Accelerate 디지털 트랜스포메이션 엔진 이라는 책을 읽으며,
기존에 생각하고 있던 개발프로세스 개선과 새로운 영감들을 많이 정리할 수 있었습니다.
연구에 의하면 고성과 팀은 저성과 팀에 비해 다음과 같은 차이를 보였다고 합니다.
-
46배나 더 자주 코드를 배포했다.
-
계획에서 배포까지의 리드타임이 440배 빨랐다.
-
다운타임에서 회복하는 평균시간이 170배 빨랐다.
-
변화 실패율이 5배나 낮았다. 즉, 변화에 실패할 확률이 1/5이다.
그렇다면 고성과 팀이 되는데 가장 큰 영향을 미치는 것은 무엇일까요?
책에서 말하는 결론은,
Software delivery performance 즉, 전달 성과가 조직의 성과에 가장 큰 영향을 미친다고 합니다.
이 책은 DevOps 전문가인 Nicole Frosgren, Jez Humble, Gene Kim이 고성과 IT 조직에 대한 연구를 기록한 글입니다.
영문판의 제목은 Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations 입니다. 제목에서 처럼 Lean Software와 DevOps에 대한 내용을 주로 다루고 있습니다.
조직의 성과에 가장 큰 영향을 미치는 Software delivery performance를 높이기 위해서는 어떤 역량들이 필요할까요?
책에서는 여러가지 역량들을 소개하고 있고, 그것들은 다음과 같이 5가지 범주로 나눌 수 있었습니다.
-
Continuous Delivery (CD, 지속적 전달)
-
Architecture (아키텍처)
-
Product & Process (제품 및 프로세스)
-
Lean Management & Monitoring (린 관리 및 모니터링)
-
Culture (문화)
각 항목들의 세부사항들을 정리하면 다음과 같습니다.
Continuous Delivery (CD, 지속적 전달)
Continuous Delivery는 소프트웨어 Release를 자동화 하는 것을 의미합니다.
-
Version Control (버전 컨트롤)
-
배포 프로세스 자동화
-
Continuous Integration (CI, 지속적 통합)
-
Trunk 기반의 개발
-
테스트 자동화
-
테스트 데이터 관리
-
보안 통합
-
Continuous Delivery(CD, 지속적 전달)
Architecture (아키텍처)
-
Loosely Coupled
-
권한이 부여된 팀
Product & Process (제품 및 프로세스)
-
고객의 피드백을 수집하고 구현
-
작업 흐름의 시각화
-
소규모 배치
-
팀 실험의 활성화
Lean Management & Monitoring (린 관리 및 모니터링)
-
변경 승인 프로세스 간소화
-
애플리케이션 & 인프라 모니터링
-
시스템 상태를 사전에 예방
-
프로세스를 개선하고 WIP를 제한
-
품질 및 작업을 시각화
Culture (문화)
-
학습을 장려
-
팀 간 협업을 지원하고 촉진
-
작업을 의미 있게 만드는 자원과 도구를 제공
-
트랜스포메이션 리더십을 지원
책에서 소개한 내용들 중 우리 환경에 필요하고 맞는 부분을 찾아 잘 적용하면, 개발 Performance, 품질, 보안등 많은 부분에 큰 효과가 있을 것 같습니다.
이렇게 프로세스를 잘 다듬는다면, 시스템 개발과 운영에 더 효율적이고, 스트레스를 덜 받는 개발자의 복지가 될 수 있지 않을까요?
관심 있으신 분들은 꼭 한번 읽어 보시길 추천드립니다.
반응형
'코드기어의 끄적거림' 카테고리의 다른 글
위기가 스토리를 만든다 (7) | 2024.10.09 |
---|---|
당신은 다른 사람의 성공에 기여한 적 있는가? (0) | 2023.01.24 |
이토록 평범한 미래 - 사랑과 쓸쓸함에 대하여 (0) | 2023.01.24 |