
코드 검토(Code reviews)는 개발자의 코드 품질 향상에 도움이 되는 동료 검토 과정이지만 시간이 많이 소요되는 작업입니다.
한 조사에 따르면, 기업의 50%가 코드 검토에 주당 2~5시간을 할애하고 있습니다. 인력 확보가 충분하지 않을 경우 코드 검토가 부담이 되어 개발자들이 다른 중요한 업무에 집중하지 못하게 만드는 요인이 될 수 있습니다.
하르조트 길(Harjot Gill)은 이러한 코드 검토 과정을 인공지능(AI)을 활용하여 상당 부분 자동화할 수 있다고 주장합니다. 그는 AI 모델을 사용하여 코드를 분석하고 피드백을 제공하는 CodeRabbit의 공동 설립자이자 CEO입니다.
길은 CodeRabbit을 시작하기 전, 데이터센터 소프트웨어 회사인 Nutanix의 선임 기술 디렉터였습니다. 그는 Nutanix가 자신의 스타트업인 Netsil을 2018년 3월에 인수하면서 회사에 합류했습니다. CodeRabbit의 다른 공동 설립자인 구르 싱(Gur Singh)은 이전에 화이트 라벨 헬스케어 결제 플랫폼인 Alegeus에서 개발팀을 이끌었던 경력이 있습니다.
길에 따르면, CodeRabbit 플랫폼은 "고급 AI 추론(advanced AI reasoning)"을 활용하여 코드에 담긴 "의도(intent)"를 이해하고, 개발자들에게 "실행 가능한(actionable)" "인간적인(human-like)" 피드백을 제공함으로써 코드 검토를 자동화합니다.
길은 TechCrunch과의 인터뷰에서 "전통적인 정적 분석 도구와 린터는 규칙 기반(rule-based)이어서 높은 오탐률(false-positive rates)을 흔히 발생시키고, 동료 검토는 시간이 많이 걸리고 주관적입니다. 반면 CodeRabbit은 AI 중심 플랫폼입니다"라고 말했습니다.
이러한 발언들은 많은 전문 용어(buzzwords)를 동반한 과감한 주장들입니다. 하지만 안타깝게도 CodeRabbit의 사례와 달리, 일화적 증거(anecdotal evidence)들은 AI 기반 코드 검토가 사람이 개입하는 방식(human-in-the-loop)보다 열등한 경향이 있음을 시사합니다.
Graphite의 Greg Foster는 블로그 게시물에서 OpenAI의 GPT-4를 코드 검토에 적용한 내부 실험 사례를 언급합니다. 이 모델이 사소한 논리적 오류나 오탈자 같은 유용한 부분을 찾아내긴 했으나, 방대한 양의 오탐을 생성했습니다. Foster에 따르면, 모델을 미세 조정(fine-tuning)하는 시도조차 이러한 오탐 문제를 크게 줄이지는 못했습니다.
이는 새로운 발견이 아닙니다. 최근 스탠퍼드(Stanford)의 연구에 따르면, 코드 생성 시스템을 사용하는 엔지니어가 개발한 애플리케이션에 보안 취약점을 포함할 가능성이 더 높다는 사실이 밝혀졌습니다. 저작권(Copyright) 역시 지속적인 우려 사항으로 남아있습니다.
또한 코드 검토에 AI를 사용하는 것에는 물류적인 단점도 존재합니다. Foster가 지적했듯이, 전통적인 코드 검토는 엔지니어들이 개발 동료들과의 세션과 대화를 통해 지식을 습득하도록 강제하는 측면이 있습니다. 이러한 검토 과정을 AI에 의존하여 외부화(offloading)하는 것은 이러한 필수적인 지식 공유를 위협할 수 있습니다.
길은 이에 대해 다른 견해를 보입니다. 그는 "CodeRabbit의 AI 중심 접근 방식은 코드 품질을 높이고 코드 검토 과정에서 필요한 수동 노력을 크게 줄여줍니다"라고 강조합니다.
현재 일부 기업들은 이러한 주장에 설득되고 있습니다. 길에 따르면, 현재 약 600개 조직이 CodeRabbit 서비스에 비용을 지불하고 있으며, CodeRabbit은 여러 포춘 500대 기업들과 파일럿 프로젝트를 진행 중이라고 주장합니다.
또한 회사는 투자를 유치했습니다. CodeRabbit은 오늘 CRV가 주도하고 Flex Capital 및 Engineering Capital이 참여한 1,600만 달러 규모의 시리즈 A 펀딩 라운드를 발표했습니다. 이를 통해 회사의 누적 유치 자금은 2,000만 달러에 육박하게 되었으며, 새로운 자금은 CodeRabbit의 10명 규모 영업 및 마케팅 기능과 제품 제공 범위를 확장하는 데 사용될 예정입니다. 특히 보안 취약점 분석 역량 강화에 중점을 둘 계획입니다.
길은 "Jira나 Slack 같은 플랫폼과의 더 깊은 통합, 그리고 AI 기반 분석 및 보고 도구에 투자할 것입니다"라고 밝히면서, 베이 에어 지역에 본사를 둔 CodeRabbit이 팀 규모를 약 두 배로 늘리면서 방갈로르에 새 사무실을 마련하는 과정에 있다고 덧붙였습니다. 그는 "플랫폼을 통해 의존성 관리(dependency management), 코드 리팩터링(code refactoring), 단위 테스트 생성(unit test generation), 문서화 생성(documentation generation)에 대한 고급 AI 자동화를 도입할 것입니다"라고 설명했습니다.
[출처:] https://techcrunch.com/2024/08/15/coderabbit-raises-16m-to-bring-ai-to-code-reviews