Google Platforms Rant – Stevey Yegge

나는 아마존에서 6년 반동안 일했고 지금은 구글에서 그만큼 일했다. 두 회사에 대해 생각할 때 가장 먼저 떠오르는 것은-거의 매일 인식하게 되는 것인데- 얼마나 아마존이 일을 잘못 하고 있고, 구글이 얼마나 잘 하고 있는가이다. 물론 이는 성급한 일반화지만, 또한 놀랍도록 정확한 표현이기도 하다.

놀라울 정도다. 두 회사를 비교할 100 가지, 혹은 200가지 방법이 있을지 모르지만 내 기억이 맞다면 세가지 정도를 빼고는 구글이 모두 다 우위에 있다. 사실 난 언젠가 이에 관한 스프레드시트 비교 항목을 만든 적이 있는데, 인사과에선 이를 매우 좋아했지만 법무에서는 쓰지 말라고 했다.

 잠깐 간단한 예를 들어보자. 아마존의 채용과정은 팀들이 직접 구인하도록 되어있어서 근본적으로 잘못되어 있고, 그래서 팀들이 각자 애쓰기는 해도 채용기준은 팀마다 일관성이 없다. 그리고 업무진행도 개판이다. 그들은 제대로된 관리시스템이 없어서 엔지니어들이 거의 모든 걸 해야한다. 그래서 그들은 코딩 할 시간이 없다. 물론 이는 속한 팀에 따라 편차가 크다. 그러니 모든 게 운빨이다. 아마존은 기부도 하지 않고 지역사회에 기여하는 일도 없다.

절대 그런 짓은 안 한다. 어쩌면 조롱은 할지도 모르겠지만… 그들의 시설은 더럽게 칠해진 농장건물 같아서 꾸밈이나 적절한 회의장소 같은 게 없다. 봉급과 복지도 엿같다. 물론 최근엔 구글, 페이스북과의 경쟁 때문에 좀 덜해지긴 했지만 말이다. 하지만 보너스나 성과급이 없기는 매한가지다. 아마존은 언제나 봉급 그대로만 주고 그게 끝이다. 그들의 코드는 재앙이다. 팀이 뭔가 하기로 결정하지 않는다면 표준 같은 건 안중에도 없다.

아마 존에게 좋은 말도 해주자면 그들은 매우 좋은 라이브러리 시스템을 갖고 있고, 이는 우리도 본받아야 하는 것이다. 그리고 훌륭한 출판-구독 시스템도 마찬가지이다. 하지만 대부분은 DB에서 정보를 읽고 쓰는 것 말고는 할 줄 모르는 쓰레기 도구들만 있을 뿐이다. 거저 주는 게 아니라면 절대 갖고싶지 않을 것들이다.

나는 출판-구독 시스템과 라이브러리 관리 시스템이 아마존이 구글보다 잘하는 세가지 중 두가지라 생각한다.

아 마 당신은 일단 출시해보고 미친듯이 뜯어고치는 것도 아마존이 더 잘 한다고 할지 모르지만 그건 논쟁의 여지가 있다. 그들은 장기간 고려가 필요하든 뭐든 출시를 최우선으로 한다. 그런 빠른 출시가 시장에서 약간의 경쟁력을 주기도 하지만, 그건 회심의 일격이 되기보다는 문제를 일으키기 일쑤다.

하지만 그들이 그 많은 정치적, 철학적, 기술적 문제에도 불구하고 정말 정말 잘 하는 것이 있다.

제프 베조스(아마존 CEO)는 악명 높은 마이크로 경영자이다. 그의 마이크로 경영은 아마존 홈페이지의 픽셀 하나까지 관리한다. 그는 애플의 수석 과학자 래리 테슬러를 고용한 적이 있는데, 래리는 인간-컴퓨터 상호작용 분야에서 세계에서 제일 권위있는 사람이라 할 수 있다. 그를 고용한 뒤 베조스는 래리가 마침내-그리고 현명하게도- 회사를 떠날 때까지 3년 동안 그가 하는 말을 하나도 듣지 않았다. 래리는 분명 편의성에 대한 연구지식을 통해 그 문제 많은 사이트를 고칠 방법을 제안할 수도 있었지만 베조스가 그 수백만개의 픽셀에 대한 집착을 버리지 못 했다. 그 픽셀들은 그의 자식과도 같은 것이다. 그래서 아마존 사이트는 남았고 래리는 떠났다.

