이렇게 많았어!?
페어워크(Pair Work)의 장점들

페어워크를 도입 할 때 알아야 할 것 - Part 1

by 민현정

*Tanzu Labs Japan에서 근무하고 있는 프로덕트 디자이너 Erika의 게시물을 한국어로 옮겨온 내용입니다.


안녕하세요! Tanzu Labs에서 디자이너로 일하고 있는 Erika입니다.

저희는 페어 프로그래밍, 페어 디자인 등 모든 역할을 페어워크로 진행하고 있습니다. 제 주변에서 페어워크를 도입해봤지만, 잘 이어지지 않았다는 이야기를 종종 듣게 됩니다. 이야기를 들어보면, 지속이 어려운 이유 중 하나는 '페어워크=OJT의 연장선'이라는 잘못된 인식이 있는 것 같습니다.


주니어의 역량 향상만을 목적으로 페어워크를 도입하면, 시니어가 재미를 느끼지 못하거나, 주니어가 지치는 등 오히려 힘들어지는 것 같습니다. 여기서 '페어워크에는 더 다양한 장점이 있는데, 아쉽다..'라고 생각했습니다. 그래서,


1. 페어워크의 장점 (본 게시물)

2. 조합별 페어워크에 필요한 마인드셋


라는 두각지 각도에서 생각을 정리해 보았습니다!

글도 두 편으로 나눠서 공개합니다. 본 게시물에서는

1. 페어워크를 통해 얻을 수 있는 장점

에 대한 내용을 소개합니다.


페어워크의 장점과 가치


서두에서도 언급했듯이, Tanzu Labs에서는 엔지니어, 디자이너, 제품 매니저의 모든 역할에서 페어워크를 하고 있습니다. 그렇다면, '짝을 지어 일한다'는 개념은 어디에서 비롯된 것일까요? 먼저 배경부터 살펴보겠습니다.


원래 페어워크는 테스트 주도형 개발이나 페어 프로그래밍으로 유명한 익스트림 프로그래밍(XP)이라는 개발 방식에서 파생된 개념인데, XP는 "프로그래밍을 할 때 '하면 좋은 것'을 극단적으로 하면 어떤 방식으로 일할 수 있을까?"라는 생각에서 탄생한 방식입니다. 그런 배경이 익스트림 프로그래밍이라는 이름의 유래가 되기도 하네요.


그렇다면 페어워크의 원조가 된 '하면 좋은 것'은 무엇일까, 바로 '코드 리뷰'입니다. 이것뿐이라고? 라고 생각하시는 분들도 계실 것 같은데요,


코드 리뷰는 하는 것이 좋다.
그렇다면 그것을 극단적으로(익스트림) 하면 어떻게 될까?
실시간 코드 리뷰가 된다!
코드를 작성하는 것부터 두 사람이 함께 작업하도록 하자!
이것이 '페어 프로그래밍'이다!


라는 발상의 전환이라고 합니다.


덧붙여, XP의 또 다른 대표적인 프랙티스인 테스트 주도형 개발은 '프로그램을 테스트하는 것은 좋은 일이다 → 그렇다면 코드를 작성하기 전에 테스트를 작성하면 된다!' 라는 개념이라고 합니다.

좀 더 자세항 사항은 아래 팟캐스트에서도 알아보실 수 있습니다�


https://on.soundcloud.com/ewN3F


서론이 길어졌는데요, 구체적인 페어워크의 장점은 아래와 같이 다섯 가지가 있다고 생각합니다.


누락이나 실수, 좋은 아이디어의 조기 발견

상시 피드백 받기

Context 공유

기술, 지식 공유

Sustainability(지속가능성) 향상


그럼 하나씩 살펴보도록 하겠습니다!


누락이나 실수, 좋은 아이디어의 조기 발견

이것은 코드 리뷰에서 파생되어 페어 프로그래밍이 탄생했다는 것을 알면 자연스럽게 얻을 수 있는 장점 중 하나죠. 프로그래밍뿐만 아니라 디자인이나 제품 관리를 할 때에도 항상 둘이서 작업하면 오타나 계산 실수 등을 조기에 발견할 수 있습니다. 또 둘이 모이면 생각나는 아이디어가 많아지기 때문에 좋은 아이디어를 만나는 타이밍도 빨라집니다. 페어워크를 하다 보면 '전혀 생각지도 못했는데, 그런 관점/아이디어도 있구나! 라는 타이밍이 정말 많아요☺️


상시로 피드백 받기

일을 진행하다 보면 반드시 막힐 때가 있는데, 혼자 작업하다가 막히면 누군가에게 검토를 요청하거나 상담을 하게 되는 것 같아요. 그러면 반드시 상대방의 반응이나 답변을 기다리는 시간이 발생하는데, 페어워크는 항상 피드백을 받으면서 앞으로 나아가기 때문에 혼자 작업할 때보다 멈춰있는 시간이 짧아집니다.


Context(문맥) 공유

항상 한 명과 함께 일을 진행하기 때문에 작업 내용이나 의사결정 과정 등의 맥락을 가지고 있는 사람도 팀 내에 한 명씩 존재하게 됩니다. 멤버 중 누군가가 갑자기 자리를 비워도 당사자가 돌아올 때까지 아무것도 모르는 상황을 피할 수 있습니다. 또한 시간이 지나면 지날수록 기억이 흐릿해지는데, 페어가 있으면 서로의 기억을 보완해줄 수 있습니다.


기술, 지식의 공유

페어워크는 기본적으로 생각하는 것을 말하면서 진행합니다. 이렇게 하면 특별히 '가르치겠다, 배우겠다'는 의식을 갖지 않아도 내가 몰랐던 관점을 얻거나 몰랐던 지식을 배울 수 있는 기회가 많이 생깁니다. 단축키나 설정 등 툴 사용법과 같은 구체적인 테크닉은 물론, '어떤 순서로 생각하고 어떤 근거를 가지고 판단하는가? '와 같은 추상적인 스킬도 페어 간에 공유되고 전파됩니다. 이렇게 기술과 지식이 공유되다 보니 멤버들의 성장 속도도 상대적으로 빨라지는 것 같아요.


Sustainability(지속 가능성) 향상

짝을 지어 작업하면 멤버 중 한 명에게만 부담이 집중되는 상황을 피할 수 있습니다. 또한, 페어끼리 서로 자극을 주고받으며 배우는 관계를 만들어 지속적인 성장을 할 수 있습니다. 또한, 제품의 컨텍스트가 개인에게 의존하지 않기 때문에 멤버의 휴가, 급작스러운 질병, 이직 등으로 인해 팀이 막힐 위험도 낮출 수 있다.


이렇게 페어워크를 잘 정착시키면 개인, 팀, 제품, 각 관점별로 무리 없이 지속적으로 발전할 수 있는 지속가능성이 높은 상태로 이어질 수 있습니다.


이상으로 페어워크의 장점에 대해 알아보았습니다!


주니어의 역량 강화 뿐만 아니라 '강한 팀 만들기'라는 관점에서도 페어워크를 검토하고 도입할 수 있으면 좋겠습니다☺️

keyword
작가의 이전글실리콘밸리의 비밀 조력자, 탄주 랩스