
설정값 뒤에 숨기던 단순 토글이 CNCF 오픈소스 표준 OpenFeature로 거듭나기까지의 여정
이 아티클은 Flickr의 브랜치 없는 배포에서 시작된 피처 플래그의 기원부터 나이트 캐피탈의 금융 사고 극복기, 그리고 최신 CNCF 표준인 OpenFeature의 흐름을 다룹니다. 우버가 만든 미사용 플래그 자동 정리 엔진 Piranha를 비롯하여, 배포 속도와 프로덕션 안정성을 모두 잡기 위한 업계 최고 수준의 실무 노하우를 집대성했습니다.
피처 플래그를 생성하는 즉시 기술 부채 백로그에 소멸 일정을 설정하고, 향후 벤더 이식성과 확장성을 확보하기 위해 표준 스펙인 OpenFeature 인터페이스 도입을 점진적으로 고려할 것을 권장합니다.
피처 플래그가 개별 설정값 위주로 방치되면서 레거시 코드가 제거되지 않아 대형 장애를 유발하거나, 다양한 벤더별 SDK 사용으로 인해 개발 코드 내 종속성과 복잡성이 늘어나는 문제가 지속되었습니다.
출시, 실험, 운영, 권한 등 목적에 따라 플래그 수명을 분류하여 관리하고, Piranha 같은 자동 삭제 도구를 도입하며, 최종적으로 CNCF OpenFeature 및 OFREP를 통해 플래그 평가 API 규격을 글로벌 표준으로 단일화했습니다.
장기 잔존 플래그로 인한 시스템 오작동 위험을 방지하고, 우버의 경우 Piranha로 미사용 플래그 자동 정리 제안 코드의 65%를 실무에 무수정 반영했으며, 개발자들은 벤더 변경 시에도 애플리케이션 코드를 수정하지 않는 유연성을 얻었습니다.
Trade-off
표준 API를 도입하더라도 기존 시스템의 개별 플래그 규칙이나 데이터가 자동으로 마이그레이션되지는 않으며, 현재 OpenFeature 및 OFREP 스펙의 다수가 아직 0.x 대의 실험 단계에 머물러 있어 세부 연동 안정성을 개별 검토해야 합니다.
소프트웨어 배포(Deploy)와 실제 사용자 대상 노출(Release) 단계를 명확히 분리하여, 새로운 배포 없이도 코드의 특정 기능을 활성화하거나 비활성화하는 동적 제어 기술입니다.
다양한 상용 및 오픈소스 피처 플래그 서비스의 API 호출 방식을 단일화하여 개발자 경험을 개선하고 특정 플랫폼에 대한 종속성을 없애기 위해 조직된 CNCF 표준 프레임워크입니다.
OpenFeature SDK 클라이언트와 원격 피처 플래그 관리 시스템 백엔드 간의 평가 요청 및 응답 데이터 형식을 규격화한 OpenAPI 기반의 공통 프로토콜 명세입니다.




