Slack에서 Slack을 사용하는 방법
어쩌면 Slack의 탄생 스토리를 들어본 적이 있으실지 모르겠네요. Slack은 게임 개발 회사에서 협업을 강화하기 위한 내부 도구로 사용되기 시작했습니다. 오늘날 Slack은 엔지니어링팀뿐만 아니라 마케팅 및 영업팀, HR팀과 고객 지원팀에 이르기까지, 전 세계의 다양한 기업과 팀이 사용하고 있습니다. 사람, 데이터, 도구를 하나의 중심 장소에 모아주는 채널 기반 메시징 플랫폼입니다. 또한 적응성이 뛰어나 모든 유형의 팀 구조 및 업무 스타일에 맞게 조정할 수 있습니다.
Slack이 팀에 어떠한 가치를 선사하는지에 대해서는 보통 말로 설명하는 것보다 직접 보여 주는 편이 더 수월합니다. Slack은 모든 업무에서 Slack을 활용하고자 하는 자체 엔지니어링팀을 보유한 회사이기 때문에, Slack, 곧 당사의 활용 사례를 살펴보는 것이 합리적이라고 판단했습니다. 그러면 Slack의 개발자들이 일상적으로 Slack을 어떻게 사용하는지 살펴보겠습니다.
모든 팀은 다르므로 당사에서 효과적인 방식이 모든 회사에 효과적인 것은 아닙니다. 하지만 당사 엔지니어링팀이 Slack을 사용하는 방법을 확인하고 통찰력을 얻어 보세요.
수직적/수평적 협업
똑같은 엔지니어링팀은 없습니다. 기업의 규모, 구조와 해당하는 업계는 물론, 엔지니어링팀이 핵심 제품을 구축하는지, 조직의 광범위한 업무를 지원하는지, 아니면 두 가지 역할을 모두를 수행하는지에 따라 상황이 달라집니다. 여기에 영향을 미치는 요소는 무수하게 많습니다.
일부 기업은 아키텍트, 개발자, 테스터 등 개발 프로세스 단계에 따라 분할된 전통적인 폭포형 팀 구조를 유지하고 있습니다.
이와 달리 Slack에서는 다음과 같은 수직적 주요 부문에 따라 팀을 분할합니다.
- 플랫폼: 외부 개발자 대상 기능(예: API)을 담당하는 팀
- 코어: 대부분의 사용자가 알고 있듯이 핵심 제품인 Slack을 담당하는 팀
- 엔터프라이즈: 대규모 비즈니스에 맞게 Slack을 확장하는 팀
- 인프라: 백 엔드 업무를 담당하는 팀
각 팀은 자체 목표 및 프로세스를 갖고 있지만, 각기 다른 시점에 함께 협력해야 하므로 수직적/수평적 협업이 이루어져야 합니다. 이것이 바로, Slack이 기능 출시 관리 또는 분기말 보고 등 프로젝트 또는 목표별로 운영되는 팀 간 협업 채널을 보유하고 있는 이유입니다. 또한 프론트 엔드 개발자가 팀 간 모범 사례를 공유하는 등의 용도로 사용할 수 있는 직무별 채널이 있습니다.
이 네 가지 주요 부문 중 하나인 플랫폼팀에 대해 자세히 살펴보겠습니다.
Slack에서 Slack을 사용하는 방법: 플랫폼팀
각 팀은 각기 다른 방식으로 Slack을 이용합니다. (이것이 Slack의 장점이죠.) 그러나 플랫폼팀을 통해 당사에서 자체 워크스페이스를 어떻게 사용하고 있는지 엿볼 수 있을 것입니다.
Slack의 주요 엔지니어링팀 네 곳과 마찬가지로, 플랫폼팀에게도 본거지로 활용 중인 팀 채널이 있습니다. 일반적인 팀 공지가 이 채널에서 이루어집니다. 이 채널은 모든 팀 멤버를 포함하고 있으며, 체크인하기 원하는 다른 팀의 직원들에게도 개방되어 있습니다. 개발 부문의 기능마다 자체 하위 팀 채널들이 있습니다. 예를 들어, 블록 키트 팀에는 다음 채널이 있습니다.
- #devel-block-kit
여기서는 엔지니어, 프로젝트 관리자, 설계자, 테스터 등이 일상 업무를 논의하고 관리합니다. 또한 코드 병합, 설계 업데이트 및 제품 사양 초안 등을 볼 수 있습니다.
- #feat-block-kit
이 채널에서는 기능을 전체적으로 살펴보며 논의합니다. 제품팀, 설계팀, 개발팀은 범위에 포함할 사항에 대해 합의하고, 특정 요구사항을 결정하며, 극단적 상황이 발생하는 경우 결정을 내립니다.
- #gtm-block-kit
“gtm” 접두사가 있는 채널은 신제품 출시를 위한 시장 출시 전략을 논의하는 곳입니다.
“과거에는 장애, 중단 또는 코드 업데이트에 관해 수많은 이메일 알림을 받는 경우도 있었지만, 실제로 이를 확인하여 할 수 있는 일은 없습니다. Slack에서는 상황 정보에 맞는 알림을 확인하고, 그 자리에서 바로 처리할 수도 있습니다.”
Slack에는 버그 보고, 장애, 중단 등을 관리하기 위한 심사 및 에스컬레이션 채널이 있습니다. PagerDuty 앱은 적합한 채널에 장애 알림을 포스트하고, Slack 내에서 바로 심사할 수 있도록 지원합니다.
대부분의 채널은 공개이며 플랫폼팀에서 구축하는 것에 관심을 가진 다른 팀의 사람들이 참여합니다. 하지만 비공개 채널이 필요할 때도 있습니다. 예를 들어 Slack에는 비공개 리더십 채널과 중요한 커뮤니케이션을 팀원들에게 하향식으로 전달하는 방법을 논의하기 위한 또 다른 채널이 있습니다.
Slack에서 Slack 앱을 사용하는 방법
'Slack 앱'에 대해 말할 때는 앞 섹션에서 언급했던 PagerDuty 등의 앱에 대해 이야기하는 것입니다. 중요한 소프트웨어 도구를 Slack 워크스페이스 내에서 액세스하고 이용할 수 있도록 지원해 주는 앱이죠.
Slack 앱이 팀의 업무를 스마트하게 만들어주는 몇 가지 일반적인 시나리오를 소개하겠습니다.
배포
우리는 Slack 앱을 사용하여 GitHub 및 기타 서비스의 푸시 알림을 보냅니다. 이를 통해 커뮤니케이션을 자동화 및 간소화할 수 있으므로 궁극적으로 더 빠르고 안전한 코드 배포가 가능합니다.
버그 추적
URL을 찾아서 열지 않고도 Slack 내에서 Jira 티켓을 미리 보고 해결할 수 있습니다.
양식 세부정보가 미리 입력되어 있으므로, 티켓은 심사를 위해 적합한 위치로 자동으로 이동합니다. 또한 빠른 시각적 신호를 이용해 업무 속도를 높이고 있습니다. 예를 들어 ⚪, 🔵 및 🔴 이모티콘을 이용해 티켓의 우선순위를 설정하고, 사용자지정 앱이 해당 우선순위를 바탕으로 티켓을 정리합니다.
항목을 검토할 때는 👀 리액티콘을 사용합니다. 그런 다음, 문제가 해결되었음을 나타내기 위해 ✅ 리액티콘을 사용합니다.
고객 지원
생성된 모든 Zendesk 티켓은 팀원들이 협업을 통해 쉽게 처리할 수 있도록 관련 Slack 채널로 전송됩니다.
“우리는 Slack 워크스페이스 내에서 수많은 앱(사용자 지정 앱과 공개적으로 이용 가능한 앱 모두)을 사용하지만, 리마인더와 같은 Slack에 내장된 기능도 팀을 하나로 모으고 현재 발생하고 있는 일에 대해 논의할 수 있는 좋은 방법입니다. 그러한 단순한 기능 덕분에 일일 미팅 때문에 직원들의 업무를 방해하지 않을 수 있습니다.”
빠른 통찰력을 제공하는 그래프
다른 소프트웨어에 로그인하는 대신, 간편한 그래프를 Slack으로 가져와 문제를 포착하고 문제를 빠르게 해결할 수 있습니다. 예를 들어, 그래프는 API의 500가지 오류 등급을 모니터링하고, 서버 문제로 인한 최근의 오류 급증을 한눈에 볼 수 있게 해줍니다.
DevOps용으로 사용하는 일부 Slack 앱
개발자 도구
Bitbucket
개발자 도구
개발자 도구
개발자 도구
개발자 도구
생각해 보기
지금까지 Slack에서 Slack을 사용하는 방법에 대해 간략하게 살펴보았습니다. 이것은 한 가지 예에 불과합니다. 엔지니어링팀만 해도 플랫폼을 더 효율적으로 사용하기 위해 다양한 방식을 활용하고 있습니다.
여기에서 Slack을 위한 봇, 앱, 도구 및 워크플로를 구축하는 방법에 관해 자세히 알아보세요. 또는 영업팀에 문의해 엔지니어링팀이 Slack을 최대한 활용할 수 있는 방법에 대해 논의해 보세요.