하지만 마이크로 경영이 아마존이 잘하는 세번째 것은 아니다. 물론 아마존이 마이크로 경영을 매우 잘 하긴 하지만 나는 그게 강점도 뭣도 아니라고 생각한다. 나는 그저 문맥적으로 아마존이 어떻게 돌아가는지 이해시키려고 예로 든 것 뿐이다. 나는 그저 아마존에서 일하기 위해 이 심각하게 진지한 사내를 위해 어떻게 해야하는지 말하려 한 것이다. 그는 자신에게 반대하는 이가 있다면 그들 머리짝에다 자기 이름표를 붙이고는 “이 회사의 경영자가 누군지” 상기시켜주곤 한다. 베조스는 좀 더 평범한…스티브 잡스 같은 사람이다. 잡스의 패션과 디자인 센스만 빼고 말이다. 베조스는 엄청나게 영리하다. 그건 분명하다. 그는 단지 보통 관리 시스템을 개차반 취급할 뿐이다.

어느날, 제프 베조스가 명령을 내렸다. 베조스가 명령을 내리는 건 늘 있는 일이고 응당 사람들은 명령이 나오자 마자 개미처럼 분주하게 움직여야 한다. 하지만 2002년인가 언젠가 한번은 그가 너무나 거대하면서도 눈이 튀어나올 것 같은, 그의 다른 명령이 마치 성과급 수준으로 느껴지는 그런 명령을 내렸다.

여기 그의 중요한 업무 지시가 있다.

  1. 모든 팀들은 데이터와 기능들을 서비스 인터페이스로 연결시켜라.
  2.  팀들은 이 인터페이스를 통해서 연락해야 한다.
  3.  다른 어떤 커뮤니케이션 방법도 허용되지 않는다. 직접 링크를 보내거나 다른 팀의 스토리지에 직접 억세스 해서도 안 되며, 공유 메모리나 백도어 같은 것도 안 된다. 모든 커뮤니케이션은 네트워크를 통한 서비스 인터페이스로 이루어져야 한다.
  4.  어떤 기술을 쓰든 상관없다. HTTP, Cobra, Pubsub, 독자 프로토콜…그건 상관없다. 베조스는 그런데 관심 없다.
  5.  모든 서비스 인터페이스는 예외 없이 외부에서 이용 가능하게 만들어져야 한다. 그 말은 팀들은 외부 개발자들이 인터페이스를 이용할 수 있게 해야한다는 것이다. 예외는 없다.
  6.  이를 실천하지 않는 사람은 누구든 해고될 것이다.
  7.  읽어줘서 고맙다. 좋은 하루가 되길.

하하! 150명의 전 아마존 직원들(현 구글 직원)들은 7번이 내가 끼워 넣은 농담이란 걸 알 테지. 왜냐면 베조스는 자기가 삘 받은 날에 저런 좋은 말은 절대 하지 않으니까.

하지만 6번은 진짜이다. 그래서 사람들은 일을 해야한다. 베조스는 몇명의 충실한 감독견들을 보내서 일이 제대로 진행되고 있는지 확인하게 한다. 그 감독견들의 보스는 릭 달젤이라는 사람인데, 그는 웨스트 포인트 사관학교를 나온 전직 레인저에다 복서이고 월마트의 고문전담 CIO 였다. 릭은 늘 ‘확고한 인터페이스’ 라는 말을 입에 달고 살았다. 사실 릭 본인이 걸어다니고 말하는 확고한 인터페이스 그 자체였기 때문에 당연히 모든 사람들이 열심히 일해 진척을 보이고 릭이 잘 눈치채도록 애썼다.

