플랫폼 엔지니어링, 어떻게 정당화할까
Source: Dev.to
그 책인 “Engenharia de Plataforma”(Camille Fournier와 Ian Nowland 저)은 최근 몇 년간 소프트웨어 구축이 매우 쉬워졌다.
데이터베이스, 큐, 저장소, 관측성 시스템, 인증 서비스 등 대부분의 기능은 이미 클라우드 제공업체와 오픈소스 도구로 준비되어 있다.
하지만 이 편리함은 유지보수 측면에서 취약성을 가져왔다. 실제로는 Camille Fournier와 Ian Nowland이 부르는 “Generalized Swamp”(진 muddy middle)에서 조직들이 빠지는 경우가 많다: 만들기는 쉽지만 확장(진화)은 비싸다.
서비스 예시:
- KMS
- S3
- Lambda
- RDS
- Kafka
이것들은 문제가 아니다. 오히려 레버리지를 제공하고, 필요한 부분에만 집중하게 해준다.
접착제(Glue)는 필연적이다. 문제는 이를 제어하지 못한다는 점이다!
20개의 애플리케이션을 가진 회사를 상상해 보자.
모두 KMS를 이용해 데이터를 암호화해야 한다.
앱 A → 자체 헬퍼 → KMS
처음에는 좋은 해결책처럼 보인다.
몇 달 뒤 새로운 요구 사항이 생긴다:
- 키 회전
- 새로운 로그 표준
- 새로운 감사 계약
- 권한 변경
결과적으로 20가지 다른 구현이 필요하게 되어, 모든 프로젝트에서 이 접착제를 완전히 마이그레이션하기 위해 스프린트를 몇 개나 소모해야 한다.
대안으로 이 지식을 공유 자산으로 전환할 수 있다.
앱 A → (접착점)
이제 우리는 하나의 접착점만 가지고 있다. 우리 앱을 개발하는 사람들은 KMS와 직접 interact하지 않는다.
나는 간단한 전제에서 시작한다:
-
제품 기능과 직접 관련이 없는 everything은 지루하고 반복적이며 중앙 집중화되어야 한다.
-
로그
-
관측성
-
암호화
-
Feature Flags
-
인증
-
파이프라인
-
레포지토리 거버넌스
이 구성 요소들은 경쟁 우위를 제공하지 않는다. 일관되게 실행하는 데 가치가 있다. 그 자체가 회사의 가치이다.
이와 같은 사고방식은 코드 밖에서도 나타난다:
- 수동으로 만든 레포지토리
- 수동으로 설정한 권한
- 수동으로 구성된 파이프라인
- 수동에 추가된 스크립트
각 새로운 프로젝트는 일관성 없는 상황을 만들기 위한 또 다른 기회를 제공한다.
시간이 지나면서 간단하지만 답할 수 없는 질문들이 생긴다:
- 누가 액세스 권한을 가지고 있는가?
- 어떤 파이프라인 표준이 사용되는가?
- 필수 검증은 무엇인가?
- 비표준 레포지토리는 어디에 있는가?
스택이나 솔루션 자체에 문제가 있는 것이 아니라, 회사 전체 서비스에 퍼진 접착제가 문제다.
내부 플랫폼은 기술을 숨기기 위해 존재하지 않는다. 그것은 소음을 집중하고 필터링하는 데 있다.
O desenvolvedor da solução não deveria pensar em como a empresa lida com logs, mas sim naquela solução específica. Ele deve ter um ambiente seguro e produtivo para se preocupar o máximo possível com a entrega de inovação.
플랫폼 엔지니어링은 작은 팀이 회사의 전체 작업을 줄일 수 있게 해준다. 도구 트러블슈팅 시간을 제품에 전달되는 가치로 전환한다.
플랫폼은 사용자에게 더 나은 대안을 제공하는 데 초점을 맞춰야 한다. 로그나 암호화의 기업용 추상화가 복잡해질 필요는 없다.
이러한 추상화를 직접 KMS 라이브러리를 사용하는 것보다 더 쉽고 효율적으로 만들어야 한다.
내부 플랫폼에 대한 연구는 매우 흥미롭고, 대규모 플레이어가 많은 변화 속에서도 서비스를 일관되게 유지하는 방법을 배우고 있다.
또한 이 주제가 현재 코드가 commoditized(상품화)되고 대량의 정보에 대응하며 품질을 유지하기 어려운 상황에서 매우 중요하게 느껴진다.
집중적이고 잘 설계된 플랫폼, 혁신을 수용할 수 있는 플랫폼은 진정한 기업용 소프트웨어를 AI 시대에 생산하는 데 최선의 방법 중 하나이다.
플랫폼이 없으면 노이즈가 존재한다. 확장이 빠른 것은 노이즈와 기술 부채다.