National Australia Bank, Cursor로 레거시 마이그레이션 가속
NAB는 Amazon Q와 GitHub Copilot을 검토한 끝에 6,000명의 개발자를 Cursor로 표준화했습니다. 이제 레거시 현대화 작업이 3배 빠르게, 더 높은 품질로 진행되고 있습니다.
National Australia Bank(NAB)는 Amazon Q와 GitHub Copilot을 검토한 끝에 6,000명의 개발자를 Cursor로 표준화했습니다. 이제 엔지니어링 팀은 이전에는 엄두 내기 어려웠던 프로젝트도 더 빠르게, 더 높은 품질로 배포하고 있습니다.
모놀리스 애플리케이션을 마이크로서비스로 리팩터링하거나 Assembly에서 벗어나는 메인프레임 마이그레이션 같은 레거시 코드베이스 현대화 작업은 예상보다 3배 빠르게 진행되고 있습니다. 팀들은 또한 Cursor로 그린필드 프로젝트를 만들고 있으며, 그중 한 가맹점 서비스 팀은 당초 4개월로 예정됐던 하드웨어에 구애받지 않는 결제 앱을 3주 만에 배포했습니다."
전사 도입을 위한 Cursor 평가
NAB는 처음에 Amazon Q와 GitHub Copilot을 핵심 AI 코딩 어시스턴트로 사용하고 있었습니다. 이후 더 폭넓은 평가를 진행한 뒤, 몇 가지 이유로 초기 6,000명의 개발자에게 Cursor를 표준 도구로 도입하기로 결정했습니다:
- 모델 유연성: NAB의 엔지니어들은 비용, 지연 시간, 필요한 지능 수준에 따라 작업별로 서로 다른 모델을 선호합니다. 더 저렴한 모델은 프런트엔드 UI 변경처럼 일상적이고 단순한 구현에 사용되고, 더 비싼 추론 모델은 아키텍처 설계처럼 복잡하고 장시간 실행되는 작업에 사용됩니다.
- 코드베이스 이해: NAB는 여러 GitHub 계정에 걸쳐 수천 개의 리포지토리를 보유하고 있으며, 다양한 기술 스택(예: Java, React, COBOL, Assembly)을 사용합니다. Cursor는 이처럼 복잡한 환경에서 가장 빠르고 정확한 에이전트 동작을 제공했습니다.
- 확장성과 제어: NAB는 규칙, 스킬, 훅 같은 Cursor 프리미티브를 사용해 NAB CEL이라는 내부 컨텍스트 엔지니어링 라이브러리를 구축했습니다. 공유 지식을 Cursor에 중앙화함으로써 NAB는 개발 기준을 적용하고 에이전트 동작에 가드레일을 설정할 수 있었습니다.
플러그인 기반 코딩 어시스턴트는 워크플로우 바깥에서 AI를 억지로 덧붙이는 것과 같습니다. Cursor에서는 에이전트가 우리의 코드베이스를 이해하고, NAB의 업무 방식에 맞게 동작합니다.
NAB는 이제 엔지니어, 제품 관리자, 디자이너, 리더십을 포함해 기술 조직 전반의 10,000명이 넘는 직원에게 Cursor를 도입하고 있습니다. 각 직무에는 전용 교육 경로가 마련되어 있어, NAB는 조직 전체의 생산성을 높일 수 있습니다.
우리는 처음부터 도입 활성화를 중요하게 보고, 개발자들이 실제 프로덕션 프로젝트에서 Cursor를 사용해 볼 수 있도록 맞춤형 교육 세션과 스프린트 데이를 운영했습니다. 이제 이 투자는 팀들이 고객에게 유용한 기능을 더 빠르게, 더 높은 품질로 배포하는 성과로 이어지고 있습니다.
레거시 모놀리스를 마이크로서비스로 리팩터링하기
NAB의 비즈니스 대출 부문은 대출 가격을 산정하기 위해 BizCalc라는 수수료 계산 애플리케이션을 사용합니다. 이 애플리케이션은 원래 Silverlight/.NET 프레임워크 기반의 온프레미스 모놀리스로 만들어졌습니다. Silverlight의 연장 지원이 2026년에 종료됨에 따라, NAB는 BizCalc를 백엔드는 Java 마이크로서비스로, 프런트엔드는 React로 리팩터링하기 위한 명확한 마감 시한을 설정했습니다.
NAB는 원래 전체 마이그레이션 기간을 6개월로 잡았습니다. 처음 2개월은 전적으로 사전 개발 작업에 투입될 예정이었습니다. 여기에는 레거시 코드의 동작 방식 문서화, 제품 요구사항 정의, 사용자 스토리 작성, 그리고 프런트엔드와 백엔드 서비스 간 통신을 위한 API 명세 작성이 포함되었습니다.
NAB의 수석 엔지니어인 Coby Paterson은 Cursor를 사용해 이 모든 사전 개발 작업을 단 1주일 만에 완료했습니다. 그는 Ask Mode를 사용해 비즈니스 로직을 시각화하고 문서화했으며, 맞춤형 NAB-CEL 스킬과 함께 플랜 모드를 사용해 사용자 스토리와 이에 대응하는 API 명세를 만들었습니다. 이후 NAB는 이러한 산출물을 Cursor에 활용해 마이그레이션 개발과 Testing을 진행했습니다.
단 1주일 만에 Cursor는 우리가 수개월 동안 시스템을 역공학해 수작업으로 만들 수 있었을 것보다 더 나은 사용자 스토리와 더 상세한 API 명세를 만들어냈습니다.
Paterson은 전체 마이그레이션이 2개월 안에 완료될 것으로 예상하며, 이는 원래 추정치 대비 3배의 개선입니다.
Assembly 메인프레임에서 코어 뱅킹 앱 마이그레이션하기
고객 잔액, 이자 발생, 수수료를 관리하는 NAB의 코어 뱅킹 시스템은 Assembly 기반 메인프레임 인프라에서 실행됩니다. NAB는 지원과 유지보수는 물론 다른 시스템과의 통합도 더 쉽게 하기 위해 핵심 프로그램을 Assembly에서 이전하려 했지만, 리소스 제약으로 마이그레이션 프로젝트가 중단된 상태였습니다.
Cursor가 나오기 전에는 Assembly에서 벗어나는 건 생각조차 할 수 없었습니다. 이렇게 큰 프로젝트를 수작업으로 해낼 전문성도 시간도 없었죠.
가장 큰 제약은 재작성을 시도하기 전에 저수준 머신 명령어를 비즈니스 로직에서 분리할 수 있는 Assembly 전문성이 필요하다는 점이었습니다. 이 작업은 수작업으로 세심하게 진행해야 하는 고된 과정으로, Assembly 메인프레임에서 사용하는 3270 터미널 에뮬레이터 GUI의 그린 스크린 환경에 매달려야 합니다.
Cursor를 통해 Harjot의 팀은 Assembly 코드에서 직접 플로차트와 비즈니스 요약을 생성했습니다. 에이전트는 프로그램 단위로 수정 작업을 진행하고 있습니다. 이제 Assembly 마이그레이션 프로젝트는 예상보다 3배 빠르게 진행되고 있습니다.
Cursor가 없었다면 이 마이그레이션에 드는 시간과 비용은 우리가 거기서 얻을 가치보다 더 컸을 겁니다.
3주 만에 하드웨어에 구애받지 않는 결제 앱 만들기
NAB의 가맹점 서비스 팀은 벤더 Lock-in을 피하기 위해 하드웨어에 구애받지 않는 결제 애플리케이션을 구축하고자 했습니다. 이 그린필드 프로젝트는 원래 엔지니어링 작업만 4개월이 걸릴 것으로 잡혀 있었는데, 주된 이유는 팀에 Kotlin 같은 Android 프레임워크 개발 경험이 없었기 때문입니다.
수석 엔지니어 Chris De Lorenzo는 Cursor를 사용해 이 프로젝트를 3주도 채 되지 않아 완성했습니다. 먼저 Cursor와 함께 반복적으로 다듬어 가며 상세한 제품 요구사항과 하위 에이전트들이 병렬로 진행할 수 있는 다단계 구현 플랜을 만들었습니다. 그런 다음 Composer와 Opus 코딩 모델을 사용해 그 플랜을 실행에 옮겼습니다.
개발 속도가 5~8배 향상됐습니다. 하지만 가장 중요한 건, Cursor가 없었다면 이 앱을 만들어볼 생각조차 하지 않았을 거라는 점입니다.
De Lorenzo는 또한 Cursor가 엔지니어를 넘어 더 폭넓은 사람들이 소프트웨어 개발에 참여할 수 있게 했다고 평가합니다. "Cursor는 엔지니어, 아키텍트, 프로덕트, 보안을 하나의 워크플로우로 연결하는, 제가 본 첫 번째 에이전트 플랫폼입니다. Cursor는 조직 차원에서 우리가 소프트웨어를 만드는 방식을 바꾸고 있습니다."
이제 NAB는 코드 생성을 넘어 소프트웨어 라이프사이클 전반에 Cursor를 적용하는 데 집중하고 있습니다. "우리는 Cursor를 코드 리뷰, 품질 보증 테스트, 배포까지 확장하고 싶습니다. 에이전트를 중심으로 엔지니어링 프로세스를 재구성하는 것은 NAB의 핵심 투자 분야입니다."라고 NAB의 Head of AI Tooling & Delivery인 Caroline Trang은 말했습니다.
레거시 현대화 작업을 자동화하고 있거나 그린필드 프로젝트를 더 빠르게 추진하고 싶다면, Cursor 평가판을 시작하려면 문의하세요.