실리콘밸리를 그리다 팀이 브런치에 게재한 글을 편집한 뒤 모비인사이드에서 한 번 더 소개합니다

 

다른 팀원들과 소통하는 시간은 좋은 프로덕트를 만드는 데 반드시 필요하다. 실리콘밸리에서처럼 개발자, 디자이너, PM 등 모든 사람이 종합적인 사고를 하는 의사결정권자인 경우에는 더더욱 그렇다. 엔지니어의 경우 혼자 코드를 쓰는 시간이 프로젝트의 진전을 위해 기여를 하는 시간이라면 소통의 시간은 프로젝트의 퀄리티와 옳은 의사 결정을 위한 시간이 된다.

사내 소통의 방법은 크게 직접 만나지 않고 이야기하는 비대면 소통과 미팅룸이나 화상회의를 잡고 만나서 이야기하는 대면 소통, 그리고 업무 외에 친목을 나누는 소통으로 나눌 수 있다.

 

비대면 소통

애자일 도구와 코드 저장소

사실 우리는 혼자 일하는 동안에도 끊임없이 의견과 정보를 교환하는 일을 하고 있다. 예를 들어 소프트웨어 엔지니어가 코드를 작성하고 테스트하고 다시 저장소에 저장하는 일은 상당한 수준의 정보 교환을 바탕으로 한다.

•애자일 도구를 통해 태스크를 선택한다.

•프로덕트 매니저가 작성한 스토리와 에픽을 읽는다.

•다른 개발자들의 코드를 읽고 이해한다.

•코드를 작성하고 공용 저장소(Git Repository 등)에 저장한다.

•애자일 도구에서 태스크의 진행 상황과 결과를 표시한다.

이렇게 엔지니어, 프로젝트 매니저, 엔지니어링 매니저 사이에는 미팅이 없이도 끊임없는 정보 교환이 이루어진다.

사내 위키 (문서 클라우드)

정보의 양이 많고 공유 방법이 수동적(passive)이어도 괜찮은 ‘개발 가이드라인’, ‘테스트 방법론’, ‘새로 온 엔지니어를 위한 개발환경 설정 방법’과 같은 문서는 사내 위키 등의 클라우드 문서로 공유한다. 클라우드 문서를 보면서 개발환경을 만들다 보면 문서가 쓰인 시점으로부터 변한 내용을 발견하는 경우가 있는데, 이 내용을 업데이트하는 것은 사용자의 몫으로 주어진다. 기술의 발전은 똑똑한 한 명이 해서 나누어주는 것이 아니라 여러 사람의 공동 책임이다.

이메일

정보의 양이 그것보다는 적으면서 의견이나 정보의 교환이 더 능동적으로 일어나는 경우에는 이메일을 사용한다. 회사의 업무가 워낙 빠른 싸이클로 이루어지다 보니, 이메일의 질문에 한 줄씩 답하는 답글이 내용에 계속 포함되면서 thread가 길어지는 경우가 있는데, 이런 일을 피하기 위해 클라우드 문서를 만들고 그 링크를 공유하는 방법을 사용하기도 한다. 20명에게 보내어진 장문의 이메일에 한 줄씩 답변을 다는 것은 상당히 전투적으로 느껴질 뿐 아니라 모바일 기기의 제한된 화면에서 작업하기에 효과적이지 못한 방법이다.

메신저

정보의 양이 이메일보다 작고 내용이 일시적이면서 정보의 교환 주기가 이메일보다 빨라야 하는 경우에는 채팅을 사용하는데, 요즘 팀 협업도구라고 불리는 클라우드 서비스의 경우에는 메신저의 기능이 상당히 강화되어 있어 (검색, 태그, 그룹 멤버십, 첨부 파일의 팀 공유, 등) 이메일 서버가 담당해야 하는 부하를 상당히 줄여주는 효과가 있다.

 

업무를 위한 대면 소통
Ad-hoc 미팅

Ad-hoc 미팅은 그때그때 필요에 따라서 만나는 미팅이다. 메신저나 이메일보다 더 빠르고 확실한 결정을 내려야 할 때 활용한다. 그냥 채팅으로 이야기하다 답답하면 캘린더에 아무 때나 미팅을 잡고 초대를 하게 된다.

실리콘 밸리의 오픈 스페이스 사무실에서는 직급에 관계없이 몇 분 정도의 대화라면 따로 미팅을 잡지 않고 자리로 직접 가서 ‘Hi Alex, do you have a minute?’으로 시작하는 대화를 나누는 일이 흔하게 일어난다. 또한 집에서 일을 하거나 원격으로 일을 하는 경우가 많기 때문에 화상 통화를 하는 경우도 자주 있으며, 각 회의실마다 화상 통화 시스템이 갖추어져 있다.