수 년에 걸쳐 아마존은 내부적으로 서비스 중심적인 구조를 갖게됐다. 그들은 이 전환과정 중 매우 많은 것을 배웠다. 이미 이와 같은 아키텍쳐에 대한 많은 자료와 연구가 있었지만 아마존의 거대한 스케일에 적용시킨다는 것은 인디아나 존스보고 길 건널 때 좌우를 잘 보라는 소리와 마찬가지였다. 아마존 개발진들은 많은 것을 발견했다. 여기 그것들 중 일부가 있다.

  • 상부 보고는 더 어려워지게 됐는데, 보고받을 사람이 20여개의 요청을 동시에 받을 수도 있기 때문이다. 제대로된 통보 시스템을 만들지 않으면 15분 내에 응답이 오지 않는다면 그걸 다시 발견하기 까지 몇시간이 걸릴 수도 있다.
  • 모든 사람들이 잠재적인 DDos 공격자가 될 수도 있다. 일종의 병목현상이 생겼을 때 누군가 뚫어주지 않으면 일은 계속 정체될 것이고 폭주할 수 있다.
  • 모니터링과 QA도 마찬가지다. 서비스가 “정상” 이라고 표시되어 있을 때 사실은 전체 서비스 중 상태표시 기능만 정상일 수도 있다. 어떤 서비스가 제대로 작동하는지 확인하기 위해서는 일일이 다 신호를 보내야 한다. 전체 서비스와 데이터를 점검하게 되면 문제는 심각해져서 점검은 끝이 없어지게 된다.
  • 수백개의 서비스가 있고 반드시 서비스를 통해서만 다른 그룹과 커뮤니케이션 할 수 있다면 서비스에 탐색기능이 없다면 상대를 절대 찾지 못 할 것이다. 그리고 이는 서비스 등록 시스템 없이는 이루어질 수 없는데, 이 또한 또다른 서비스이다. 그래서 아마존은 통합 서비스 등록을 만들어서 자동적으로 모든 서비스와 API에 대해 알 수 있게 만들었다.
  • 다른 사람이 만든 코드를 디버깅하는 것은 훨씬 어려워졌다. 그리고 모든 서비스를 공유 디버그 샌드박스에 넣지 않는 이상은 사실상 불가능하다.

이건 극히 일부일 뿐이다. 아마존이 이 일을 진행하면서 발견하게 된 수많은 문제와 해결책이 있다. 물론 외부 접근성에서도 상당한 문제가 있었지만 흔히들 예상하는 수준은 아니었다. 서비스를 구축하는 과정에서 그들은 서로를 너무 믿어선 안 된다는 걸 알게 됐고 그래서 외부 개발자들에 대해서는 미리 대비를 했다.

이 시스템 구축은 내가 아마존을 떠나 구글로 오던 2005년 중반까지도 진행되고 있었지만 상당히 진척된 상태였다. 베조스가 명령을 내린 날부터 내가 퇴사하던 때까지, 아마존은 모든 것을 서비스 우선으로 생각하는 문화로 변모하게 되었다. 그게 이제는 절대 바깥에서 보일리 없는 내부 디자인을 포함한 모든 디자인 요소에 대한 접근법의 근간이 되었다.

지금까지도 여전히 직원들은 해고의 공포를 갖고 있다. 사실 이제 그건 공포의 해적 베조스를 위해 일하는 일상의 일부가 됐다. 하지만 직원들은 이제 그게 옳은 방법이란 걸 알았기 때문에 서비스를 하고 있다. 이 접근법의 장단점은 말할 것도 없고, 일부 단점은 상당히 심각하다. 하지만 전체적으로 이와같은 행동이 플랫폼을 활성화 했기 때문에 옳은 일이었다.

그리고 그게 베조스의 칙령이 원하던 바였다. 그는 문제가 발생하지만 않는다면 팀 사정이 어떻든 어떤 기술을 쓰든 상관하지 않았다. 하지만 베조스는 아마존 직원들이 플랫폼이 필요하단 걸 깨닫기 훨씬 전에 그걸 눈치챘던 것이다.

당신은 온라인 서점이 외부접근이 가능하고 프로그램 가능한 플랫폼일 필요가 없다고 생각하겠지?

베조스가 알아낸 첫번째 사실은 그들이 책을 팔고 배송하는 인프라가 훌륭한 컴퓨팅 플랫폼이 될 수도 있다는 걸 눈치챈 것이다. 그래서 그들은 아마존 엘라스틱 컴퓨트 클라우드와 아마존 엘라스틱 맵리듀스, 아마존 릴레이셔널 DB 서비스 등을 만들었고 이 모든 것을 aws.amazon.com 에서 쓸 수 있게 했다. 이 서비스는 몇몇 우량기업들을 유치하는데 성공했고 유사기술 중 내가 가장 선호하는 것이다.

