새로운 시장을 창조한 스타트업 GitHub의 비하인드 스토리


리눅스의 아버지 
리누스 토발즈가 리눅스를 개발하면서 고생했던 부분중에 하나는 리눅스 커널의 소스관리였다. 일반적으로 소스 관리를 위해서 사용되던 툴은 중앙집중형 소스 관리 시스템(CVS, SVN등)이었는데, 이 시스템은 리눅스 커널 관리에 적합하지 않았다. 이런 불편함에 지친 리누스 토발즈는 결국 자신이 필요로하는 분산형 소스 관리 시스템 git 을 직접 개발해낸다. 하지만, 2005년 git 이 첫선을 보인이래로 개발자들에게 열광적인 반응을 이끌어내지는 못했다. 이미 시장을 지배하고 있는 소스관리시스템인 svn 에 비해 git 은 익히기가 힘들었고, 호스팅해주는 서비스도 거의 없었기 때문이다. 그런데 릴리즈 이후 2~3년은 잠잠하다가 2007년을 기점으로 사람들의 반응이 폭발적으로 올라가기 시작( 그림 1 참고 )했다. 도대체 무슨 일이 일어난 것일까???

<그림 1 : 미국지역에서의 git 검색 트래픽 그래프 (From Google Trends) >

바로 2007년은 Github 가 시작된 해이다. 갑자기 생겨난 git 의 뜨거운 호응 뒤에는 Github 가 있었다. 2012년 현재 140만명이나 되는 개발자가 Github에 가입되어있다. 개발자들을 대상으로하는 서비스임을 감안하면 엄청난 숫자이다. git 이라는 단어자체가 생소했던 2007년에 시작된 Github! 도대체 Github 가 뭐길래 세상을 뒤흔들었던걸까? 심지어 그들은 단한번도 투자를 받은적이 없다. 도대체 Github 가 뭐길래!?

1 ) Github 란 무엇인가? 

Github 는 git을 호스팅해주는 웹 서비스로 간단히 소스코드의 위키피디아라고 생각하면 된다. 위키피디아에 페이지를 만들듯이 개발자들은 프로젝트를 만든다. 그렇게 만들어진 프로젝트는 웹 페이지를 통해 열람, 수정등이 가능하다.

Github 는 기본적으로 프로젝트를 호스팅한다. 아래 그림은 가장 유명한 오픈소스 프로젝트중 하나인 rails 의 프로젝트 홈페이지이다.

  <그림 2 : 오픈소스 프로젝트 ruby on rails의 github 페이지>

얼핏보면 일반 오픈 소스 프로젝트 호스팅 페이지와 비슷한데, 우측 상단에 보면 재미있는 숫자들이 보인다.

<그림 3 : watch 와 fork >

2880 이라고 써진 글자는 fork 횟수인데, fork 라는 것은 프로젝트 복사를 의미한다. fork 를 하게되면 fork 한 개발자의 게정에 현재 작성된버전이 그대로 복사가 되는데, 수정을 통해 자신만의 버전을 만들어서 자신이 계속 사용할 수도 있고, pull request  를 통해 rails 관리자에게 자신의 작업한 부분의 반영을 요청할 수도 있다. watch 는 프로젝트의 변화를 계속 관찰하여 변화가 일어날때마다 notification을 받겠다는 것이다. ( 페이스북에서 특정 페이지를 like 한 행위와 비슷하다고 볼 수 있다. )

뿐만 아니라, Github에서는 개발자들끼리의 어울림을 권장하고 있다.

마치 Facebook 의 담벼락처럼 모든 개발자는 자신의 홈페이지를 가지고 있다. 개발자의 페이지에는 그가 참여한 프로젝트, 코멘트등 Github 에서 한 모든 행동을 관찰할 수 있다. (그림 4 참고)

< 그림 4 : 37signals 와 ruby on rails 의 제작자로 유명한 David Heinemeier Hansson 의 Github 페이지>

또한, 오픈 소스내에서 일어나는 각종행위(commit, push, issue 처리등)에 대해 토론을 나눌 수 있다. (Facebook 에서 글이나 링크를 달고 그것에 대해 이야기를 나누는 것과 비슷하다고 생각을 하면 된다. )

<그림 5 : 특정 issue 에 대해 토론을 나누는 모습>

그러면 Github 는 돈을 어떻게 벌까? 오픈 소스 프로젝트에는 무료로 호스팅을 제공해주지만, private  프로젝트 호스팅에 대해서는 돈을 받는다. 만약 작성된 코드가 Github 서버에 보관되는것이 불편하다면, Github Enterprise 라는 설치형 프로그램을 이용할 수도 있다. 가격은 사람과 사용하는 프로젝트의 수에 따라 다양하다.