꼭 일 이야기가 아니더라도 직접 대화를 하는 것은 매우 중요하다. 팀 미팅에서 새로 찾아낸 연구과제를 누가 맡을 것인지를 논의하다 어떤 팀원의 기분을 상하게 만든 일이 있었는데, 직접 만나서 이런저런 이야기를 하다 보니 자연스럽게 알게 되었고 미안한 마음을 표현하고 그런 일이 다시 일어나지 않도록 조심할 수 있는 계기가 된 일이 있다. 이러한 대화가 없다면 팀은 가족이 아닌 약육강식의 정글처럼 느끼게 될지도 모른다.

1:1 미팅

1:1 미팅은 정기적으로 다른 직원들과 1:1과 대화하는 30분-1시간의 시간이다. 나를 직접 관리해주는 매니저와는 기본적으로 1주일 내지는 2주일에 한 번씩 1:1 시간을 갖는다. 그때 주로 매니저들이 하는 질문은 다음과 같다:

•Are you happy? 행복 하니? (혹시 걱정되거나 기분 나쁜 일은 없니?)

•Do you have any issues? (혹시 문제가 되는 일이 있니?)

•What’s on your mind? (무슨 생각 하고 있니?)

1:1 회의에서 가장 중요한 것은 나의 행복에 대한 이야기이다. 나의 업무 효율이 가장 높을 때는 내가 지금 수행해야 하는 일 말고 다른 걱정을 전혀 할 필요가 없을 때이다. 매니저의 가장 중요한 역할은 내가 최고의 업무 효율을 낼 수 있도록 하는 일이고, 그래서 내 행복을 체크하고 일 외에 걱정할 일이 없도록 만들어 주는 것이 매우 중요하다. 그래서 1:1 미팅에서는 동료들과 싸운 이야기, 공부하다가 어려운 점, 가족들과 싸운 이야기 등 내 기분과 행복도에 영향을 미칠 수 있는 모든 이야기를 한다. 회사의 매니저가 개인의 행복과 관련된 모든 일에 대해 도움을 주는 일은 불가능하겠지만 최대한 내 행복을 위해 조언을 해 주고 비자나 업무 조정, 다른 팀과 대화 등 실제 문제를 해결해 주기도 한다.

또 하나의 중요한 주제는 멘토링이다. 매니저는 내가 앞으로 발전하기 위해서 어떤 프로젝트를 하는 것이 좋은지, 어떤 공부를 하는 것이 좋은지 조언을 준다. 나의 멘토이자 매니저였던 Dominic은 입버릇처럼 다음과 같이 표현했다. ‘One on one is a sacred space for us. (1:1 미팅은 성스러운 것이야.)’ 어떤 급박한 상황이 오더라도 1:1 미팅을 취소하는 일은 없어야 한다고 강조하면서 한 이야기다.

애자일 미팅
스크럼 스탠드업, 스프린트 계획, 스프린트 리뷰

앞서 [24, 애자일 방법론으로 프로젝트 진행하기]에서 살펴본 것처럼, 프로젝트에 속해있는 개발 조직의 팀원들은 스탠드업 미팅으로 일과가 시작된다. 매니저, 아키텍트, 디자이너처럼 두 개 이상의 프로젝트에 공유 리소스로 참여하고 있는 팀원들은 오전의 반 시간 이상을 스탠드업 미팅에 참여하면서 보내는 경우도 흔한데, 이런 이유로 더더욱 스탠드업 미팅의 간결함이 강조된다.

각 팀원들의 작업 내용은 이미 애자일 도구를 통해 공유가 되고 있기 때문에 각 팀원들은 자신의 차례에서 ‘어제 수행한 태스크 제목, 오늘 수행할 태스크 제목, 그리고 작업을 방해하는 요소가 있는지, 있다면 누구의 도움이 필요한지’만 말하면 된다. 만약 스탠드업 미팅에 참여하는 사람이 15명 이상이라면 가급적 팀을 쪼개서 독립적인 스크럼팀을 구성하고 한 달에 한번 정도 ‘Scrum of Scrum’ 미팅을 하면서 스크럼 팀 사이에 조율해야 하는 일이 반복되는 일이 있는지 찾고 예방하도록 한다. 매니저들은 각 스크럼팀 간의 업무의 동기화(synchronization)나 연계(integration)에 관련된 일에 신경을 많이 쓴다.

애자일 미팅은 프로젝트 단위임으로 팀의 경계에 국한되지 않는다. 위의 그림처럼 여러 팀의 매니저와 팀원들이 함께 하는 경우도 있고 몇몇 엔지니어들끼리만 모여서 하는 경우도 있다.