그가 알아낸 또다른 사실은 그가 언제나 적절한 물건을 만들순 없다는 것이다. 내 생각엔 래리 테슬러가 베조스에게 자기 어머니가 아마존을 쓰는 법을 모르겠다고 말한 것이 어느정도 효과가 있었던 것 같다. 그게 정말 자기 어머니였는지 누구였는진 몰라도 그건 별 상관 없는 게, 어떤 어머니도 그 엿같은 아마존을 쓸 수 있을 리가 없기 때문이다. 사실 나 스스로도 거기서 5년 넘게 일하면서 사이트가 위압적이라고 느꼈다. 그래서 나는 그 위압감에서 도망가려고 그 수백 만개의 픽셀 중 하나를 쳐다봄으로써 전체를 보지 않으려 애썼다.

사실 베조스가 어떻게 이걸 깨달았는진 잘 모르겠다. 그가 언제나 모든이들을 위한 물건을 만들 순 없다는 걸 말이다. 하지만 과정이야 어찌됐든 그는 결론에 도달했다. 사실 이것에 대한 보편적인 용어가 있다. 그건 ‘접근성(Accessibility)’ 라고 부른다. 그리고 그건 컴퓨팅 세계에서 가장 중요한 것이다.

가장.중요한.것.

이렇게 생각할지도 모르겠다. “어? 그러니까 맹인이나 청각장애자를 위한 접근성 말야?” 당신이 혼자는 아니다. 매우 매우 많은 사람들이 그렇게 생각하니까. 이런 사람들이 제대로된 접근성에 대한 관념이 없는 사람들이다. 당신은 아직 그 수준에 도달하지 못 한 것이다. 접근성을 이해하지 못 한 게 당신의 잘못은 아니다. 당신이 이 문제에 대해 장님이고 무능하다는 게 잘못일 뿐이다. 소프트웨어-혹은 아이디어-가 이유가 어찌됐든 모든 이들이 이용하는데 실패한다면, 그건 소프트웨어나 아이디어의 잘못이다. 그건 접근성의 실패다.

인생의 다른 크고 중요한 것들처럼, 접근성 또한 어두운 단면을 갖고 있다. 접근성이 커질수록 심각해지는 문제는 바로 보안이다.

하지만 나는 접근성이 보안보다 더 중요하다고 주장하고 싶다. 왜냐하면 접근성이 제로인 물건은 상품성이 전혀 없지만 보안에 문제가 있는 제품은 여전히 성공적인 상품일 수도 있기 때문이다. PSN을 보라.

이 논점을 이해하지 못 한다면 내가 책을 써 줄 수도 있다. 아주 두꺼운 걸로, 내가 일했던 회사의 개미들과 고무망치 든 사람에 대한 재밌는 일화들로 꽉 채워서 말이다. 하지만 나는 이 폭언을 출판하지도 않을 것이고, 요약본이 아니라면 당신들도 읽지도 않을 것이다.

구글이 제대로 하지 못 하는 마지막 것은 플랫폼이다. 우리는 플랫폼을 모른다. 플랫폼을 이룩하지도 못 했다. 물론 당신들 중 몇은 플랫폼을 이해하고 있을지 모르지만 당신은 소수자일 뿐이다. 이게 지난 6년간 나에게 고통스럽도록 분명해진 사실이다. 나는 MS나 아마존, 최근엔 페이스북과의 경쟁에서 오는 압력이 우리를 깨어나게 해서 통합 서비스를 하도록 할 것이란 일말의 희망이 있었다. 더도 덜도 말고 아마존 만큼 말이다. 플랫폼을 진정한 최우선 과제로 설정하는 것 말이다.

하지만 아니다. 플랫폼은 아마 10번짼가 11번째 우선순위 쯤 될 것이다. 아니면 15번째일지도 모르지. 어쨌든 상당히 개차반 취급이다. 이를 심각하게 생각하는 팀들이 몇개 있긴 한데, 대부분은 전혀 생각도 안 하거나 그 중 아주 일부만이 아주 작은 범주 내에서만 생각한다.

