마지막 일터에서 나는 주 4일(에 준하는) 근무를 했다. 근로계약서에는 주당 5일 40시간 근무와 일 년 30일 유급휴가가 명시되어 있다. 월요일부터 목요일까지는 스크럼(Scrum) 방식에 따라 팀 과제를 수행했고 금요일에는 부서 활동을 했으니 업무로만 따진다면 완벽한 주 5일 근무는 아니었다.
금요일에는 팀 과제를 수행하지 않고 서로 필요한 정보를 교환하거나 주제를 정해 토론하는 식의 소규모 워크숍을 진행했다. 참석 여부는 각자가 결정했다. 부서 활동을 하는 금요일을 오픈 프라이데이(Open Friday)라고 불렀다.
마당에 꽃 가꾸고 그림 그리는 나의 언니가 스크럼이 뭐냐고 물어보면 이렇게 설명할까 한다.
"언니가 스크럼의 역사, 고안한 사람들에 대한 관심은 없을 테니 이건 패스~. 스크럼은 팀이 과제를 잘 수행하기 위한 일종의 협업 방법이야. 스크럼의 출발점은 팀과 팀에게 주어진 과제야. 모든 팀원은 수평적 관계에서 공동의 팀 과제를 달성하기 위해 협업을 하지. 윗사람이 까라면 까는 식으로 위에서 내려오는 업무 지시 따위는 없어. 부장, 팀장 같은 직급도 없어. 대신 역할이 있어. 외부에서 팀 과제를 가져와 일의 우선순위를 정하는 팀원을 제품 책임자(Product Owner)라고 해. 과제를 수행하는 팀원들을 개발팀(Development Team)이라고 불러. 팀이 과제를 잘 해내도록 모니터링하고 돕는 역할을 하는 팀원이 있는데, 바로 스크럼 마스터(Scrum Master)야. 각자의 역할에 따라 1~4주 단위로 협업하는데, 이걸 스프린트(Sprint)라고 해. 하나의 스프린트에는 과제를 숙지하는 회의, 과제 수행, 정보를 공유하는 일일 회의, 그리고 협업을 마친 후 시연하고 평가하는 작업들이 있어. 소프트웨어 개발에 사용되는 이러한 협업 방법을 스크럼이라고 해. 8~10명 정도의 팀 규모가 스크럼을 하기에 좋아."
이제 이 스크럼이란 걸로 내가 어떻게 일했는지 소개하겠다. 9명으로 구성된 우리 팀에서 나는 과제를 수행하는 개발팀에 속했다. 스프린트는 2주 간격이었고 관리 툴로 Jira를 사용했다. 스프린트의 첫날인 월요일에는 종일 회의만 했다. 9시 10분에 시작되는 스프린트 계획 회의(Sprint Planning)에서 팀은 제품 책임자가 가져온 과제(Sprint Backlog)를 서너 개의 하위 과제(User Story)로 쪼갰다. 하위 과제들은 사용자 입장에서 쉽게 풀어썼다. 이 과정에서 덜 숙지 된 내용을 보강했다.
제품 책임자가 하위 과제들의 우선순위를 정하면, 개발자들은 각 하위 과제의 책임자를 뽑았다. 처음에는 모든 개발자가 모든 하위 과제를 처리했는데 업무의 일관성과 책임감을 보완하기 위해 책임자를 선정했다. 여기까지가 1차 스프린트 계획 회의의 내용이다.
점심 식사 후 과제 책임자들은 오후 2시까지 자신이 맡은 하위 과제의 일감(Task)들을 하루치 분량으로 작성했다. 2시가 되면 개발팀만이 참석하는 2차 스프린트 계획 회의가 열렸다. 이때 하위 과제 책임자들이 각자 작성한 일감들을 소개하면 개발팀은 빠진 일감들을 보충하고 우선순위를 정했다.
모든 하위 과제와 일감에 대한 점검이 끝나면 제품 책임자와 스크럼 마스터를 불러, 스프린트 목표를 정하고 스프린트를 시작했다. 업무 상태와 흐름을 한눈에 파악하기 위해 스프린트 게시판(Sprint Board)을 사용했다. 게시판에 하위 과제들과 그에 속한 일감들을 우선순위에 따라 붙여놨다. 코로나로 재택근무 중에는 Jira Scrum Board를 사용했다. 여기까지가 2차 스프린트 계획 회의의 내용이고, 이로써 긴 하루가 끝났다.
부서 활동을 하는 금요일을 제외하고, 화요일부터 다음 주 수요일까지 만 6일 동안 개발팀은 과제 수행에 집중했다. 매일 아침 9시 10분에 제품 책임자, 스크럼 마스터, 개발팀 모두 스크럼 게시판 앞에 모여 섰다. 각자의 업무 진행에 대해 보고하는 일일 회의를 우리는 Standup이라고 불렀다. 정해진 순서 없이 한 명씩 돌아가며 어제는 어떤 일감을 처리했고, 오늘의 일감은 무엇이며, 작업 수행에 방해 요소가 있는지, 만약 있다면 지원이 필요한지에 대해 2~3분 정도 짧게 브리핑했다. 세부적 내용으로 브리핑이 길어지면 가차 없이 말을 끊었는데, 이것은 거의 내 담당이었다. 일일 회의 때 말 많은 팀원은 딱 질색이라서.
스크럼 마스터는 일일 회의 때 언급된 장애물 해결과 지원에 대해 조율하고, 일의 진척을 시각화한 번다운차트(Burndown Chart)를 관리했다. 각 하위 과제의 책임자는 자신의 과제에 집중했지만, 나머지 개발자들은 과제의 우선순위에 따라 하루치 일감을 처리했다. 일감을 선택할 때 일 처리 흐름을 꿰고 있는 과제 책임자와 긴밀히 소통했다.
스프린트가 끝나는 두 번째 주 목요일에도 온종일 회의만 했다. 9시 10분 일일 회의에서 스프린트의 성공 여부를 최종 점검했다. 10시에는 부서의 다른 제품 책임자들을 불러 2주간 수행한 과제를 40분간 시연(Sprint Review)하고 피드백을 얻었다. 시연자는 스프린트 시작할 때 자원하는 방식으로 정했다.
짧은 휴식 후 11시부터 1시간 45분 동안 스프린트에 대한 평가 회의(Sprint Retrospective)를 했다. 스크럼 마스터가 이 회의를 진행했으며 팀원 모두가 참석했다. 이때 세 항목, 즉 스프린트 동안 좋았던 점, 문제점, 그리고 토의사항 등을 다뤘다. 10분 정도 팀원들은 각자 포스트잇을 작성해서 세 가지 항목 아래에 붙였다. 이 작업이 끝나면 한 사람씩 자신이 작성한 포스트잇 내용을 짧게 설명했다. 이때 그 어떤 피드백도 허락되지 않았다. 내용이 길어지고 다툼으로 이어질 수도 있기 때문이었다. 할 얘기는 '토의사항' 항목에서 다수의 표를 얻은 것들 순으로 시간이 허락하는 한도 내에서 다뤘다. 토의 내용이 길고 복잡한 것들은 모았다가 따로 일정을 잡아 의견을 나눴다. 재택근무 중에는 스프린트 평가 회의에 Online Whiteboard Miro를 사용했다.
점심 식사 후 2시부터는 다음 스프린트에서 다룰 과제를 숙지하는 회의(Sprint Refinement)를 했다. 제품 책임자가 진행했고, 각 개발자는 2주 동안 과제를 수행할 수 있는 시간을 파악해서 알려줬다. 별다른 일정이 없다면 각 개발자는 두 번의 금요일과 종일 회의만 하는 이틀을 제외한 만 6일을 과제 수행 시간으로 가졌다. 하지만 우리는 6일의 80%인 5일만 과제 수행일로 계산했다. 개발자가 기계도 아니고, 100% 근무 시간을 오로지 과제 수행으로만 쓸 수는 없기 때문이었다. 제품 책임자는 개발자들의 업무 수행 일을 합친 값을 토대로 다음 스프린트 과제의 분량을 정한 뒤 세부 과제들을 설명했다. 이 회의를 끝으로 2주간의 스프린트를 마쳤다.
우리 부서에는 6개의 스크럼 팀이 있었다. 각 팀은 8~11명의 팀원으로 구성되었다. 모든 팀이 월요일부터 목요일까지 위에서 설명한 방식으로 일했다. 두 달에 한 번꼴로 모든 스크럼 팀이 모여 부서 관리자, 마케팅팀, 고객지원팀을 초대해 네 번의 스프린트 동안 달성한 결과를 각 팀이 돌아가며 시연했다. 이를 제품 시연(Product Review)이라고 불렀다. 제품 시연이 끝나면, 각 스크럼 팀의 제품 책임자들을 중심으로 제품 평가 회의(Product Retrospective)를 했다.
마지막 일터에서 나는 스크럼의 진가를 봤다. 스크럼을 통해 체계적이며 효과적으로 동료들과 협업했다. 성공적 협업은 공동체 의식과 열린 마음으로 가능했다. 팀원 모두가 한배를 탔고 공동의 팀 과제를 위해 각자의 역량껏 노를 저어야 했다. 오늘 처리할 일감에 장애물이 생기면 도움을 청하고, 도움을 주며 함께 문제를 해결해나갔다.
협업에 모난 구루 따위는 필요 없었다. 스스로 구루라 여기는 '악의 축' 같은 동료들이 팀에서 쫓겨나는 것을 나는 여러 번 목격했다. 스크럼으로 일하다 보니 팀원들의 관계는 촘촘히 짜인 그물 같았다. 동료가 맘에 안 든다고 피할 수 있는 업무환경이 아니었다. 협업에는 필요한 구조지만 팀원들 간 갈등의 빈도는 꽤 높았다. 업무와 동료들에게서 적당한 거리 두기가 꼭 필요했다.
가끔 회의 중에 동료들을 물끄러미 보고 있으면, 참 징글징글하다가도 오지기도 했다. 얼마의 우연이 겹쳐야 이런 인연을 만들어내는 걸까. 회사를 떠나 자발적 은퇴를 한 지 넉 달째 접어들고 있다. 회사 일 전혀 안 궁금하고 동료들도 그다지 그립지 않다. 하지만 우연히 길에서 마주친다면 맛난 케이크와 커피 한 잔 대접하며 반갑게 안부를 물을 것 같다.

Olpe/Germany
'전반전 이야기' 카테고리의 다른 글
| 찬란한 유산 (0) | 2022.04.18 |
|---|---|
| 나는 50대 아줌마 개발자였다 (0) | 2022.04.12 |
| 서화의 펭귄 인형 (0) | 2022.03.23 |
| 독일 사람들은 정말 쌀쌀맞을까? (0) | 2022.03.19 |
| 팀, 플러스 섬 게임 (0) | 2022.03.16 |