네이버 사내 AI 해커톤에서 1위를 차지한 팀이 투자 포트폴리오 관리 시스템(NStake)을 만들며 얻은 교훈을 다룬다. "AI가 무엇을 할 수 있나"보다 "어떤 일을 맡겨도 되는가"를 중심에 놓은 접근과, 재무 시스템에서 AI 역할의 경계를 어떻게 설계했는지가 핵심이다.
핵심 포인트- 현재 지분율을 직접 저장하는 대신 거래 이력을 시간순으로 기록해 현재 값을 계산으로 도출했다. 불일치가 생겨도 어느 거래에서 비롯됐는지 추적 가능하다.
- 검증을 Rule(규칙 위반), Statistical(이상치 신호), eXternal(외부 공시 차이) 세 층으로 나눠 시스템이 자동 결정할 수 있는 것과 사람이 판단해야 할 것을 구분했다.
- 월말 보고서를 LLM으로 생성하다가 결정론적 규칙 코드로 전환했다. 같은 입력에서 반드시 같은 숫자가 나와야 하는 공식 보고서는 생성형 AI로 대체할 수 없었다.
- AI 가드레일을 응답 사후 필터가 아닌 권한 경계로 설계했다. 인증된 사용자의 접근 범위만 AI에 제공하는 구조를 택했다.
- 해커톤 중 초기화 코드가 공용 DB에 실행되는 사고를 겪으며, AI 작업 도구의 최소 권한 원칙과 환경 분리의 중요성을 재확인했다.
상세 정리- 해커톤 구조: 사내 구성원이 실제 업무 문제를 출제하고, 개발·기획·디자인·재무·운영 여러 직군이 혼성 팀으로 6시간 동안 동작하는 프로토타입을 만드는 방식으로 진행됐다.
- 문제 선택: 17명의 담당자가 각자의 엑셀로 네이버·계열사 출자 현황을 관리하는 구조로, 취합·검증·공시 연계에서 사람 의존 병목이 심각했다.
- 문제 재정의: 처음엔 "엑셀을 웹 화면으로 대체"였으나, 숫자의 계산 근거를 설명할 수 없다는 본질 문제를 발견해 "거래 이력으로 현재 상태를 설명 가능하게"로 목표를 바꿨다.
- 거래 이력 모델: 신규 투자·유상증자·구주 양수도·감자 등 거래를 시간순으로 기록해 현재 보유 주식 수와 지분율을 계산으로 도출한다. 지분율이 30%인 이유를 거래 흐름으로 설명할 수 있고, 거래 단위로 불일치를 추적할 수 있다.
- 검증 3계층: Rule은 지분율 합계·누락 환율·청산 후 신규 거래처럼 규칙으로 확정 가능한 오류, Statistical은 평소보다 큰 금액 등 이상치 신호, eXternal은 내부 값과 외부 공시의 차이로 시스템이 자동 결정하지 않고 담당자 확인을 요구한다.
- AI 역할 분리: 설계 문서 작성→구현→테스트 증거 수집→문서·코드 일치 검증의 순환에서 AI를 평가자·검증자로 활용했다. "성공 기준을 먼저 정의하고, 그 기준으로 결과를 검증하는 데 AI를 사용"한 것이 핵심이었다.
- 보고서 전환 이유: LLM으로 보고서를 생성하면 같은 데이터에서도 표현이 달라지고, 모델 연결 장애 시 공식 보고서 생성이 영향받는다. 거래 분류·합계 계산을 결정론적 규칙 코드로 전환하고, AI는 자연어 질의·입력 초안 생성·불일치 설명에만 사용했다.
- 디자인 결정: AI가 빠르게 만든 캐릭터 중심 UI를 버리고 네이버 디자인 시스템 기반 ERP 스타일로 전환했다. 재무팀 담당자에게 필요한 것은 친근함이 아니라 신뢰감·전문성이었다.
- AI 가드레일 구조: 사내 SSO 후 AI·MCP 전용 짧은 수명 토큰 별도 발급, 매 요청마다 DB에서 역할·담당 법인 범위 재확인, 조회·LLM 질의·쓰기·관리자 기능 권한 분리, 상태 변경 전 사용자 명시적 확인, append-only 감사 로그 기록.
- DB 사고 사례: 로컬 전제로 만든 초기화 코드가 공용 개발 DB에 연결된 채 실행돼 데이터 손실이 발생했다. AI 도구에 관리자 권한 기본 부여, 로컬·공용 환경 미분리, 실행 전 대상 환경 미확인이 복합 원인이었다. 복구에 20분이 걸렸다.
- 원칙 정립: AI 작업 도구에 관리자 권한을 기본으로 주지 않는다, 로컬·개발·운영 환경을 명확히 분리한다, 삭제나 대규모 변경 전 대상 환경을 다시 확인한다.
왜 읽나AI를 업무 시스템에 통합할 때 무엇을 AI에 맡기고 무엇을 결정론적 코드로 남겨야 하는지, 그리고 권한 경계·환경 분리 등 엔지니어링 원칙을 어떻게 설계해야 하는지를 실전 사례로 배울 수 있다.