Search
moon
sun

“배포해줘” 한 줄로 끝나는 배포 — 전 직원이 쓰는 사내 플랫폼 구축기

URL
생성 일시
2026/09/17 01:06
최종 편집 일시
2026/09/17 01:06
태그
여기어때
파일과 미디어
|| “배포해줘” 한 줄로 끝나는 배포 — 전 직원이 쓰는 사내 플랫폼 구축기 글. 이단비(Tabie) / Service Factory팀 안녕하세요, 여기어때컴퍼니 Service Factory팀 타비입니다. 올해 초 팀을 옮긴 후 받은 첫 과제는 바이브코딩으로 서비스를 하나 만들어보는 것이었습니다. 여행 유튜브 영상을 AI가 요약해서 숙소 검색까지 이어주는 작은 웹 서비스를 단 며칠 만에 완성했습니다. 하지만 진짜 문제는 다 만든 다음이었습니다. 팀원들에게 결과물을 보여주려면 노트북 화면 공유만으로는 한계가 있었습니다. 결국 외부 호스팅 서비스에 결과물을 배포하고 링크를 공유했지만, 마음 한구석이 계속 불편했습니다. ‘사내에서 만든 결과물을 사외 서비스에 올려도 괜찮은 걸까’ 하는 의문 때문이었습니다. 문득 둘러보니 이는 저 혼자만의 문제가 아니었습니다. 당시는 회사가 전사적으로 AI와 바이브코딩을 막 확산하기 시작한 시기였습니다. 사외 서비스에 배포된 개인 작업물 링크들이 사내에 파편화되어 공유되는 모습이 눈에 들어왔고, 처음에는 이를 한곳에 모아두는 ‘갤러리 플랫폼’을 떠올렸습니다. 하지만 기획을 파고들수록 사외 서비스 파편화의 본질이 보였습니다. 바이브코딩 덕분에 비개발자 동료들도 서비스 ‘구축’까지는 가능해졌지만, 정적 웹 하나조차 사내망에 띄우지 못해 결국 사외 호스팅을 찾고 있었던 것입니다. 개발자인 저에게도 인프라 신청 절차가 높은 허들로 느껴지는데, 비개발 직군 동료들에게 배포는 넘을 수 없는 장벽이자 인프라 지식을 갖춘 개발자만의 영역으로 남아있었습니다. 갤러리에 모으는 건 다음 문제였습니다. 애초에 비개발자 동료들이 만든 결과물을 사내에 어떻게 쉽게 배포할 것인가가 먼저 풀어야 할 진짜 숙제였습니다. 목표가 완전히 바뀌었습니다. 지금 필요한 것은 갤러리가 아니라 ‘배포’ 그 자체였습니다. 외부 서비스를 빌리지 않고 딸깍 한 번으로 배포되는 사내 전용 플랫폼, 그렇게 바이브독 프로젝트가 시작되었습니다. 이 글에서는 사내 배포 플랫폼 바이브독을 만들고 운영해 온 과정을 정리합니다. 배포 과정에서 사용자가 느껴온 허들을 어떻게 하나씩 허물었는지, 그 편의를 위해 시스템은 무엇을 감당해야 했는지 차례로 이야기해 보겠습니다. 첫 커밋에서 첫 사용자 유입까지 7일 4월 초 전체 아키텍처의 밑그림을 그리고 인프라 구성을 요청했습니다. 복잡한 쿠버네티스 환경을 구축하는 대신, 서버 한 대에 바이브독을 올리는 심플한 정적 웹 호스팅 구조로 시작했습니다. 예상 트래픽이 사내 규모에 불과했고, 잠깐 서버가 멈춰도 고객 서비스에는 영향이 없는 내부용 워크로드였기 때문입니다. 초기 아키텍처를 잡을 때 위협 모델(Threat Model)도 함께 정의했습니다. 대전제는 ‘사용자는 신뢰할 수 있는 사내 구성원이며, 주된 위협은 외부의 악의적 공격보다 실수나 호기심에서 비롯된 보안 누출’이라는 점이었습니다. 이에 따라 제로 트러스트나 오토스케일링 같은 오버스펙은 과감히 덜어내고 당장 필요한 배포 기능에만 집중했습니다. 인프라 세팅이 완성되기를 기다리지 않고 바로 개발에 착수해 4월 8일 첫 커밋을 올렸고, 정확히 일주일 뒤인 15일에 개발 환경을 오픈했습니다. 첫 커밋 이후 단 7일 만에 배포가 되는 최소한의 뼈대만 만들어 열었던 셈입니다. 당장 동작하는 결과물로 사용자의 실제 반응을 보며 방향을 잡아나가는 바이브코딩의 철학을 그대로 적용했습니다. 첫 버전에 탑재한 핵심 기능은 코드를 받아 빌드하고 배포된 서비스 URL을 돌려주는 것 하나였으며, 이 단순한 시작은 이후 두 가지 큰 줄기로 발전하게 됩니다. 배포: 코드를 받아 서비스로 띄워주는 역할 API 프록시: 그 서비스가 외부 API나 DB를 호출할 때 대신 인증해 불러주는 역할 CLI에서 “배포해줘”로 개발 환경을 오픈한 날 비개발자 동료에게 CLI 배포 방법을 안내했지만, 이는 또 하나의 큰 장벽이었습니다. 표면적으로는 두 줄의 명령어였지만 터미널을 열고, 도구를 설치하고, 인증을 거치는 기반 환경 구축 자체가 ‘배포’가 아닌 또 다른 학습 과제였기