DevOps 텍스트 교육
DevOps 팀이 업무 개선에 시간을 따로 확보해야 하는 이유는 무엇인가요?
업무를 개선할 시간을 따로 확보하는 것은 DevOps에서 새로 나온 기법이 아닙니다. 린 제조는 수십 년 전에 다음과 같은 좌우명을 받아들였습니다. ‘업무를 개선하는 것이 업무 자체보다 중요하다.”
’ 다시 말해 오늘 일하는 방식을 개선하지 않으면 내일 그 일이 낡아 버립니다. 결국 시장 경쟁력도 저하됩니다. 그래서 DevOps 방법론은 팀과 조직이 계속 학습하도록 이 기법을 린 제조에서 빌려 왔습니다.
본인과 DevOps 팀이 시간을 활용하여 업무를 개선하고 지속적으로 학습할 수 있도록 DevOps 소프트웨어 개발 및 제공 방법론에서 몇 가지 아이디어를 소개합니다.
- 외부 사람의 피드백: 사업 프로세스 밖에 있는 사람이 프로세스 안의 사람을 집중적으로 지원합니다. 외부의 피드백은 새로운 시각을 제시하고 프로세스를 개선하며 비효율을 없애는 데 큰 도움이 될 수 있습니다.
- 기술 부채를 정기적으로 줄이기: 팀을 정기적으로 모아 새 기능 작업을 중단하고 기술 부채를 줄입니다. 전체 가치 흐름에 걸쳐 역량을 갖춘 엔지니어가 토론에 그치지 않고 코드, 환경, 도구, 구성 요소 및 아키텍처를 실제로 개선하여 기술 부채를 줄입니다. 새 기능을 더 안정적이고 탄탄한 기반 위에 구축할 수 있습니다.
- 혁신을 위한 시간을 정기적으로 확보하기: 엔지니어가 기술과 비즈니스를 혁신할 수 있도록 업무 시간의 일정 비율을 비워 두세요. 선도적인 DevOps 조직인 Google은 이 방식을 수년 동안 써 왔습니다. Google 직원은 별도로 배정되지 않은 시간 20%를 프로토타입, 제품, 기능, 테스트 모음 및 솔루션 개발에 사용합니다. Gmail, Google Maps, AdSense는 이 20%의 시간에 만들어진 주요 제품의 예입니다.
- 교육과 학습 장려하기: 가르치는 데 시간을 할애하세요. 사내 콘퍼런스, 워크숍, 멘토링, 코칭, 상담을 마련해 팀을 정기적으로 교육합니다. 개발자는 운영 업무와 그 어려움을 배우고 운영 엔지니어는 개발을 배웁니다. 서로 하는 일을 더 잘 이해하고 그 이해를 유지하는 데 도움이 됩니다. 양쪽이 상대의 업무를 잘 알고 개인적으로 연결된 협업 기반을 마련하게 됩니다. 또한 DevOps 팀이 콘퍼런스에 참석하여 다른 조직은 비슷한 엔지니어링 및 운영 과제를 어떻게 해결하는지 알아보도록 권장하세요.
- 분야별 전문가가 가르치게 하기: 진행 중인 프로젝트와 관련이 없더라도, 누구나 분야별 전문가를 찾아가 질문하고 논의할 수 있는 시간을 마련하세요. 우리는 평생 배웁니다. 팀도 평생 배우는 사람들이기에 이 사실을 존중하고 이해합니다.
- 혁신을 위한 해커톤 개최하기: Facebook의 Marc Zuckerberg는 이렇게 설명합니다. ‘몇 달마다 해커톤을 열어 모두가 새로운 아이디어의 프로토타입을 만듭니다. 마지막에는 팀 전체가 모여 만들어진 것을 살펴봅니다. Timeline, 채팅, 영상, 모바일 개발 프레임워크와 HipHop 컴파일러 같은 핵심 인프라 등 가장 성공적인 제품 상당수가 해커톤에서 나왔습니다.’
결론
개선 시간을 정기적으로 마련하면 가치 흐름에 참여하는 모두가 혁신과 품질을 책임질 수 있습니다. 따라서 DevOps 팀의 모든 엔지니어가 안전, 품질, 학습, 신뢰성, 개선을 일상 업무에 계속 반영하고, 이는 궁극적으로 조직이 고객에게 제공하는 소프트웨어 제품과 서비스에 통합됩니다.
DevOps 팀에서 서로 돕다 보면 조직은 경쟁사를 앞서고 팀원들은 사람으로서, 엔지니어로서 잠재력을 최대한 발휘하게 됩니다.
