애자일 문화 구축

민첩하고 지속적인 전달 – Spotify 엔지니어링 문화

C05348A3-9AB8-42C9-A6E0-81DB3AC59FEB
           

폭포수 프로젝트 관리 방법론의 몰락

수년 전에 나는 전체 비즈니스 애플리케이션을 대체하는 대규모 "폭포" IT 프로젝트를 목격했습니다. 프로젝트는 3년이나 지연되었고 수백만 달러의 예산이 초과되었으며 마침내 프로젝트가 전달되었을 때 내부 및 외부 고객 모두가 솔루션을 거부했습니다. 그들은 엔지니어링 노력의 일부가 아니었고, 아마도 그것을 구축하는 데 걸린 5년 동안 요구 사항이 변경되었을 수 있으며, 더 중요한 것은 모두 완료될 때까지 제품을 전혀 본 적이 없다는 것입니다.

많은 조직이 동일한 경험을 공유했고 결과적으로 애자일 방법론을 채택하기 시작했습니다. 원칙은 간단합니다. 기능이 점진적으로 코딩되고 릴리스에서 시간이 지남에 따라 솔루션에 추가됨에 따라 점진적으로 진행 상황을 보여줍니다. 디자인은 유동적이며 작업 초기에 완전히 정의할 필요는 없습니다. 그리고 더 중요한 것은 이해 관계자가 소프트웨어를 조기에 사용할 수 있고 피드백을 제공하고 솔루션이 완성되기 전에 솔루션의 형성 및 엔지니어링에 영향을 미칠 수 있다는 것입니다. 애자일은 프로젝트 관리 방법론이지만 더 중요한 것은 철학과 문화입니다.

또한 애자일은 소프트웨어가 완전히 구워지기 전에 프로덕션으로 푸시하려는 개발자와 가능한 한 적은 변경으로 안정적인 프로덕션 환경을 유지하려는 운영(Ops) 팀 간의 오래된 논쟁인 DevOps 문화에 자리를 내주었습니다. . 릴리스 빈도 문제 이상으로 DevOps의 목표는 또한 "내가 구축하고 실행합니다"라는 지속적인 문제를 끝내는 것입니다. . DevOps는 개발자 팀이 솔루션을 신속하게 구축 및 배포할 수 있게 해줄 뿐만 아니라 지원 및 대기 중 책임을 그들의 손에 맡기므로 결과적으로 소프트웨어 제품의 품질과 안정성이 향상되는 경향이 있습니다. CI/CD(지속적 통합 및 지속적 배포) 파이프라인은 애자일을 극도로 끌어 올렸고 이제 각 코드 커밋은 본질적으로 자동으로 빌드, 배포, 테스트되고 결국 환경을 통해 프로덕션에 이르기까지 승격될 수 있습니다. 많은 대규모 IT 회사는 이제 예전과는 거리가 먼 하루 수백 개의 프로덕션 배포에 익숙해졌습니다.

많은 조직에서 "업무 분리"를 유지하는 것도 중요합니다. 불만을 품은 직원 한 명(또는 서투른 주니어 개발자)이 잘못된 코드를 작성하여 프로덕션 환경에 배포하는 것을 절대 허용해서는 안 됩니다. 결과적으로 많은 경우에 개발 팀은 솔루션을 프로덕션에 배포할 수 없으며 SRE(사이트 안정성 엔지니어링) 팀은 "프로덕션 관리자" 역할을 하며 다음과 같은 경우 대기 업무를 수행하여 개발 팀에 안도를 제공합니다. 적절한 문제 해결 문서가 제공됩니다.

애자일 및 DevOps 문화와 함께 마이크로서비스 의 개념도 12단계 방법론에서 설명한 것처럼 더 많은 인기를 얻었습니다. 아이디어는 새로운 것이 아니며 SOA(서비스 지향 아키텍처)도 동일한 개념을 많이 홍보했지만 JSON과 최신 프로그래밍 언어의 발전으로 인해 애플리케이션이 훨씬 쉬워졌습니다. 거대한 모놀리식 애플리케이션을 구축하는 대신 각각의 고유한 기능을 다른 애플리케이션에서 재사용할 수 있는 자체 마이크로서비스로 나눌 수 있습니다. API 호출을 통해 사용할 수 있는 기능으로 생각하십시오. 이 개념이 작동하려면 마이크로서비스가 분리되고 서로 독립적이어야 합니다. 전체 솔루션 내에서 별개의 비즈니스 기능인 마이크로서비스의 개념은 또한 제품 관리와 반대되는 제품 소유권 개념을 강화했습니다. DevOps 팀은 처음부터 끝까지 전반적인 비즈니스 기능을 책임지고 해당 솔루션을 소유하므로 사용할 도구, 때로는 사용할 프로그래밍 언어 및 프레임워크와 같은 선택을 할 수 있는 자유와 독립성이 부여됩니다.

민첩하고 지속적인 전달 – Spotify 엔지니어링 문화

이 비디오는 지금은 약간 구식이지만 여전히 아름답게 실행되고 크고 작은 많은 회사와 여전히 매우 관련이 있습니다.

Spotify의 조직 구조는 Henrik Kniberg가 분대, 부족 및 길드로 구분되는 회사 내부 구조의 작동을 자세히 설명하는 비디오를 게시한 후 유명해졌습니다.

Spotify의 교훈: 민첩한 비즈니스 구축. 그들의 엔지니어링 문화 비디오(파트 1 및 파트 2)에 설명된 Spotify 문화적 규범은 팀 조정을 강력하게 유지합니다. 

https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/

https://labs.spotify.com/2014/09/20/spotify-engineering-culture-part-2/


간단히 말해서 애자일 제품 소유권

Henrik Kniberg의 또 다른 훌륭한 비디오입니다.

댓글을 게시했습니다: 0