본문 바로가기
📝 회고/✅ 22년 회고

[일일 회고] 22.02.09 - 커뮤니케이션과 짝 프로그래밍

by kukim 2022. 2. 9.

📚TIL

오늘은 JK의 소개로 pair programming(짝 프로그래밍)을 했다.

짝 프로그래밍을 한다는 이야기를 듣고  커뮤니케이션을 잘해야겠구나란 생각에 스치듯 봤던 “커뮤니케이션이란 무엇인가? 어떻게 해야 효과적으로 협업을 할 수 있는가? (한빛 미디어 의장 박태웅)” 영상을 봤다.

영상 내용 중 두 가지가 기억에 남았다.

원활한 커뮤니케이션을 위해서는 1. 상대방을 짐작하지 말고 2. 텍스트가 아니라 컨텍스트(문맥)을 주고받아야 한다는 것이다.

  1. 상대방을 짐작하지 않기 : 예를 들어 A란 사람이 내 어깨를 치고 뛰어갔다. 저 사람은 왜 내 어깨를 치고 가지? 안 좋은 인상이 남을 수 있다. 하지만 A란 사람은 화장실이 너무 급해 어깨를 친 상황조차 인식하지 못할 수 있다.
  2. 텍스트가 아닌 컨텍스트를 주고받기 : 예를 들어 상대방에게 “이걸 해주세요" 보다 “이걸 왜 해야 하는지 설명하기"가 효율적인 커뮤니케이션이라는 것이다.

앞서서 JK의 짝 프로그래밍 소개가 있었다. 짝 프로그래밍의 참여하는 사람들은 모두 적극적으로 참여하고 역할에 충실해야 한다. 무엇보다 함께하는 것이기에 소통하고, 소통하고, 또 소통하는 것이 중요하다. 내비게이터드라이버로 역할을 나눈다. 내비게이터는 드라이버가 코드를 작성할 수 있도록 하나하나 설명한다. 드라이버가 코드를 구현하는 동안 잠시 기다리고, 작은 구현이 끝난다면 코드 리뷰, 재설계, 리팩터링을 함께한다. 내비게이터는 절대 컴퓨터를 만지지 않는다. 드라이버는 내비게이터 요구 명세에 따라 코드를 작성한다. 내비게이터의 요구사항이 명확하지 않으면 언제든지 질문을 통해 의견을 조정한다. 합의가 되지 않을 때는 내비게이터의 의견을 존중하고 양보해야 한다. 는 것이다.

 

내비게이터와 드라이버 역할을 15분마다 번갈아가며 코드를 구현해갔다. 되돌아보니 첫 시작부터 문제가 있었다. 드라이버에 자율성이 없었다. 마치 내비게이터의 아바타처럼 코드 치는 것이나 구글 검색도 내비게이터의 조종(?)대로 했다. 이 과정이 썩 좋진 못했던 거 같다. 다음에는 내비게이터가 드라이버에게 설명한 후 드라이버가 자유롭게 구현하도록 한다. 구현이 끝난 뒤 코드 리뷰와 개선하는 것이 좋아 보인다.

 

우당탕 정말 짧게 느껴진 75분의 짝 프로그래밍이 끝났다. 완벽한 결과를 원한 것도 아니었다. 맛을 보았다. 서로의 코딩 스타일을 확인할 수 있었고 무엇보다 함께 작성한 코드에 대한 이해가 높았다. 짧은 시간 값진 경험이었다. 앞으로 모든 개발 시간을 짝 프로그래밍을 할 순 없겠지만 적절히 활용하면 좋은 과정이 될 수 있겠구나 란 생각이 든다. 다음에 또 같이해요 Minzino😄

 

원활한 커뮤니케이션을 위해 상대방을 짐작하지 말고, 컨텍스트를 주고받자.

 


👍 Keep

- 의식적인 회고 시간

- 동료들과 수다 떨기(짝 프로그래밍이 끝나고 동료들과 모여 후기와, 잡담을..  잡담이 경쟁력이다)

🔥Problem

- 상대방의 행동이나 감정을 짐작하지 않기

🚒 Try

- 나도 단순히 당이 떨어지면 쉽게 화가 난다. 상대방도 어떠한 맥락으로 컨디션이 안 좋을 수 있다. 함께하기 전에 서로의 상태를 확인하는 과정을 넣자! (오늘 하루 어떠신가요? 식사는 하셨나요? 기분은 어떠세요?) 동료가 컨디션이 안 좋아 보인다면 지레짐작하지 말고 주위를 환기시키거나 사탕을 먹이자! (그만한 이유가 있겠지)

댓글