발표에서 확인된 핵심 사실

AI 코딩 도구로 간단한 함수 하나를 짜는 건 쉽지만, 수만 줄의 코드가 얽힌 프로젝트에 새로운 기능을 추가하려면 여전히 사람이 붙어야 한다. 이런 실무의 높은 벽을 측정하기 위해 시니어 엔지니어 수준의 코딩 에이전트 성능을 평가하는 오픈소스 벤치마크(성능 측정 표준)인 Senior SWE-Bench가 공개됐다.

이 벤치마크는 정답이 정해져 있고 깔끔하게 정리된 주니어용 연습 문제를 과감히 버렸다. 대신 실제 시니어 엔지니어가 현장에서 수행하는 기능 개발과 버그 수정, 성능 문제 해결 능력을 그대로 평가 항목에 넣었다. 인위적인 테스트 환경이 아니라 실제 업무와 유사한 난이도를 설정해, 평가 점수가 높게 나와도 실제 업무에서는 작동하지 않는 괴리를 줄이는 데 집중했다.

평가 도구는 총 100개의 과제로 구성되며, 외부로 공개된 50개와 검증을 위한 비공개 50개 과제로 나뉜다. posthog, electric, gitea 같은 실제 오픈소스 저장소의 PR(코드 변경 요청)을 활용해 실무 환경을 그대로 옮겨왔다. AI가 단순히 코드를 짜는 것을 넘어 실제 프로젝트의 복잡한 맥락을 얼마나 잘 이해하고 수정하는지 확인하려는 목적이다.

기술 스택 역시 매우 다양하게 구성했다. Py Svc(파이썬 서비스)와 Py Lib(파이썬 라이브러리) 같은 파이썬 생태계는 물론 Elixir, Go, SQL, TS Lib(타입스크립트 라이브러리), Rust, TS FE(타입스크립트 프론트엔드)까지 모두 포함한다. 특정 언어나 프레임워크에 치우치지 않고 다양한 개발 환경에서 시니어급 대응 능력을 갖췄는지 정밀하게 측정한다.

런타임 정합성과 코드베이스 관행 기반의 품질 지표를 결합해

단순한 함수 하나는 뚝딱 만들어내지만 정작 거대한 프로젝트에 기능을 추가하라고 하면 엉뚱한 곳을 건드려 전체를 망가뜨리는 AI의 모습은 익숙하다. 이런 한계를 측정하는 Senior SWE-Bench(시니어 소프트웨어 엔지니어 실무 과제 평가 도구)에서 최상위 모델의 성적은 생각보다 낮다. 리더보드 1위인 Claude Opus 4.8이 Mini-SWE-Agent(AI 코딩 에이전트)의 max 설정을 사용했음에도 pass@1(첫 시도 정답률)은 24.0%에 그쳤다. 최전선에 있는 모델조차 시니어 수준의 과제에서는 75% 이상 실패하는 결과다.

단순히 코드가 돌아가는지를 넘어 'tasteful solve'라는 기준을 적용했기 때문이다. 이는 런타임 정합성(프로그램이 오류 없이 실행되는 상태)과 코드베이스 관행(해당 프로젝트가 유지해온 고유의 코딩 스타일과 규칙)을 함께 평가하는 방식이다. 지시사항에 구체적으로 적혀 있지 않더라도 프로젝트 전반에 흐르는 중요한 관행을 지켰는지가 검증 대상이 된다. 정답만 맞히는 것이 아니라 팀의 약속을 지키며 코드를 짜는 능력을 함께 점수화한다.

이런 엄격한 잣대는 AI가 짠 코드가 실제 현업에서 얼마나 쓸모 있는지를 가늠하게 한다. 현재의 AI 에이전트를 복잡한 레거시 코드(오래되어 수정이 어려운 기존 코드) 수정이나 여러 서비스가 얽힌 다중 서비스 기능 개발에 투입했을 때 기대할 수 있는 실제 성공률은 4분의 1 수준에 머문다. 시니어 엔지니어가 요구하는 정교한 정합성과 코드의 결을 맞추는 감각까지 구현하기에는 여전히 한계가 뚜렷하다.

확인해야 할 핵심 지점

AI에게 복잡한 기능을 만들어달라고 했을 때, 왜 결과물이 매번 제각각일까? Senior SWE-Bench의 기능 과제는 이를 해결하기 위해 세분화된 요구사항 명세서 대신 실제 업무에서 주고받는 자연어 메시지 형태의 지시사항을 사용한다. 여기에 검증 에이전트(제출된 해법에 맞춰 실제로 어떻게 작동해야 하는지 행동 테스트를 만드는 AI)를 도입해 평가의 신뢰도를 높였다. 지시사항이 모호하더라도 AI가 스스로 해결책을 찾고, 그 결과가 정확한지 다시 AI가 검증하는 구조다.

버그 수정 과제는 한 단계 더 나아가 실제 개발 현장의 고충을 반영했다. 단순히 틀린 코드를 찾아 고치는 수준을 넘어, 사용자 리포트에서 출발해 원인을 파악하고 재현하는 과정을 요구한다. 서비스를 직접 실행해 보고 로그(시스템 작동 기록)를 확인하거나 프로파일링 데이터(프로그램 실행 중 자원 사용 현황)를 분석해 재현 절차를 추적해야 한다. 실제 개발자가 겪는 런타임 조사(프로그램이 실행되는 도중에 발생하는 상태를 분석하는 일)가 필수적이었던 PR(코드 변경 사항을 반영해달라고 요청하는 제안)을 기반으로 과제를 설계했다.

이런 정교한 평가 방식은 AI 에이전트를 복잡한 레거시 코드(오래되어 수정하기 어려운 기존 코드) 수정이나 여러 서비스가 얽힌 기능 개발에 투입했을 때의 실제 성공률을 가늠하는 기준이 된다. 단순한 코드 정합성을 넘어 실무 관행을 얼마나 잘 따르는지가 핵심이다. 이제 AI의 코딩 실력은 단순한 정답률이라는 숫자보다 실제 환경에서의 문제 해결 능력으로 평가받는 단계에 진입했다.

단순한 함수 구현을 넘어 수만 줄의 코드가 얽힌 프로젝트에 AI를 투입했을 때 기대할 수 있는 성공률은 생각보다 낮다. 시니어 엔지니어의 실무 능력을 측정하는 Senior SWE-Bench에서 최상위 모델의 정답률이 24%에 그친 점이 이를 증명한다. 단순히 답을 맞히는 게 아니라 기존 코드의 관행을 따르고 실제 실행 환경을 조사하는 능력이 부족하기 때문이다.

이제 AI 에이전트를 복잡한 레거시 코드 수정이나 다중 서비스 개발에 활용할 때는 이 24%라는 한계치를 냉정하게 고려해야 한다. 결국 AI의 코딩 실력은 정답률이라는 숫자보다 실제 환경에서의 문제 해결 능력으로 결정된다.