모든 팀들의 서비스에 프로그래머블 한 접근을 부여한다는 건 커다란 도약이다. 대다수 직원들이 자신들이 제품을 만든다고 생각하기 때문이다. 그리고 개별 서비스는 참으로 안쓰러운 녀석이다. 돌아가서 아마존이 배운 것들 리스트를 보고 개별 서비스가 당신에게 어떤 걸 해줄수 있는지 말해보라. 내가 아는 한은 아무것도 없다. 개별 서비스는 좋은 것이지만 그건 차의 부품에 불과하다.

제품은 플랫폼 없이는 쓸모없다. 좀 더 정확하고 분명한 표현으로는 플랫폼 없는 제품은 언제든지 플랫폼화 된 제품에 대체될 수 있다.

구 글+는 우리 최고레벨의 경영진들(안녕, 래리, 세르게이, 에릭, 빅, 헬로 헬로)부터 말단 직원까지(안녕하신가) 플랫폼을 이해하는데 실패했다는 대표적인 사례이다. 우리 모두 감을 못 잡고 있다. 플랫폼의 황금법칙은 ‘개먹이를 팔기 전에 먼저 직접 먹어봐라’는 것이다. 구글+ 플랫폼은 안타까운 잔꾀에 불과하다. 런칭 할 때 API가 전혀 없었다. 그리고 가장 최근에 확인했을 때 우리는 단 1개의 API만 있었다. 팀원 중 한명이 와서는 나에게 그 API가 언제 나올 것이라고 말했을 때 나는 이렇게 물었다. “그러니까 이건 스토커 API인가?” 그녀는 시무룩해져서는 “네” 라고 했다. 난 농담으로 한 말이었다. 하지만 진짜로…우리가 제공하는 유일한 API는 타인의 스트림을 보는 것 뿐이었다. 그러니 그건 자학적인 농담이었을 것이다.

MS 는 개먹이에 대해 적어도 20년은 알고 있었다. 이제는 그들 전체 세대의 문화가 되었다. 자기는 진수성찬을 먹으면서 개발자들에겐 개먹이를 주진 마라. 그렇게 하는 건 단기적 성공을 위해 장기적 플랫폼을 버리는 짓이다. 플랫폼은 언제나 장기적인 전략이다.

구글+는 조건반사적으로 나온 결과물이다. 페이스북이 훌륭한 제품을 만들어서 성공했다는 짧은 생각과 잘못된 이해에서 나온 결과물이다. 페이스북은 전체 제품군을 다른 이들이 이용할 수 있게 함으로써 성공한 것이다. 그래서 페이스북이 다른 소셜과 다른 것이다. 어떤 사람은 Mafia Wars 게임 하는데만 페이스북을 쓴다. 누구는 팜빌만 한다. 페이스북엔 수백 수천개의 서로다른 하이퀄리티 앱들이 있어서, 페이스북은 누구든지 즐길 수 있다.

우리 구글+ 팀은 이를 지켜본 뒤 이렇게 말했다. “아, 우리도 게임이 좀 있어야겠군. 게임 만들어줄 사람들이랑 계약하러 가자고.” 이제 이런 발상이 뭐가 잘못된 건지 눈치 채가는가? 문제는 우리가 사람들이 뭘 원하고 하려고 하는지 예측하려 한다는 것이다.

그건 할 수 없는 일이다. 정말, 먹혀드는 경우가 없는 방법이다. 컴퓨터 역사상 사람들의 기대에 응할 수 있었던 사람은 거의 없었다. 스티브 잡스가 그 중 하나였다. 우리에겐 스티브 잡스가 없다. 유감이지만 어쩔 수 없는 사실이다.

래리 테슬러는 베조스에게 당신은 스티브 잡스가 아니라고 말했을지도 모르지만, 베조스는 모두에게 적합한 제품을 만들려고 자신이 스티브 잡스가 될 필요가 없다는 걸 알았다. 인터페이스와 업무흐름이 그걸 해결해주기 때문이다. 그저 서드파티 개발자들이 서비스를 이용할 수 있게만 하면 그 다음은 자동으로 되는 일이었다.

내 가 말하는 이 모든 게 너무 명백한 사실이란 걸 사과하고 싶다. 너무나 명백해서 말이다. 우리가 그렇게 못 하고 있다는 것만 빼면 말이다. 우리는 플랫폼이 없다. 우리는 접근성이 없다. 이 둘은 사실상 같은 것이다. 왜냐하면 플랫폼이 접근성을 주기 때문이다. 플랫폼이 곧 접근성이다.

그래, MS도 플랫폼이 있다. 그리고 당신들도 나처럼 그게 얼마나 놀라운 사실인지 알텐데, 왜냐면 그들은 그렇게 뛰어나지 않은 이들이기 때문이다. 하지만 MS는 비즈니스 영역에 플랫폼을 제공함으로써 회사를 시작해서 거의 우연의 일치로 폭발적 성장을 거두었기 때문에 플랫폼을 이해하고 있다. 그래서 MS는 30년 이상 이 영역에서 학습했다. MSDN.com으로 가서 잠시만 뒤져보면 그런 건 다른데서 본 적도 없기 때문에 놀랄 것이다. MSDN이 무지막지하게 거대하기 때문이다. MS는 수백만가지 API가 있다. 그들은 거대한 플랫폼을 갖고 있다. 사실 너무 거대해서 그들도 제대로 통제 못 할 정도지만, 어쨌든 하고 있다는 게 중요하다.

아마존도 플랫폼이 있다. 아마존 AWS는 훌륭하다. 가서 한번 보라. 클릭해보라. 수치스러운 일이다. 우리는 그런 게 전혀 없다.

애 플도 물론 플랫폼이 있다. 그들은 폐쇄적인 선택을 했는데, 특히 모바일에서 그러하다. 하지만 애플은 접근성을 이해하고 있고, 서드파티 개발자들의 힘을 알고 있으며, 그들이 먼저 개먹이를 먹어봤다. 그리고 이거 아는가? 애플은 꽤 좋은 개먹이를 만든다. 애플의 API는 MS의 것보다 훨씬 깔끔한데다 아주 오래전부터 있었다.

페이스북도 플랫폼이 있다. 이게 사실 나를 정말 염려시키는 것이다. 그게 내가 내 귀차니즘을 극복하고 이 장문을 쓰게 만드는 이유이다. 나는 블로깅을 싫어한다. 나는…구플질을 싫어한다. 뭐 어쨌든 쓰는 게 싫다. 아무리 구글+에 대해 폭언을 하고싶다고 해도 어쨌든 우리는 구글이 성공하길 바라기 때문에 안고 나가야 한다. 나도 구글이 잘 됐음 좋겠다! 사실 페이스북도 나를 오라고 하는데, 이직하는 건 매우 쉬운 일이다. 하지만 구글이 내 집이고, 그래서 나는 불편할 수도 있고 가정파탄에 이를 수도 있는 이 주장을 하고 있는 것이다.

MS 나 아마존, 페이스북이 제공하는 플랫폼을 맛본 뒤 developers.google.com으로 가봐야겠다고 생각했다.(나는 전엔 가본 적 없다. 너무 우울해지기 싫어서였다.) 상당히 다르지 않나? 그 페이지는 마치 5학년짜리 사촌동생이 막강한 플랫폼 회사에 대해 묘사해보라는 숙제로 내놓은 물건같기 때문이다.

오해하진 말기 바란다. 나는 개발지원팀이 이정도 접근성이라도 만들려고 고군분투 했다는 걸 알고있다. 내가 알기로 그들은 정말 죽을똥 살똥 했는데, 그들은 플랫폼을 하고싶어 하지만 최고로 플랫폼 무감각적인 환경 내에서 뭔가 만들어 내느라 고생하고 있기 때문이다. 최악의 경우 적대적인 대우를 받기도 한다.

나 는 솔직하게 developers.google.com이 외부인들에게 어떻게 보이는지 묘사하는 것이다. 유치하게 생겼다. Maps API는 대체 어디있지? 일부는 랩 프로젝트에 쳐박혀있다. 그리고 내가 클릭해본 모든 API들은…정말 하찮았다. 개먹이 수준임에 틀림없다. 심지어 좋은 개먹이도 아니다. 우리가 쓰는 내부 API에 비하면 허접쓰레기나 다름없다.