스프린트 계획 미팅과 리뷰 미팅은 여기에 있는 사람들이 일반적으로 1-2주 간격인 스프린트 사이클마다 모여 스프린트가 계속될 때마다 개선점을 찾고 새로운 스프린트에서 고객에게 전달할 수 있는 포인트를 최대화할 수 있도록 논의한다. 이 미팅은 스탠드업 미팅보다 사이클이 길기 때문에 간접적으로 스프린트에 참여하는 다른 인원들도 참여하는 것이 보통이다.

팀 미팅

스크럼 팀이 회사 안의 작은 회사라고 생각하면, 팀 미팅이 일어나는 공간은 회사 안의 작은 집이라고 생각할 수 있다. 고객의 요구를 수행하면서 돈을 벌어오는 조직인 각 스크럼 팀들이 보다 효율적으로 업무를 수행하기 위해 각 역할별 수평 조직인 팀 미팅에 매주 또는 격주로 모인다.

각 스크럼 팀에서 공통적으로 필요한 내용을 해결하거나 수평조직 차원에서 해결해야 하는 일들을 논의하는데 시간을 쓴다. 예를 들어 테스팅 팀에서 자료에 기반한 테스팅을 조금 더 수월하게 운영하기 위해 기존의 JUnit에서 TestNG로 전환하기로 결정했다면 이것은 전체 테스트 웨어에 영향을 주는 일이므로 모든 스프린트 일정에 영향을 최소화할 수 있도록 매니저가 팀원들과 상의할 것이다. 이렇게 수평조직이 존재하는 이유는 각 역할을 수행하면서 축적된 지식을 많이 가진 사람이 그 비슷한 역할을 보다 쉽게 수행할 수 있도록 도와주는 역할을 하는 것으로 매니저의 역할이 발전해 왔기 때문이다.

팀 미팅을 통해 일만 하는 것은 아니다. 팀 차원에서 하루 업무를 째고, 방탈출, 세그웨이 타고 관광하기, zip lining 등의 팀 빌딩 시간을 갖기도 하며, 한 달에 두 번 정도 점심식사를 같이 하기도 한다. 업무가 끝나는 5시 이후의 회식은 없으며, 만약 사람들이 모였다 해도 매니저가 주도하는 일은 없다.

Staff 미팅

팀이 커질수록 하나가 되어 움직이는 일이 점점 힘들어진다. 개발 조직은 각각의 역할을 담당하는 수평 조직들의 발전을 추구함과 동시에 고객이 원하는 제품을 되도록 빨리 시장에 내놓는 두 마리의 토끼를 동시에 잡아야 하는데, 이를 위해 팀을 이끄는 리더로부터 높은 수준의 균형감각이 요구된다.

엔지니어링 팀이 마케팅, 세일즈, 비즈니스 개발팀과 같이 설정한 목표를 달성하기 위해 분기별 목표를 세웠다면 그 목표를 위해 매일 직접적으로 일하는 조직은 수직 조직인 스크럼일 것이다. 하지만 일의 양이 늘어날 때 팀의 사이즈가 비례적으로, 혹은 그것보다 많이 늘어나야 한다면 우리는 그것을 Scalable하지 못하다고 표현한다.

엔지니어링 Staff 미팅은 회사가 그러한 과제를 수행하는 동시에 팀과 개인의 역량을 키워 팀이 더 큰 과제를 효율적으로 수행할 수 있도록 계속 고민하고 노력하는 자리이다.

All-hands 미팅

개발팀처럼 여러 수평/수직 조직을 아우르는 팀이 모이는 비교적 작은 크기의 All-hands가 있는가 하면, 회사의 모든 직원이 모이는 All-hands 미팅도 있다. 모임의 크기가 커질수록 비용이 많이 들기 때문에 자주 할 수는 없지만 전반적으로 수많은 전 직원이 한 공간에 모여 있고 내가 그중 하나라는 미묘한 짜릿함을 제공하며, 미팅을 통해 한 미션을 수행하는 동지로서의 애사심을 확인할 수 있는 공간이다. 이 미팅을 통해 그간 있었던 성공을 축하하고, 실패를 성찰하며, 다 같이 자신의 하루하루 쌓아온 노력이 점점 큰 덩어리로 구체적인 결실로 나타나는 것을 확인할 수 있도록 내용이 구성된다.

Engineering All-hands에서는 최근에 성공적으로 수행한 프로젝트에 대해 엔지니어의 입장에서 흥미로울만한 내용을 강조해서 공유한다. 또한 반복되는 문제점에 대해 포스트모템을 실시한 결과를 보고하고 예방책을 공유하는 것으로 다 같이 발전하는 데 필요한 내용을 강조하는 공간이 되기도 한다. 엔지니어링 프로세스는 계속 발전하는 것이므로 팀 차원에서 이미 이메일을 통해 공지된 내용의 배경을 설명하고 각 의사 결정 과정에 필요한 의견이 수렴되었는지 확인하는 자리이기도 하다.

