본문 바로가기

인공지능

플랫폼 엔지니어링이란 무엇인가: 왜 필요하고, 어떻게 구축하며, 성공은 어떤 모습인가

728x90
반응형
728x170

이 글은 최근 주목받고 있는 플랫폼 엔지니어링(Platform Engineering) 이 무엇인지, 왜 등장했는지, 실제로 플랫폼 팀은 어떤 일을 하며, 성공적인 플랫폼은 어떤 특징을 가지는지를 하나의 흐름으로 정리합니다.
단순히 DevOps를 이름만 바꾼 개념이 아니라, 내부 엔지니어를 사용자(customer) 로 삼아 내부 제품을 설계·운영하는 조직적 규율로서의 플랫폼 엔지니어링을 다룹니다. 또한 실제 조직에서 반복적으로 발생하는 실패 원인과, 이를 피하기 위한 실전적인 기준도 함께 설명합니다.

반응형

플랫폼 엔지니어링은 왜 등장했는가

플랫폼 엔지니어링의 출발점은 복잡성의 폭발입니다.

클라우드와 오픈소스 생태계는 큐, 데이터베이스, 오브젝트 스토어, CI 러너, 서비스 메시 등 수많은 프리미티브를 제공합니다. 문제는 선택지가 너무 많아졌다는 점입니다.
각 애플리케이션 팀이 각자 다른 기술 조합을 선택하면서, 시간이 지나면 다음과 같은 상황이 발생합니다.

  • 서비스마다 서로 다른 배포 파이프라인
  • 제각각인 재시도 로직과 모니터링 방식
  • 미묘하게 잘못된 IAM 바인딩
  • 거의 동일하지만 버그는 서로 다른 Terraform 모듈

이 상태를 글에서는 과잉 일반화 늪(Over-General Swamp) 이라고 부릅니다.
선택지의 폭발과 24/7 운영, 보안, 컴플라이언스, 비용 관리에 대한 기대치 상승이 이 늪을 만들어냅니다.

실제 사례로, 하나의 랜딩존 프로젝트에서 20개 팀이 거의 동일한 VPC, IAM, 예산 알림용 Terraform 모듈을 각자 재구현했고, 모두 서로 다른 버그를 가지고 있던 경우도 소개됩니다.

플랫폼 엔지니어링은 바로 이 문제를 해결하기 위해 등장했습니다.


DevOps와 플랫폼 엔지니어링의 차이

DevOps의 핵심 메시지는 간단합니다.

  • “개발자가 운영을 소유하라.”

플랫폼 엔지니어링은 여기서 한 단계 더 나아갑니다.

  • “그 운영을 잘하기 위한 도구를 실제 제품으로 제공하겠다.”

즉, 개발자가 리눅스 커널이나 클라우드 내부 구현을 모두 알 필요 없이,
자신이 만든 서비스를 직접 운영할 수 있도록 돕는 제품을 만드는 것이 플랫폼 엔지니어링입니다.

이 관점은 2025년 DORA 보고서에서도 확인됩니다.
DORA는 플랫폼 엔지니어링을 단순한 도구 카테고리가 아닌 사회기술적(sociotechnical) 규율로 정의하며, 조직의 90%가 이미 하나 이상의 내부 플랫폼을 도입했다고 밝힙니다.
특히 플랫폼 품질은 AI 도구가 실제로 가치를 창출할 수 있는지를 예측하는 핵심 지표로 등장했습니다.


플랫폼 엔지니어링이 실제로 하는 네 가지 일

플랫폼 팀이 실제로 수행하는 역할은 다음 네 가지로 요약할 수 있습니다.

  1. 프리미티브를 제한하고 큐레이션한다
    개발자가 무엇이든 선택하게 두지 않고, 조직이 지원하는 방식으로만 사용할 수 있게 유도합니다.
  2. 반복적인 배관 작업을 공유 서비스로 흡수한다
    애플리케이션마다 존재하던 글루 코드를 제거합니다.
  3. 변경 비용을 중앙화한다
    기반 프리미티브가 바뀔 때 플랫폼 팀이 한 번만 처리합니다.
  4. 개발자가 직접 운영할 수 있게 만든다
    전문가가 아니어도 운영 가능한 추상화를 제공합니다.

결과적으로 플랫폼은 개발자의 속도를 높이고, 조직 전체의 운영 품질을 안정화합니다.


성공적인 플랫폼을 만드는 다섯 가지 기둥

1. 큐레이션된 제품 접근

플랫폼은 지원하는 것과 지원하지 않는 것을 명확히 결정해야 합니다.
“Kafka를 쓰고 싶으면 여기 문서 보세요”가 아니라,

  • 왜 지원하지 않는지
  • 언제 예외가 가능한지
  • 맞지 않을 경우의 대안 경로는 무엇인지

까지 함께 안내해야 합니다.
거절하는 것도 플랫폼 팀의 중요한 업무입니다.


2. 소프트웨어 기반 추상화

플랫폼은 위키가 아니라 소프트웨어입니다.
인터페이스는 문서가 아니라 API, CLI, SDK여야 합니다.

개발자는 작은 선언적 설정 파일 하나로 프로덕션급 리소스를 프로비저닝할 수 있어야 합니다.
예를 들어 CNCF 산하의 Score 프로젝트는 하나의 워크로드 스펙으로 데이터베이스, 토픽, 서비스 계정, 배포를 자동으로 구성합니다. 내부적으로 어떤 클라우드 서비스가 쓰이는지는 개발자가 알 필요가 없습니다.


