Development··5 min read

AI 코드 리뷰어를 2개월 써본 결과

PR마다 AI가 코드 리뷰를 달아주는 도구를 팀에 도입한 2개월간의 기록

금요일 PR의 저주

우리 팀은 6명이다. PR이 하루에 평균 8개쯤 올라오는데, 리뷰어 지정부터 실제 리뷰 완료까지 하루 반이 걸렸다. 금요일에 올린 PR은 월요일이나 돼야 리뷰가 달렸다. 금요일 오후에 올린 건 화요일에 달리기도 했다. (금요일 오후에 PR 올리지 말라는 암묵적 규칙이 생길 뻔했다.)

그래서 작년 11월에 AI 코드 리뷰 도구를 도입했다. PR 올라오면 5분 안에 자동으로 리뷰 코멘트가 달리는 방식이다.

첫 주에는 다들 신기해했다

"오 이게 돼?" 팀원들 반응이 그랬다. AI가 잡아낸 것 중 인상적이었던 건 null 체크 누락, 불필요한 리렌더링 유발하는 의존성 배열 실수, SQL 인젝션 가능성 있는 동적 쿼리. 주니어 개발자 PR에서 N+1 쿼리 패턴을 정확히 짚어낸 건 솔직히 놀라웠다. 사람 리뷰어도 종종 놓치는 부분이니까.

한 달 뒤에 짜증이 시작됐다

문제는 노이즈였다. AI가 모든 PR에 최소 대여섯 개의 코멘트를 남겼다. 그중 실제로 유의미한 건 하나 아니면 둘. 나머지는 "이 변수명을 좀 더 명확하게 해보세요" 같은 스타일 가이드 수준이었다.

한 달 지나니까 팀원들이 AI 코멘트를 스크롤로 넘기기 시작했다. "또 AI가 쓸데없는 소리 하네" 분위기가 되면 도구의 가치가 급격히 떨어진다. 이 시점에서 "도입 실패인가" 싶었다.

이틀 걸려서 세팅을 뜯어고쳤다

스타일 관련 코멘트를 다 끄고, 보안, 성능, 버그 가능성에만 집중하도록 설정을 바꿨다. 심각도를 3단계로 나눠서 Critical만 강조 표시되게 했다. 이 튜닝 작업에 이틀을 쓴 게 좀 아깝다 싶었는데, 효과는 확실했다. 코멘트 수가 PR당 두세 개로 줄었고, 유의미한 비율이 체감상 절반 이상으로 올라갔다.

사람 리뷰가 줄어든 건 아니다

중요한 건, AI가 사람 리뷰를 대체한 게 아니라 보완했다는 거다. AI가 기계적인 검토를 먼저 해주니까, 사람 리뷰어가 아키텍처나 비즈니스 로직에 집중할 수 있게 됐다.

리뷰 완료 시간이 하루 반에서 한 하루 정도로 줄었다. 근데 이건 AI 때문이라기보다, AI가 먼저 빠르게 리뷰를 달아주니까 사람 리뷰어도 "나도 빨리 봐야겠다"는 심리가 작용한 것 같다. (피어 프레셔의 의외의 효과?)

2개월 지난 시점 숫자

PR 머지까지 평균 소요 시간이 36시간에서 19시간으로 줄었다. 프로덕션 버그 중 코드 리뷰에서 잡았어야 할 건 월 3건에서 1건으로 감소. 월 비용은 팀 기준 148,000원 정도라, 이걸 비싸다고 볼지 싸다고 볼지는 관점 차이다.

솔직히 추천은 하는데 조건이 있다

3명 이상이면 한번 시도해볼 만하다. 근데 반드시 초기 튜닝에 시간을 써야 한다. 기본 설정 그대로 쓰면 노이즈에 팀이 질려서 한 달 안에 끄게 된다. 우리도 그럴 뻔했다. AI 코드 리뷰는 틀린 코드를 잡는 도구이지, 좋은 코드를 만드는 도구는 아니다. 좋은 코드에 대한 토론은 여전히 사람 몫이다. 그건 변하지 않는다.

관련 글