2 ) Github 의 창업 스토리 

2-1) 만남

<Github founders : 왼쪽부터 PJ Hyett, Tom Preston-Werner, Chris Wanstrath >

Github 의 창업자는 현재 30대 초반의 Tom Preston-Werner 라는 Rails Programmer 이다. Gravatar라는 서비스를 개발하여 ( wordpress 로 유명한) automattic에  매각한 경험이 있는 serial entrepreneur 이다. Git 의 열혈팬이기도 했던 Tom 은 Rails 개발자 모임에서 만난 Chris Wanstrath 와 술을 먹다가 Git Hosting site 가 있었으면 좋겠다라는 아이디어를 갖게 된다. 당시에는 git 은 인기가 없어서 아주 소수의 개발자 (주로 Linux Kernel 개발자) 들이나 쓰던 중이었다. 쓸만한 호스팅 사이트도 없었고, git 의 시스템 자체는 괜찮은데 이용함에 있어서 불편함이 있었다. 그래서 두 사람이 직접 git 을 웹에서 이용할 수 있는 시스템을 만들기 시작했다.

처음부터 어떤 시장성을 생각하고 작업을 한 것은 아니었다. 다만, git 을 사용하는데에 불편했기 때문에 필요성에 의해 시작한 프로젝트였다. Tom, Chris 각각 직업이 있었기 때문에 일주일에 한번씩 만나면서 주말 혹은 밤에 작업을 진행하였다.

웹 사이트가 모양을 갖추고 사람들이 몰려들면서 두 사람의 일손만으로는 부족하여 Chris 가  PJ 를 끌어들였다. 사실, Chris 와 PJ 는 스타트업을 운영하던 중이었는데 Github 에 가능성이 보임에 따라 정리를 하고, Github 에 열중하게 된다.

2-2) 초반전략 – 돈을 안쓰기

초반에는 그들은 돈을 거의 쓰지 않았다. Github 를 시작한지 2년동안이나 사무실이 없었다. 일반 스타트업에서는 말이 안되는 이야기일수도 있는데, tech based startup 에서는 충분히 가능한 일이다. 사무실이 없었기 때문에 주로 업무는 campfire 라는 web based 채팅서비스를 통해 진행하였다. 지금도 많은 startup 이 campfire 같은 대화방을 통하여 업무를 진행한다. 얼마전에 회자되었던 facebook 의 개발자 문화에 대한 글에서도 보면 그들이 채팅서비스인 IRC 를 얼마나 잘 활용하고 있는지 알 수 있다. 거기다가 그들은 사이트의 호스팅도 EngineYard 라는 업체로부터 무료로 받아서 운영했다. 대신 EngineYard의 광고를 Github 에서 해주었다. 서비스를 운영하는 서버비용이 들지 않고, 물리적인 사무실이 한동안 없었으니 법인 설립비용말고는 외적인 비용이 거의 필요없었다. (실제로 startup school 의 강연에서 Tom 은 github 를 운영하는데에는 법인설립비용 $1000 정도만이 필요했다라고 회고했다. )

2-3) 그 이후..

어느정도 돌아가는 베타버전을 만든 이후에는 주변의 rails 개발자들을 대상으로 영업(?)을 했다. 오픈 소스 프로젝트를 이왕 진행할거면 우리 페이지에서 진행하라는 논리로 git 을 모른다면 git 에 대해서 설명도 해주는 등 열혈히 영업을 하였다. 다행히 rails 개발자들의 반응이 무척 좋았고, 이 반응에 힘을 얻어 Github 2008년 4월 대중에게 첫 선을 보이게 된다.

2-4) 운영 스타일

github 의 운영지침은 운영지침이 없는 것이다. 부서도 없고, 직급도 없고, 계층도 없고, 데드라인도 없고, 출퇴근 시간도 없다. 그냥 자신이 중요하다고 생각하는 것을 정해서 원하고 싶을때 자신의 일을 진행하면 된다. 무척 위험한 운영일수도 있는데, 현재까지 아주 잘 지켜지고 있다. 이런 운영방침을 지킬 수 있는 것은 그들 직원에 대한 신뢰와 존중이 있기 때문이다. 믿을 수 없는 직원은 뽑을 필요가 있겠는가?

2-5) Luck ?

