Close

DevOps에서 팀 구조의 중요성

각 팀은 회사의 광범위한 컨텍스트에 따라 서로 다른 구조가 필요합니다.

Shana Vu

제품 마케팅, DevOps


소프트웨어 팀이 DevOps를 실천하는 길을 나아갈 때는 회사의 더 큰 컨텍스트와 변화에 대한 욕구에 따라 팀마다 서로 다른 구조가 필요하다는 것을 이해해야 합니다.

DevOps 팀의 부상

회사에 DevOps 팀이 있습니까? 있을 가능성이 높습니다. DevOps 트렌드 설문조사에 따르면, 설문 조사에 참여한 조직의 2/3 이상이 “DevOps”라는 직함을 가진 팀 또는 개인을 보유하고 있는 것으로 나타났습니다.

DevOps가 널리 보급됨에 따라 소프트웨어 팀은 이제 DevOps 팀으로 간주되는 경우가 많습니다. 그러나 단순히 새로운 도구를 추가하거나 팀을 DevOps로 지정하는 것만으로는 DevOps의 이점을 완전히 실현할 수 없습니다.

DevOps와 올바르게 구현하는 방법에 대한 명확한 이해가 없으면 DevOps 혁신은 일반적인 재구성이나 최신 도구에 그칩니다. DevOps를 올바르게 수용하는 데는 팀이 새로운 구조와 새로운 관리 원칙을 가지고 특정한 기술 도구를 채택하는 문화적 변화가 수반됩니다.

DevOps 팀 구조 유형

구현할 DevOps 팀 구조에 대한 결정은 조직이 만들고 있는 제품의 수, 기술 리더십, 개발 및 운영 팀이 프로세스를 조정할 수 있는지 여부 등 다양한 요소에 따라 달라집니다.

솔루션 보기

팀 전체를 위한 DevOps 도구

관련 자료

DevOps의 이점 알아보기

모든 팀이 동일한 목표를 공유하거나 동일한 관행 및 도구를 사용하는 것은 아니라는 점을 이해해야 합니다. 팀을 구성하는 방식조차도 표준화해서는 안 됩니다. 각 팀은 회사의 광범위한 컨텍스트 및 변화에 따라 서로 다른 구조가 필요합니다. 같은 DevOps 팀이더라도 회사마다 근본적으로 다를 수 있습니다.

시장 출시 시간 단축, 배포 빈도 개선, 팀 문화 개선, 팀 및 부서 간 협업 증대 등 DevOps의 이점을 활용하려면 각 팀의 역할을 이해해야 합니다. 그러나 많은 조직에는 다양한 팀 직책이 있으며, 한 팀이 여러 역할을 수행하기도 합니다(예: 도구 선택 및 관리 역할을 하는 인프라 팀). 이러한 무분별한 확산은 리더십이 전체 조직 환경을 시각화하고 다음 중요한 질문에 답하기 어렵게 만듭니다 - 적합한 팀이 마련되어 있습니까? 어떤 팀에서도 다루지 않는 일부 영역에서의 역량이 부족합니까? 각 팀은 자율성과 다른 팀에게 받는 지원 사이에서 팀에 필요한 균형을 유지하는 것 같습니까?

'팀 토폴로지'의 탁월한 작업은 Atlassian이 다양한 DevOps 팀의 접근 방식을 바라보는 방법에 대한 출발점을 제공합니다. 아래의 팀 구조는 회사의 규모와 성숙도에 따라 다른 형태를 취합니다. 실제로는 두 개 이상의 구조를 조합하거나 한 구조에서 다른 구조로 바꾸는 것이 가장 좋은 방법인 경우가 많습니다.

개발 및 운영 협업

많은 사람들은 DevOps를 단순히 개발 및 운영팀이 유기적으로 작업하고 함께 협업하는 것이라고 생각합니다. 이것은 DevOps의 기반이며 소프트웨어 팀이 더 빠르고 안정적으로 구축, 테스트 및 출시할 수 있는 기능을 포함하여 분명한 이점을 제공합니다.

이러한 팀 구조의 성공을 위한 핵심은 개발자가 가동 시간을 유지하고 해결책을 최소화해야 하는 운영 팀의 부담을 이해하는 것입니다. 마찬가지로 운영팀이 배포 시간과 출시 시간을 단축하려는 개발팀의 요구를 이해하는 것도 중요합니다.

함께 개발 및 운영

이러한 팀 구조는 개발 및 운영 팀이 함께 모여 하나의 팀으로 운영되며 공동의 목표를 가진 통합 전선의 역할을 한다고 가정합니다. "NoOps"라고도 불리기도 하며, Facebook 또는 Netflix와 같은 단일 주요 디지털 제품을 보유한 기술 회사에서 흔히 볼 수 있습니다. 한 명이 애플리케이션을 개발하고 운영하는 "직접 빌드 및 직접 운영" 형태일 수도 있습니다.

DevOps/SRE

Google에 의해 널리 알려진 이 구조의 팀에서는 개발 팀이 소프트웨어를 실제로 실행하는 SRE(사이트 안정성 엔지니어링) 팀에 제품을 넘겨줍니다. 이 모델에서 개발 팀은 SRE 팀에 로그 및 기타 아티팩트를 제공하여 소프트웨어가 SRE 팀의 지원을 위한 충분한 표준을 충족하는지 증명합니다. 개발 팀과 SRE 팀은 운영 기준에 따라 협업하며 SRE 팀은 개발자에게 프로덕션 전에 코드를 개선하도록 요청할 수 있습니다.

플랫폼으로서의 운영