그리고 구글+에 대해서도 오해하지 말기 바란다. 구글+가 유일한 문제는 아니다. 이건 문화적인 것이다. 우리가 내부적으로 벌이고 있는 것은 소수자인 플랫폼 주의자들이 막강하고 예산 많은 제품주의자들과 벌이고 있는 패배하고 있는 전쟁이다.

어느 팀에서든 일단 내부 시스템을 성공적으로 만들고 나면 그걸 외부 프로그래머블한 플랫폼으로 만들려 하는 언더독들이 있다. 구글맵과 닥스가 생각나고, G메일도 그렇게 오픈되었다. 하지만 플랫폼은 우리의 문화가 아니기 때문에 그들이 지지를 받기란 힘든 일이다. 마에스트로의 예산은 MS 오피스 프로그래밍 플랫폼이 제공받는 것에 비하면 하찮은 수준이다. 복실복실한 토끼와 티라노사우루스의 차이 수준이다. 닥스 팀은 스크립트 기능을 가지기 전에는 절대 오피스에 대항할 수 없으리라는 걸 알고 있지만 그에 필요한 자원이 없다. 적어도 나는 그렇게 생각하는데, 앱스 스크립트는 현재 스프레드시트에서만 작동하고, 심지어 키보드 단축키조차 없기 때문이다. 닥스 팀은 내가 보기엔 별로 사랑받지 못 하는 것 같다.

아이러니하게도 웨이브는 훌륭한 플랫폼이었다. 지금은 고인이 됐지만 말이다. 하지만 플랫폼을 만드는 것이 즉각적인 성공으로 이어지진 않는다. 플랫폼은 킬러앱이 필요하다. 페이스북은 기본서비스로 담벼락과 친구 기능 등을 갖고 있다. 그게 페이스북 플랫폼의 킬러앱이다. 그리고 만약 페이스북이란 플랫폼 없이 페이스북 앱들이 성공할 수 있었을 것이라 생각하는 건 엄청난 오산이다.

하지만 우리가 모두를 위한 완벽한 제품을 만들 줄 안다고 생각하는 순간, 우리는 바보가 된 것이다. 그걸 오만이나 나태함이라 부를 수도 있겠다. 사실 그건 별로 중요하지 않다. 그냥 멍청한 것이기 때문이다. 모두에게 완벽한 제품 따위는 존재하지 않는다.

우리는 디폴트 폰트 크기를 설정할 수 없는 브라우저를 내놨다.(지금은 옛날 얘기다) 접근성에 대해 얘기해보자. 나는 나이가 들수록 점점 장님이 되어가고 있다. 이건 과장이고, 사실 나는 원래 근시였는데, 40살이 넘어가자 원시가 되어갔다. 그래서 폰트 크기 문제는 내가 장님이 되느냐 마느냐 하는 문제이다. 이 문제가 제품의 선택을 결정지을 수도 있는 것이다. 하지만 크롬팀은 이 문제에 대해 놀라울 정도로 오만했다. 그들은 설정이 전혀 필요없는 제품을 만들려 했고, 뻔뻔하게 굴었다. 당신이 장님인지 귀머거린진 알 바 아니란 것이다. 남은 평생동안 페이지 들어갈 때마다 Ctrl+나 누르시게.

크롬팀만 그런 게 아니다. 모두가 그렇다. 문제는 우리가 계속 제품 회사이고 싶어한다는 것이다. 우리는 폭넓게 사랑받는 성공적인 제품-검색엔진-을 만들었다. 그리고 그 대성공이 우리를 정의하고 말았다.

아 마존도 제품회사였다. 그래서 뭔가 막강한 힘이 베조스가 플랫폼의 필요성을 이해하게 만들어야했다. 그 외력은 그들의 축소되는 마진이었다. 그는 마진축소를 걱정하고 있었고 해결책을 찾아야했다. 하지만 그가 가진 것이라곤 일군의 엔지니어와 그 많은 컴퓨터들 뿐…컴퓨터? 이걸로 수익을 낼 수 있다면…그가 어떻게 AWS에 도달하게 됐는지 감이 올 것이다.