3. OSS 커스터마이징과 메타데이터 레지스트리

바닐라 상태의 도구를 그대로 쓰는 것은 거의 항상 실패로 이어집니다.
조직에 맞는 플러그인, 정책, 기본값을 적용해야 합니다.

이때 핵심은 메타데이터 레지스트리, 즉 서비스 카탈로그입니다.

  • 어떤 서비스가 존재하는가
  • 누가 소유하고 있는가
  • 의존 관계는 무엇인가
  • 실제로 무엇이 실행 중인가

이 질문에 답할 수 없다면 플랫폼은 운영될 수 없습니다.
이 영역에서 사실상 표준으로 자리 잡은 것이 **Backstage**이며, 270개 이상의 조직이 프로덕션에서 운영 중입니다.


4. 광범위한 사용자 기반 서비스

플랫폼은 소수의 엘리트 개발자를 위한 도구가 아닙니다.
중간값(median) 개발자의 중간값 작업을 가장 잘 지원해야 합니다.

엘리트 사용자만 만족시키면, 나머지 팀은 플랫폼을 우회하고 섀도우 플랫폼을 만들게 됩니다.


5. 파운데이션으로 운영

플랫폼은 “도구”가 아니라 바닥(floor) 입니다.
플랫폼이 멈추면 회사가 멈춥니다.

  • 24/7 온콜
  • 실제 SLO
  • 실제 변경 관리
  • 실제 지원 부담

이 모든 것을 감당해야 합니다.


플랫폼 팀은 언제, 어떻게 시작해야 하는가

플랫폼 팀은 너무 일찍 만들면 실패합니다.

  • 엔지니어 10명 규모에서는 협력이 더 중요합니다.
  • 1~2명으로 플랫폼 팀을 만들면 티켓 큐만 양산됩니다.

보통 엔지니어 50명 이상, 배포 대상이 늘어나고 “새 서비스는 어떻게 배포해야 하지?”라는 질문에 아무도 명확히 답하지 못할 때가 적기입니다.

기존 인프라/SRE 조직을 플랫폼 팀으로 전환할 때 가장 어려운 것은 기술이 아니라 문화입니다.
게이트키퍼가 아니라, 쉽게 예스를 제공하는 사람으로 역할이 바뀌어야 합니다.


제품으로서의 플랫폼: 내부 고객의 어려움

내부 고객은 외부 고객보다 더 어렵습니다.

  • 이탈이 어렵고
  • 의견은 강하며
  • 실제로 필요한 것과 원하는 것이 다를 때가 많습니다

플랫폼 백로그를 만들고 싶다면 회의실이 아니라,
개발자 옆에 앉아 하나의 변경을 배포하기 위해 몇 번의 컨텍스트 스위칭이 발생하는지를 관찰해야 합니다.


운영과 지원: 보이지 않지만 가장 중요한 영역

플랫폼 엔지니어링에서 지원은 업무의 절반입니다.

이를 무시하면 엔지니어는 Slack DM에 시간을 소모하고, 나머지 절반은 불만 처리에 쓰게 됩니다.
지원은 반드시 단계적으로 공식화해야 합니다.

  • 지원 레벨 정의
  • 온콜과 비중요 지원 분리
  • 필요 시 전담 지원 인력 채용
  • 규모에 맞는 지원 조직 구축

또한 SLO와 명확한 실패 피드백은 필수입니다.
DORA 2025 데이터에서 사용자 경험과 가장 높은 상관관계를 보인 역량은 실패 시 무엇이 실패했고, 어떻게 해야 하는지를 명확히 알려주는 것이었습니다.


성공적인 플랫폼의 모습

정렬된 플랫폼

목적, 전략, 계획이 일관되지 않으면 중복 작업과 분노한 개발자가 생깁니다.
합의가 아니라 원칙 있는 리더십이 필요합니다.

신뢰받는 플랫폼

신뢰는 한 번의 나쁜 마이그레이션으로 무너집니다.
때로는 신뢰 문제가 “너무 적게 해서”가 아니라 “너무 많이 해서” 발생하기도 합니다.

사랑받는 플랫폼

  • 그냥 작동하는 플랫폼
  • 설명이 필요 없는 CLI 경험
  • 설문, 리텐션, 자발적 추천

사랑받는 플랫폼은 예산 시즌에 사람들이 대신 싸워줍니다.


728x90

플랫폼 엔지니어링의 핵심 메시지는 분명합니다.

  • 나쁜 플랫폼은 AI 도구가 혼란을 증폭시키고
  • 좋은 플랫폼은 조직의 처리량을 증폭시킵니다

로켓을 만들기 전에, 먼저 바닥을 만들어야 합니다.
플랫폼 엔지니어링은 화려한 기술이 아니라, 조직이 지속적으로 성장하기 위한 가장 현실적인 토대입니다.

300x250

https://www.lucavall.in/blog/platform-engineering-end-to-end

 

Platform Engineering End-to-End | Blog

Platform engineering is more than DevOps with a portal. This post walks the full arc of the discipline end to end: why platforms exist, how to build and operate them, how to manage the messy stakeholder politics, and what success actually looks like. Groun

www.lucavall.in

728x90
반응형
그리드형