보안을 유지하면서 혁신 가속화: Keelvar가 HeroDevs로 마이그레이션 병목 현상을 피한 방법

Keelvar가 ‘마이그레이션 지옥’에 빠지지 않고 어떻게 지속적인 혁신을 이어갔는가

고객 프로필

Keelvar는 평범한 조달 소프트웨어 회사가 아닙니다. 유럽 최대 규모의 AI 연구소에서 탄생한 이 코크(Cork) 소재의 120명 규모 팀은 컴퓨터 과학, AI, 게임 이론을 융합하여 조달 분야에서 가장 까다로운 과제들을 해결하고 있습니다. 4,200만 달러의 자금을 확보하고 정교한 소싱 알고리즘에 의존하는 고객사를 보유한 이 회사로서는 기술적 부채로 인해 발전 속도가 늦춰지는 것을 감당할 수 없습니다.

Keelvar의 CTO인 발렌티나 로케스는 “우리가 내리는 모든 기술적 결정은 탁월한 신뢰성과 속도, 그리고 원활한 고객 경험을 보장하는 동시에 혁신을 주도해야 합니다”라고 설명합니다. “고객들은 복잡한 조달 업무를 수행하는 데 있어 우리를 의지하고 있습니다. 따라서 우리 도구는 구식 프레임워크나 보안 취약점으로 인해 제약을 받지 않고, 흠잡을 데 없이 작동해야 합니다.”

문제: 진퇴양난에 빠지다

2010년대 초반 본격적인 웹 애플리케이션 개발을 시작한 많은 기업들과 마찬가지로, Keelvar도 AngularJS 버전 1에 막대한 투자를 했습니다. 수년간의 개발 끝에, 이 회사는 고객들이 애용하는 다양한 기능을 갖춘 애플리케이션을 구동하는 수천 개의 컴포넌트를 확보하게 되었습니다.

그러자 피할 수 없는 질문이 제기되었다. ‘ AngularJS ’의 지원 종료 시점이 되면 어떻게 될까?

그 수치는 냉정한 현실을 여실히 보여주었다. Keelvar의 선임 프론트엔드 엔지니어인 케빈 던리비(Kevin Dunleavy)는 다음과 같이 설명했다. “주요 애플리케이션 페이지가 20~30개 정도 되는데, 각 페이지를 제대로 마이그레이션하려면 개발자가 1~2주씩 전념해야 합니다. 게다가 시스템에 문제가 생기지 않도록 확인하기 위한 모든 테스트 시간은 이 계산에 포함되지도 않았습니다.”

팀은 선택의 기로에 서게 되었습니다:

  • 선택지 A: 핵심 제품의 신규 기능 개발을 중단하고, 6~12개월 동안 프론트엔드 전체를 재구현한다.
  • 선택지 B: 조만간 보안 지원이 중단될 프레임워크를 계속 기반으로 삼는다.

두 가지 선택지 모두 용납될 수 없었다. 마이그레이션 중단은 고객에게 새로운 기능을 제공하지 못하고, 경쟁력을 높일 수 없으며, 개발 팀이 혁신 대신 기술적 부채 해결에만 전적으로 매달리게 되는 것을 의미했기 때문이다.

“고객들이 요청해 온 기능을 하나도 제공할 수 없다고 말해야 한다고 상상해 보세요. 이미 제대로 작동하는 코드를 다시 작성하는 데 앞으로 1년을 써야 하기 때문이라고요,”라고 발렌티나가 말합니다. “그건 어떤 CTO도 하고 싶지 않은 대화죠.”

획기적인 돌파구: 둘 다 하면 안 될 이유가 있을까?

키엘바르의 팀은 이러한 허위 딜레마를 받아들이기보다는 다른 질문을 던졌습니다. 바로 ‘ AngularJS 애플리케이션을 유지하면서 Vue 3로 점진적으로 마이그레이션할 수 있다면 어떨까?’라는 것이었습니다.

그 아이디어는 매력적이었지만, 보안 문제를 해결해야만 했습니다. 지원이 중단된 프레임워크를 운영 환경에 적용하는 것은 단순히 위험할 뿐만 아니라, 기업 고객을 대상으로 하는 SaaS 회사에게는 사업 자체를 끝장낼 수도 있는 문제입니다.

바로 그때 HeroDevs가 등장했습니다.

끊임없는 지원: 브릿지 솔루션

HeroDevs가 AngularJS 에 제공한 끊임없는 지원 덕분에 Keelvar는 전략적 마이그레이션 계획을 실행하는 동안 기존 애플리케이션의 보안을 유지할 수 있는, 바로 그들이 필요로 하던 해결책을 얻게 되었습니다.

다음은 즉시 변경된 사항입니다:

보안은 더 이상 문제가 되지 않게 되었다

AngularJS 의 지원이 종료되기 전에 서둘러 마이그레이션할 필요 없이, Keelvar는 HeroDevs의 지속적인 유지보수를 통해 보안 패치를 최신 상태로 유지할 수 있었습니다.

개발 속도는 여전히 높은 수준을 유지했다