이러한 팀 구조에서 개발팀 내의 한 팀이 운영에 대한 모든 전문적인 정보의 출처 역할을 하며 IaaS(서비스형 인프라) 팀과 대부분의 인터페이스를 수행합니다. IaaS 팀은 개발팀에서 사용하는 대규모 가상 서비스를 만들기 때문에 팀 구조는 공용 클라우드에서 실행하는 애플리케이션에 따라 달라집니다.

외부 당사자로서의 DevOps

외부 당사자로서의 DevOps는 회사가 한정된 기간 동안 DevOps 컨설턴트 또는 DevOps 팀을 사용하여 개발 및 운영팀이 앞서 언급한 첫 2개의 팀 구조(개발 및 운영 협업, 함께 개발 및 운영)로 나아갈 수 있도록 지원합니다.

DevOps를 수행하는 방법에는 여러 가지가 있지만 하지 말아야 할 것도 많습니다. 팀과 DevOps 리더는 사일로, 커뮤니케이션 부족 및 커뮤니케이션보다 도구가 우선 순위가 되기와 같은 특성이 있는 안티패턴을 주의해야 합니다.


DevOps 팀의 역할 및 책임

팀 구조에 관계없이, DevOps를 실행하며 높은 기능을 발휘하는 모든 팀은 정기적인 회의를 이용하거나 여러 팀 간에 일하는 팀원이 있거나 및/또는 팀원이 두 개 부서 모두에서 일하도록 하는 등 개발 및 운영팀 간에 지식과 경험을 정기적으로 공유합니다. 높은 기능을 발휘하는 팀은 출시 시간 단축, 리드 타임 개선, 배포 빈도 증가, 제품 품질 향상, 팀 문화 개선, 팀 및 부서 간 협업 증대 등 DevOps의 이점을 특징으로 가지고 있습니다.

DevOps 팀은 일반적으로 개발 및 운영 모두에 대한 기술을 갖춘 인력으로 구성됩니다. 어떤 팀원은 코드 작성에 능숙하고 다른 팀원은 인프라 운영 및 관리에 능숙할 수 있습니다. 그러나 대기업에서는 CI/CD에서 IaaS, 자동화에 이르기까지 DevOps의 모든 측면이 역할이 될 수 있습니다. 여기에는 개발부터 프로덕션까지 애플리케이션을 조정 및 관리하는 릴리스 관리자, 팀의 CI/CD 파이프라인을 유지 관리 및 자동화하는 자동화 설계자가 포함될 수 있습니다.

그렇다면 DevOps 팀에 합류하려면 무엇이 필요합니까? DevOps 팀에 합류하기 위한 직무 요구 사항은 새로운 기술로 인해 발전하지만 우수한 DevOps 팀의 자격은 항상 동일합니다. 강력한 DevOps 실행자의 핵심 특성에는 탄탄한 기술, 원활한 커뮤니케이션, 팀 중심의 사고 방식 및 적응력이 포함됩니다. 이러한 특성의 조합은 Kubernetes 또는 Git에 대한 백과사전식 지식보다 중요할 것입니다. 물론 둘 다 있다면 더 좋겠죠.

성공을 위한 또 다른 요소는 DevOps를 팀, 협업 팀 및 조직 전반으로 전파할 의지가 있는 리더입니다. “관리자”라는 직함을 가진 사람만 리더가 될 수 있는 것은 아니며, 개발자, 운영 또는 플랫폼 팀 등 외부 팀과의 격차를 해소하도록 변화에 회의적인 팀원을 설득할 의지가 있으면 누구나 리더가 될 수 있습니다.


팀을 지원하는 소프트웨어

DevOps 도구 체인은 팀이 매일 수행하는 실제 작업에 따라 결정되지만 팀과 나머지 조직 간의 작업을 연결하고 조정하려면 몇 가지 소프트웨어가 필요합니다. Jira는 소프트웨어 개발 프로젝트를 계획, 추적 및 관리하는 강력한 도구로, 직속 팀원과 확장된 조직이 작업 상태를 지속적으로 파악할 수 있도록 합니다.

Zoom, SlackMicrosoft Teams와 같은 애플리케이션도 팀이 특히 원격 환경에서 빠르고 효율적으로 커뮤니케이션하는 데 필요합니다. 이전에는 개발자가 운영팀에 직접 가서 인시던트의 상태에 대해 문의할 수 있었습니다. 이제 가상 커뮤니케이션 앱을 통해 이와 같은 즉각적인 커뮤니케이션이 가능해졌습니다.

팀원들이 함께 작업하도록 해주는 소프트웨어는 목적이 아니라 수단이라는 점을 기억하세요. 조직이 투명성, 신뢰, 자율성이라는 DevOps의 잠재력을 최대한 실현하려는 경우 도구를 갖춘다고 해서 되는 것이 아니라 팀 단위의 노력이 필요합니다.

Shana Vu
Shana Vu

Shana is a product marketer passionate about DevOps and what it means for teams of all shapes and sizes. She loves understanding the challenges software teams face, and building content solutions that help address those challenges. If she's not at work, she's likely wandering the aisles of her local Trader Joes, strolling around Golden Gate, or grabbing a beer with friends.


이 기사 공유
다음 주제

여러분께 도움을 드릴 자료를 추천합니다.

이러한 리소스에 책갈피를 지정하여 DevOps 팀의 유형에 대해 알아보거나 Atlassian에서 DevOps에 대한 지속적인 업데이트를 확인하세요.

DevOps 일러스트레이션

DevOps 커뮤니티

DevOps 일러스트레이션

시뮬레이션 워크샵

맵 일러스트레이션

무료로 사용해보기

DevOps 뉴스레터 신청

Thank you for signing up