혹자는 Github 의 성공이 단지 운이라고 얘기하지만, Github 의 창업자 Tom 은 Github 의 성공에는 단순히 운이라고 하지 않는다. Tom의 직장은 원래 San Diego 였고, 컨설턴트로써 수입은 괜찮은 편이었지만, 미래를 위해 tech people 이 많은 San Francisco 로 이사를 간다. 또한 Rails 개발자 모임에 꾸준히 참석을 하며 인맥을 쌓아나갔다. 그의 Co-founder 는 모두 Rails 개발자 모임에서 만난 사람들이다. 또한 처음 호스팅 서비스를 무료로 제공했던 EngineYard 역시 Rails 개발자 모임에서 만났던 사람들이기에 그들에게 그러한 호의를 베풀었던것 이다.

2-6) 실리콘 밸리의 새로운 채용문화

Github 의 성공은 실리콘밸리의 채용문화를 바꿨다. 채용대상자의 트위터, 페이스북을 보고 그가 어떤 사람인지 알아본다는 얘기가 있는것처럼, 채용대상자의 기술적인 능력을 볼때는 Github 를 이용한다. 개발자의 Github 페이지만 들어가봐도 그가 어떤 분야에 대해서 관심이 있는지 그가 작성한 코드들도 엿볼 수가 있기때문이다.

3 ) 교훈

Github 는 전형적인 스타트업 성공의 길을 그대로 따르고 있다. 스타트업은 1) 좋은 시장– 모두가 관심없어하지만 곧 커지게 될 시장- 을 선택하여 2)극소수의 고객에게 wow 경험을 주는 것에서 출발해야할 것이다. 이 방향은 얼마전에 읽은 블로그의 글과도 일맥상통한다.

Github 의 경우는 1,2가 아래와 같았다.

1) Git 을 이용한 소스코드 호스팅 시장   2) San Francisco Rails 개발자들

주어를 Github 대신에 다른 스타트업을 써도 무방하다.

Facebook 1) 소셜네트워크시장    2)Harvard 대학생

Apple      1) 개인 PC 시장           2)Homebrew Computer Club 회원들

따라서 초기 스타트업은 1과 2를 잘 찾아야 한다. 그런데 아이러니하게도 대부분의 스타트업들이 자신의 시장을 고를때 잘 될것 같아서 고르는 경우는 흔치 않다. 그것보다는 자신의 필요로 인해서 프로젝트를 진행했는데, 알고보니 잠재력이 있는 시장인 경우가 더 많다.

잠재력이 있는 시장인지 아닌지는 어떻게 알 수 있을까? 직관력도 필요하겠지만, 결국 해보는 수 밖에 없다고 본다. 그렇기 때문에 스타트업은 지출을 최대한 줄이고, 다양한 관점에서 접근하며 언제든지 pivoting 을 할 준비가 되어있어야 한다.

4 ) Trivia

 * Traffic 의 30%만이 미국으로부터 나온다. 진정한 글로벌 서비스!!

 * 3명의 창업자중 대학교 졸업을 한 사람은 PJ뿐이다. 나머지는 대학교 중퇴. 졸업을 기다릴수 없을 만큼 그들은 어서 일을 하고 싶었다고 한다.

 * 필자의 회사도 Github enterprise 를 이용하고 있다.

 * github 는 Help 페이지의 코드를 공개하고 있다. 누구나 Help page 를 바꾸고 싶으면 pull request 를 통해 변경이 가능하다. 이 센스있는 것들 같으니라구!

14 Comments on “새로운 시장을 창조한 스타트업 GitHub의 비하인드 스토리

  1. Git 라는 것도 처음 알게 되었고, 실리콘밸리의 문화도 다시 한번 느낄 수 있었네요. 좋은 글 감사합니다.

  2. “개발자의 Github 페이지만 들어가봐도 그가 어떤 분야에 대해서 관심이 있는지 그가 작성한 코드들도 엿볼 수가 있기때문이다.” 여기에 StackOverflow 답변 리스트들도 보면 다면평가가 가능할것 같습니다 ㅎㅎ

  3. 핑백: Geek 의 간지가 넘치는 Github 본사방문기 « Entrepreneurs Meet Developers

  4. 좋은 글 감사합니다. 회사내에서 개발자가 아닌 분들에게 github에 대해 간략하게 소개하는 짧은 글을 만드는데 좀 사용을 하고자 하는데 괜찮을지요? 당연히 출처는 명시하도록 하겠습니다.

  5. 정말 좋은글 감사합니다. 회사 내부에서 게시하도록 좀 퍼가겠습니다.
    감사합니다.

  6. 많은 영감을 얻었습니다. 그들의 창업방식이나 채용문화가 너무 부럽습니다. 우리 젊은이 들이 실천했으면 좋겠네요.

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

%d 블로거가 이것을 좋아합니다: