소스코드 저장소이자 개발자들의 놀이터로 불리는 깃허브(www.github.com)는 분산 버전 관리 시스템인 깃(Git)을 웹에서 보다 쉽게 사용할 수 있도록 만든 서비스입니다. 미국 깃허브社(GitHub Inc.)가 운영하며 초기에는 소스코드 호스팅에 주력했지만 지금은 전세계 소프트웨어 개발 생태계의 핵심 플랫폼으로 성장했습니다. 본 아티클에서는 깃허브가 발전해 온 과정과 그 이면의 플랫폼 전략에 대해 살펴보겠습니다.
깃허브는 전세계 SW 개발 생태계의 핵심 플랫폼으로 성장하였습니다.
깃허브는 2008년 2월에 공개되어 깃을 이용한 코드저장소 서비스를 시작했습니다. 다소 어려운 깃을 쉽고 간결한 인터페이스로 구현하고 프로젝트에 필수적인 이슈 관리, 코드 리뷰, 위키, 저장소 포크(Fork), 정적 웹사이트(GitHub Pages) 및 바이너리 패키지 저장소(Registry) 등의 기능을 추가하면서 사용자를 빠르게 늘려갔습니다. 특히 다른 저장소에 있는 코드를 자신의 계정에 복사하고 수정 사항을 원래의 업스트림(Upstream) 프로젝트에 반영할 수 있도록 한 포크 기능이 인기를 끌면서 오픈소스를 활용하는 많은 개발자와 프로젝트가 깃허브에 모여들게 되었습니다. 이같은 선순환 고리는 이용자 층을 눈덩이처럼 크게 만들었고 오픈소스 프로젝트가 성장하는데 의미있는 기여를 하게 됩니다.
깃허브가 부상하면서 글로벌 소프트웨어 기업이 자체적으로 운영하던 코드 저장소 서비스가 문을 닫기도 했는데요, 구글은 2016년 구글코드(GoogleCode)를, 마이크로소프트는 2017년 코드플렉스(CodePlex)를 폐쇄하였습니다. 깃허브는 2018년 마이크로소프트로가 75억달러(약8조원)에 인수해 자회사로 편입하였으며 4,000만 명 이상의 사용자를 확보하고 1억 개가 넘는 소스코드 저장소를 서비스하고 있습니다.
깃허브의 경쟁자도 많이 생겨났는데 대표적으로 비트버킷(Bitbucket, www.bitbucket.org)과 깃랩(GitLab, www.gitlab.com)을 들 수 있습니다. 컨플루언스(Confluence) 및 지라(Jira) 소프트웨어로 유명한 아틀라시안社(Atlassian Corp.)가 2008년부터 운영 중인 비트버킷은 개인이 비공개(Private) 저장소를 무제한 무료로 사용 가능한 장점이 있었습니다. 여기에 2011년 깃 지원을 추가하면서 공개(Public) 저장소만 무료로 제공하던 깃허브의 약점을 파고 들기도 했습니다.
깃랩社(GitLab Inc.)가 2011년 선보인 깃랩은 비공개 소스인 깃허브에 대항해 완전히 자유로운 MIT 라이선스로 소스코드를 공개함과 동시에 깃허브와 사용자 인터페이스를 유사하게 구현하여 많은 개발자를 끌어들였습니다. 이후 프로젝트 관리, CI(Continuous Integration)·CD(Continuous Deployment), 패키지 저장소 등의 기능을 재빨리 추가하고 프로젝트 기획과 개발 및 운영 등 소프트웨어 라이프사이클의 모든 단계를 커버하는 거대한 플랫폼을 구축하면서 사용자층을 넓히게 됩니다. 마이크로소프트가 깃허브를 인수할 때 이를 우려한 개발자들이 깃랩으로 이동하는 진풍경이 벌어지기도 했습니다.
비트버킷과 깃랩은 서비스 차별화와 오픈소스 전략으로 깃허브를 추격하고 있습니다.
깃허브도 이러한 도전에 맞서 가만히 있지는 않았습니다. 비공개 저장소를 개인뿐만 아니라 팀(Organization)까지 무료로 제공하였고 프로젝트 관리 기능을 강화한 데 이어 CI·CD 및 패키지 저장소 기능도 추가해 무료로 서비스하고 있습니다. 여기에 더해 2019년 오픈소스 라이브러리의 보안 결함을 자동으로 찾아주는 디펜더봇(Dependabot)을 인수하여 깃허브 사용자에게 무료로 제공하고 있습니다. 2020년 초에는 노드JS(node.js) 기반의 애플리케이션 개발을 지원하는 패키지 저장소와 커뮤니티를 운영 중인 npm을 인수하여 깃허브에 통합한다고 발표하기도 했습니다.
이와 같이 단점은 보완하고 장점은 강화하면서 완전한 개발 플랫폼으로 진화를 추구해 온 깃허브는 경쟁자보다 압도적으로 많은 사용자를 확보하면서 업계 선두 자리를 공고히 하고 있습니다. 해외에 비해 보수적인 경향을 보이는 국내 IT 업체와 대기업도 깃허브 엔터프라이즈 플랜을 구매하는 등 깃허브의 플랫폼 전략은 큰 성공을 거두고 있습니다. 카카오社(Kakao Corp.)는 깃허브를 도입하면서 복잡한 내부 서비스를 단일화하여 개발 생산성이 향상되었다고 밝힌 바 있습니다.
소스코드 저장소로 시작해 소프트웨어 개발 플로우 전체를 아우르는 기능을 갖추며 발전해가는 깃허브의 플랫폼 전략에서 중요한 축은 서드파티(3rd party) 서비스와의 통합을 가속화하는 것입니다. 깃허브와 마이크로소프트가 소프트웨어 분야에서 독보적인 위상을 가지고 있다 해도 개발 환경은 매우 다양하기 때문에 몇몇 회사가 모든 영역을 좌지우지 할 수 없습니다. 깃허브는 타 서비스와의 용이한 통합을 위해 일찌감치 OAuth 및 REST API를 지원하고 있었습니다. 그러나 사용자의 권한을 이용하는 OAuth 애플리케이션은 깃허브 시스템과의 밀접한 통합에 한계를 보였습니다. 이를 극복하기 위해 깃허브 앱(App) 개념을 도입했습니다. 깃허브 앱은 저장소에 직접 설치하는 방식이어서 사용자 권한이 필요한 OAuth와 달리 리소스 접근이 자유로웠고 그 결과 다양한 워크플로우를 보다 쉽게 통합할 수 있게 되었습니다.
깃허브의 플랫폼 전략에서 눈 여겨 봐야 할 점은 서드파티(3rd party) 서비스 통합과 마켓플레이스입니다.
깃허브의 플랫폼 전략에서 마켓플레이스(Marketplace) 서비스도 눈여겨 봐야 합니다. 깃허브 마켓플레이스는 사용자에게 보다 쉽게 앱 서비스를 검색해 사용할 수 있도록 지원하고 개발자에게는 깃허브 플랫폼과의 체계적인 통합 방법을 제공하는 애플의 앱스토어나 구글의 플레이스토어와 같은 공간입니다. 특히 자신의 독창적인 아이디어를 앱으로 구현하여 깃허브에 통합해 수익을 내고 싶어하는 소규모 SaaS(Software as a Service) 스타트업에게 매력적으로 작용하고 있습니다. 마켓플레이스를 통해 앱 홍보와 구매 및 설치가 가능해지면서 다수의 사용자에게 확산되는 선순환이 생겨났고 큰 성장을 이룬 서비스도 많아졌습니다.
앞서 언급한 디펜더봇은 깃허브 마켓플레이스 등록 직후 가입자가 10배 이상 증가하였고 그 중 80%가 서비스를 꾸준히 이용하면서 매출도 덩달아 성장했다고 합니다. 소스코드 검사 서비스인 코다시(Codacy)도 마켓플레이스 등록 1개월 만에 4,000명의 가입자가 늘어났는데 앱을 쉽게 설치하고 평가판을 사용할 수 있도록 지원하는 프로세스가 서비스 저변 확대에 큰 도움이 되었다고 밝혔습니다.
에스코어(S-Core)가 국내에서 개발·운영 중인 딥스캔(DeepScan, www.deepscan.io)도 이와 비슷한 경험을 하였습니다. 딥스캔은 자바스크립트(JavaScript)와 타입스크립트(TypeScript) 언어에 특화된 SaaS형 소스코드 검사 서비스입니다. 정적 분석 기술을 활용해 깃허브에 커밋된 코드를 자동으로 분석하여 버그를 찾아 리포팅 합니다. 깃허브 로그인만으로 자신의 저장소를 쉽게 분석할 수 있으며 현재 100여개 국가의 개발자가 사용하고 있습니다. 딥스캔은 경쟁업체에 비해 후발주자로 2019년 깃허브 마켓플레이스에 진입했음에도 직전월 대비 가입자가 2.5배 증가하는 효과를 보았습니다. 최근에는 깃허브와 파트너십을 맺어 학생들을 위한 플랜을 추가하면서 큰 폭의 가입자 증가를 이뤄냈습니다. 특히 딥스캔은 글로벌 시장을 타깃으로 하였으나 여러 가지 법적 제약으로 인해 스트라이프(Stripe)와 같은 편리한 온라인 결제 서비스를 활용할 수 없게 되면서 유료 사용자 유치에 큰 장벽이 있었는데 다행스럽게도 깃허브 마켓플레이스를 통해 유료 플랜에 대한 사용자 접근성을 크게 높일 수 있었습니다.
딥스캔(www.deepscan.io)은 자바스크립트와 타입스크립트에 특화된 SaaS형 소스코드 검사 서비스로 깃허브 마켓플레이스에 등록되어 있습니다.
2020년 현재, 서비스의 플랫폼화는 모든 기업이 주목하는 비즈니스 전략입니다. 깃허브의 사례는 소프트웨어 개발 환경이라는 비교적 독특한 분야에서조차 이러한 전략이 필요하며 또한 성공할 수 있다는 사실을 보여줍니다.
글로벌 시장에 SaaS형 클라우드 서비스를 제공하는 국내 소프트웨어 업체를 찾기 어려운 것이 현실입니다. 가장 큰 이유로 언어 장벽이 꼽히지만 이는 조금만 노력하면 극복할 수 있습니다. 더 큰 문제는 시장에 대한 인식입니다. 고객은 더 이상 오프라인에서 소프트웨어를 구매하지 않습니다. 특히 스타트업이 핵심 서비스를 구현할 때는 규모가 크고 인지도 높은 플랫폼에 올라 타는 것을 우선적으로 고려해야 합니다. 또한 해당 플랫폼과의 연동뿐만 아니라 다른 서비스와의 연계도 중요합니다. 이는 신속한 시장 진입과 함께 그 자체로 시너지 효과를 발생시켜 고객에게 보다 큰 가치를 제공하며 더 빨리 경쟁하고 피드백을 받아 서비스를 신속하게 개선할 수 있도록 합니다. 아울러 앞서 언급한 국내의 까다로운 온라인 결제 처리 문제도 글로벌 스탠다드에 맞춰 해결할 수 있습니다.
"A big fish must swim in deep waters.(큰 물고기는 큰물에서 놀아야 한다)"라는 격언이 뜻하는 바와 같이 번뜩이는 아이디어를 SaaS로 구현하여 깃허브와 같은 글로벌 플랫폼을 발판 삼아 세계 시장에 도전해보기를 바랍니다. 각국의 고객과 소통하고 다양한 기업들과 경쟁하면서 서비스 가치를 글로벌 수준으로 끌어올릴 수 있을 뿐 아니라 선진 기술 트렌드와 비즈니스 프로세스를 체득하고 시장을 꿰뚫어보는 통찰력까지 얻게 될 것입니다.
# References
[1] https://en.wikipedia.org/wiki/GitHub
[2] https://en.wikipedia.org/wiki/GitLab
[3] https://en.wikipedia.org/wiki/Bitbucket
[4] https://dependabot.com/blog/github-marketplace-effect-on-distribution
[5] https://blog.codacy.com/why-github-marketplace-is-the-perfect-fuel-for-growth
[6] https://github.com/customer-stories/kakao
[7] https://education.github.com/pack
[8] https://deepscan.io/docs/guides/changes
▶ 해당 콘텐츠는 저작권법에 의하여 보호받는 저작물로 기고자에게 저작권이 있습니다.
▶ 해당 콘텐츠는 사전 동의 없이 2차 가공 및 영리적인 이용을 금하고 있습니다.
에스코어㈜ 소프트웨어사업부 개발플랫폼그룹
프로그래밍 언어와 정적 분석을 전공하고 개발 플랫폼 분야에서 경력을 쌓아왔습니다. 현재 DeepScan 서비스를 개발하고 있습니다.