팀은 이미 정상적으로 작동하는 코드를 다시 작성하는 데 몇 달을 쏟는 대신, 고객이 원하는 기능을 꾸준히 출시해 나갔습니다.

이주는 시급한 문제가 아니라 전략적 과제가 되었다

보안 문제가 해결됨에 따라, 그들은 보안 마감 기한이 아닌 비즈니스 우선순위에 따라 페이지별로 신중하게 Vue 3로의 마이그레이션을 계획할 수 있게 되었습니다.

구현 과정은 놀라울 정도로 간단했습니다. 기존 CI/CD 파이프라인 및 로컬 개발 환경과 완벽하게 연동되는, 바로 적용 가능한 대체 솔루션이었습니다.

결과: 중요한 수치들

2023년 HeroDevs와 파트너십을 맺은 이후, Keelvar는 다음과 같은 성과를 거두었습니다:

  • ‘Never-Ending Support’ 프로그램을 통해 4건의 CVE를 즉시 해결했습니다.
  • 30~50주 분량의 전담 마이그레이션 작업을 피할 수 있었다
  • 고객 대상 기능에 대해 100% 개발 속도를 유지했습니다.
  • 개발이 중단된 이유를 설명하는 대신, 지속적인 기능 개발을 통해 신규 고객을 유치했다
“그 영향은 단순히 회사를 유지하는 데 그치지 않습니다,”라고 발렌티나는 회상합니다. “우리는 완전히 새로운 컴포넌트 라이브러리에 투자하고, 사용자 경험을 개선하며, 신규 고객 유치에 직접적으로 기여하는 기능을 제공할 수 있게 되었습니다. 만약 우리가 여전히 마이그레이션 단계에 머물러 있었다면 이런 일은 불가능했을 것입니다.”

이것이 실제로 의미하는 바: 기술 부채에 대한 우리의 사고방식 재정의

킬바르의 경험은 프레임워크 수명주기 관리에 관한 몇 가지 일반적인 가정들에 의문을 제기한다.

‘가짜 긴급성’의 함정

프레임워크의 지원 종료 시기가 도래했다고 해서 무조건 모든 작업을 중단하고 마이그레이션을 진행해야 하는 것은 아닙니다. 때로는 전략적으로 마이그레이션을 진행할 시간을 벌어줄 수 있는 과도기적 해결책을 찾는 것이 정답일 수도 있습니다.

전략적 자산으로서의 시간

HeroDevs가 Keelvar에 제공한 가장 소중한 것은 단순히 보안만이 아니었습니다. 바로 ‘시간’이었습니다. 계획을 세울 시간, 혁신을 이룰 시간, 그리고 보안에 대한 불안감보다는 비즈니스 가치를 바탕으로 마이그레이션 결정을 내릴 수 있는 시간이었습니다.

병렬 개발 작업

Keelvar는 기존 애플리케이션을 유지 관리하면서 점차적으로 대체 애플리케이션을 구축할 수 있음을 입증했습니다. 이러한 접근 방식은 위험을 줄이고, 고객 만족도를 유지하며, 더 나은 기술적 의사결정을 가능하게 합니다.

다른 SaaS 기업들을 위한 교훈

만약 여러분도 비슷한 프레임워크 선택의 고민에 직면해 있다면, Keelvar의 접근 방식을 고려해 보세요:

  1. 이주에 따른 실제 비용을 산출하십시오—기회 비용과 고객에 미치는 영향을 포함하여.
  2. 코드를 완전히 다시 작성할 필요 없이 특정 문제를 해결할 수 있는 임시 해결책을 찾아보세요.
  3. 프레임워크의 수명 주기에 따라 로드맵이 좌우되지 않도록 하고, 기술적 결정을 비즈니스 전략에 부합하도록 조정하십시오.
  4. 고객 가치를 최우선으로 삼아야 합니다. 기술적 결정은 고객의 성공을 저해해서는 안 되며, 오히려 이를 뒷받침해야 합니다.

기업용 SaaS 기업의 경우, 보안 수준을 유지하면서도 개발 추진력을 잃지 않는 능력은 단순히 ‘있으면 좋은’ 것이 아니라, 경쟁이 치열한 시장에서 번창하느냐, 그저 살아남느냐를 가르는 결정적인 요소가 되는 경우가 많습니다.

발렌티나가 말한 대로: “우리는 현재 비즈니스와 고객에게 가장 합리적인 방안을 바탕으로 Vue 3로의 전환을 계획대로 진행하고 있습니다. 전환 작업은 진행 중이지만, 이는 절박한 상황이 아니라 전략적인 결정입니다. 바로 그 점이 모든 차이를 만듭니다.”

경쟁이 치열한 시장에서 까다로운 고객을 대상으로 하는 SaaS 기업들에게 있어, 보안 수준을 유지하면서도 개발 추진력을 지속해 나가는 능력은 단순한 기술적 이점을 넘어, 성장과 고객 만족도에 직접적인 영향을 미치는 전략적 필수 요건입니다.

목차
사례 연구 다운로드