Site icon 지락문화예술공작단

카카오스토리 팀의 코드 리뷰 도입 사례 – 코드 리뷰, 어디까지 해봤니?

카카오스토리 팀의 코드 리뷰 도입 사례 – 코드 리뷰, 어디까지 해봤니?

얼마 전, 렘(Realm)의 기술 블로그에 올라온 코드리뷰, Github로 바로 적용하기 – Realm에서의 코드리뷰 소개라는 글이 많이 회자되었죠.

카카오는 어떻게 하고 있을까~ 궁금해서 수소문을 했더니, 사내에서도 깃헙 잘 쓰기로 소문 난 카카오스토리 웹 클라이언트팀은 코드 리뷰도 잘하더군요 @..@

그들의 코드 리뷰 경험을 “날 것” 그대로 공유합니다. 우리끼리 보려고 쓴 글이라, 표현은 조금 거칠지만 더 쉽게 와 닿네요.

웹 클라이언트 개발팀 내에선 코드 리뷰가 굉장히 활성화되어 있는데요, 얼마 전에 문득, 코드 리뷰를 도입하면서 경험했던 내용을 공유해보면 좋을 것 같단 생각이 들어서, 짬짬이 예전 기억을 되살리면서 노트에 정리했습니다.

지금은 리뷰 문화가 정착돼서 그저 당연한 거라고 생각하고 있었는데, 돌이켜보면 도입 과정에서 탈도 많았고 여러 이슈를 극복하려고 멤버들 모두 고생했던 게 떠오르더군요. 다른 팀이 어떻게 일하고 있는 지 모르고, 작은 조직 내에서의 얕은 경험일 수도 있겠지만, 개인적으론 코드 리뷰를 도입하고 유지하고 있는 게 굉장히 값진 경험이라고 생각하고 있습니다.

처음엔 그냥 웹 클라이언트 멤버들끼리만 돌려보려고 했는데, 아직 코드 리뷰를 도입하지 않은 팀들도 있는 것 같고, 정리하다 보니 다른 분들이 보셔도 좋은 내용일 것 같아 조심스레 공유해봅니다.

거창하게 “이렇게 저렇게 했다”라고 공유하는 것보단, 쓱~ 부담없는 메모 형식으로 공유합니다. 좀 러프해도 이해해주세요^^;

처음엔 셋이서 시작

리뷰 방법

리뷰 없이는 머지되지 않도록 제한

가장 많이 발견되는 리뷰

컨벤션 리뷰로부터 벗어나는 법을 고민하기 시작

commit 깃훅에 린트 검사 적용하기

유익하다고 느꼈던 리뷰들

조금은 불필요한 논쟁이라고 생각했던 리뷰들

리뷰이는 리뷰에 어떻게 반응하면 좋을까?

프로젝트 초기, 기초 구조에 대한 리뷰

리뷰가 병목이 되었다

바쁘면 바쁠수록, 리뷰 시간도 길어졌다

병목이 새로운 병목을 만들었다

개발을 완료했다고 했는데, 확인할 수 없음

브랜치 미리보기 서버

미리보기 서버를 도입한 후

새 멤버가 들어오면 잘 적응할 수 있을까?

프로젝트 멤버가 늘어남

새 조직에서 리뷰 문화를 만들어야 한다면…?

멤버가 늘어나니 생산되는 코드도 늘어나고, 해야하는 리뷰도 늘어남

리뷰 마스터

스펙이 큰 피처인 경우엔,

적극적인, 잦은 배포

유연해진 리뷰

한정적인 리뷰 시간, 각자의 리뷰 포인트가 있음

리뷰가 늦어지는 PR들은?

우리 팀의 코드 리뷰가 여전히 잘 워킹하고 있는 이유…

반면, 예전에 경험했던 좋지 않았던 리뷰 경험

내가 생각하는 코드 리뷰의 장점

내가 생각하는 코드 리뷰의 단점

팀에 리뷰를 도입할 때 꼭 챙길 것

에피소드

어떠신가요? 두서없이 나열했지만 입에 착착감기고 눈에 속속 들어오지 않나요?

카카오에서는 개발 문화의 일부로 코드 리뷰를 정착시키기 위해 Crucible 같은 전용 소프트웨어도 도입하고, 의무화하는 등 여러가지 방법을 동원했지만 아직도 온전히 자리잡지 못했습니다.

여기에서 공유한 경험이 모든 회사나 조직에 그대로 적용되지는 않겠지만, 시행착오를 줄이고 더 좋은 개발 문화를 만들어가는데 보탬이 되길바랍니다. 앞으로도 완벽하지는 않지만, 실제로 돌아가는 카카오의 개발 문화를 지속적으로 소개하겠습니다.

Source: 카카오스토리 팀의 코드 리뷰 도입 사례 – 코드 리뷰, 어디까지 해봤니?

Exit mobile version