전사적 All-hands에는 고급스러운 아침식사가 제공되기도 하고, CEO는 TV쇼 호스트처럼 회사 전체의 각 팀에서 일어난 성과를 각 팀장들이 자랑할 수 있는 공간을 제공한다. 회사의 영업 실적, 재정 상황에 대한 내용을 투명하게 설명하기도 하고 질문과 응답 시간을 갖기도 하지만, 가장 재미있는 시간은 새로 입사한 인력들의 자기소개 시간이다. 비교적 짧은 시간 안에 강한 인상을 심어줄 수 있도록 최선을 다하기 때문에 새로 입사한 사람들의 개성이 강한 목소리를 들으면서 회사가 성장하고 있는 것을 느낄 수 있다.

업무 외 미팅들

Brown Bag 미팅

Image Credit

브라운백 미팅의 이름은 점심을 싸오는 갈색 종이 백에서 유래했다. 각자 점심시간에 샌드위치 등의 가벼운 도시락을 싸 들고 와서 하는 가벼운 미팅이다. 집에서 점심을 싸오지 않는 사람이 더 많으므로, 피자를 배달하는 것이 보통이다 보니 Pizza Box 미팅이 더 어울리는 이름일지도 모르겠다.

브라운백 미팅에서는 신기술에 대해 강연을 하기도 하고, 자신이 해결한 어려웠던 문제를 이야기하기도 한다. 서로 가볍게 친해질 수도 있고 배울 수도 있는 의미 있는 시간이다.

혁신은 뛰어난 한 사람이 만드는 것이 아니라, 이러한 작은 성공들을 공유하는 데에서 서로 자극이 되고, 그 정보가 씨앗이 되어 점진적으로 만들어진다.

Game Night & Happy Hour
가끔 팀원들끼리 모여 보드게임이나 카드게임을 하기도 하고 금요일 오후 4시쯤에는 회사에서 Happy Hour라는 이름으로 맥주를 한잔 하면서 이런저런 이야기를 하기도 한다.

퇴근 후 시간에 하면 참여가 저조하고 가족 간의 시간을 침해하므로 대부분 점심시간이나 오후 4시쯤을 활용한다. 5시 이후 저녁시간에 하면 대부분 싱글들만의 모임이 된다.

Meet Up
Meet Up은 관심사가 비슷한 사람들이 만나는 동호회 같은 성격의 모임을 호스팅하고 참여할 수 있도록 한 회사가 플랫폼을 만들어 제공하는 서비스 이름이다. 실리콘밸리에서는 회사 밖의 엔지니어들을 회사로 초대해서 서로 비슷한 역할을 하는 사람들끼리 모여 지역 사회 차원의 Brown Bag미팅을 열어 비슷한 문제를 어떻게 풀었는가 정보를 교환하기 위해 Meet Up을 활용한다. 이를 통해 회사의 기술에 대한 인지도를 높이는 부차적인 효과가 있어, 계속 훌륭한 인재를 뽑아야 하는 성장하는 회사에서 많이 개최한다.

팀이 하나가 되어 일하기 위해 꼭 필요한 만큼의 정보교환
회사의 고객을 만족시키는 제품과 서비스를 만들어내고, 그 과정을 통해 회사의 미션에 한 발짝 더 다가가기 위해 일하는 방법을 결정하고 필요한 정보를 공유하는 효과적인 방법으로 여러 가지 형식의 미팅을 사용한다. 위에서 살펴본 미팅 외에도 목적을 분명히 하는 일시적인 미팅이 많이 있다. 고객에 직접 영향을 주거나 개발과정에 지장을 준 사고가 있었다면 포스트모템이라는 형식으로 관계자들이 모여 재발 방지에 노력한다.

애자일 프로세스에서 스토리의 크기를 예측하는 미팅, 프로세스 개선을 하기 위한 미팅, 기술 아키텍처를 간소화하기 위한 미팅, 등 매일매일 미팅에서 사람들을 만난다. 미팅이 계속 많아져 일할 시간이 줄어들고 있다면 우리는 간단한 질문을 통해 미팅이 필요한지, 아니면 다른 형식의 커뮤니케이션이 더 효율적일 수 있는지 알아보는 일이 필요하다.

미팅에 참여한 한 사람 한 사람의 시급을 생각해보면, 미팅은 사실 정말 비싼 시간일 수 있다. 만약 한 사람의 이야기를 듣는 일이라면 이메일이면 충분할 수 있다. 그리고 실시간으로 소통해야 하는 것이 아니라면 클라우드 문서로도 충분할 수 있다.

 

글: Aiden. 엔지니어링 매니저. 데이터 수집을 통한 프로세스 개선에 관심이 많음.

그림: Chili. 디자이너. 생각을 그림으로 요약하는데 관심이 많음.