MS는 플랫폼으로 출발했다. 그래서 그들은 아주 많은 실전경험을 갖고 있다.

페 이스북은 하지만, 페이스북은 나를 염려케한다. 내가 페이스북 전문가는 아니지만 나는 그들이 처음에 제품으로 출발해서 성공했다고 확신한다.(담벼락 기능 등으로) 그런데 그들이 어떻게 플랫폼으로 성공적으로 전환했는지는 잘 모르겠다. Mafia Wars가 나오기보단 전일테니 아마 꽤 오래전일 것이다.

어쩌면 페이스북은 우릴 보고 스스로 물었는지도 모른다. “어떻게 구글을 물리치지? 그들에게 없는 게 뭘까?”

우 리가 직면한 문제는 상당히 심각하다. 플랫폼을 따라가려면 극적인 문화격변을 동반하기 때문이다. 우리는 내부서비스 플랫폼을 만들려는 게 아니다. 외부만을 위한 것도 아니고. “연결짓지 말라”는 풍토가 사내에 만연하고 있다. PM도 모른다, 엔지니어도 모른다, 제품팀도 모른다, 아무도 모른다. 개개인은 알지도 모르지만, 당신도 그럴지도 모르지만! 우리 모두가 함께 힘을 합쳐 대처하지 않으면 무의미한 일이다. 우린 더이상 제품을 출시하고 나중에 훌륭한 확장 플랫폼으로 변모시킬 수 있다고 생각해선 안 된다. 이미 그렇게 해왔고 그건 소용이 없었다.

플랫폼의 황금법칙, “개먹이를 팔기 전에 먼저 직접 먹어봐라”는 다르게 말하면 “플랫폼으로 시작해서 모든 것에 그걸 사용해라” 로 말할 수 있다. 나중에 뜯어고칠 순 없는 일이다. 절대 쉽게 고칠 수는 없다. MS 오피스 플랫폼에서 일하는 아무에게나 물어봐라. 아니면 아마존 플랫폼에서 일하는 누구든지. 뒤로 미루면 나중에 바로잡는데 10배의 시간이 든다. 이건 어떻게 꼼수를 부릴 수가 없다. 어떤 이유에서든 특별접근권한을 위한 백도어를 만들어선 안된다. 문제를 직접 대면해서 해결해야 한다.

우리가 너무 늦었다고 말하는 게 아니다. 하지만 우리가 더 지체하면 지체할 수록 점점 더 늦어질 것이다.

솔 직히 이걸 어떻게 요점정리해야 할지 모르겠다. 내가 오늘 말하고 싶은 건 거의 다 말했다. 이 포스트를 만드는데 6년이 걸렸다. 글이 세련되지 못 하다면 미안하다. 혹은 일부 제품이나 팀, 사람들을 오해했다면 미안하다. 아니면 우리가 정말 플랫폼을 제대로 하고 있는데도 잘 안 된 거라면 미안하다.

하지만 일단 우리는 플랫폼을 제대로 시작해야 한다.

Stevey’s Google Platforms Rant(Hackers News)

 스 티베이 예이그(Stevey Yegge, Steve)는 아마존에서 수년간 일했고 지금은 구글의 소프트웨어 엔지니어로 일하고 있다. 그는 지난달 유명했던 “구글+가 걱정된다” 는 글의 발원지였다. 하지만 대개는 전문보다는 부분적인 인용기사만 있었을 따름이다.(가장 많이들 본 것은 isao님이 번역한 일본발 기사일 것이다.) 원문은 스티브 예이그의 구글+ 페이지에 올라왔는데, 당연한 얘기지만 이 글은 원래 사내 비공개용 글이었는데 실수로 공개포스팅 되고 말았다. 구글에서 일하는 사람도 서클 기능이 혼란스러웠던 듯 하다. 어쨌든 예이그는 이 문제로 이리저리 시달리긴 했지만 해고되거나 하진 않았다. Web 2.0 서밋에서 세르게이 브린은 이 글에 대해 질문받자 “1000페이지 쯤 읽다가 지쳐서 그만뒀다.” 고 농담조로 답했다.