에릭 슈미트(Eric Schmidt)의 "How Google Works"에서.


사실 구글이 어떻게 일하는 것 자체에 대한 관심보다는 누군가가 세운 원칙이나 규칙을 보면서 새롭게 느끼는 것이 많기 때문에 명언이나 규칙 등을 살펴보게 된다. 다음 일하는 방식은 회사 생활을 하면서 여러번 반복해서 생각해야 할 것이라 정리해 본다. 



1.여러분보다 유능하고 지식이 많은 사람은 채용하라(Do hire people who are smarter and more knowledgeable than you are).


2.여러분에게 가르쳐줄 것이 없거나 도전하지 않을 사람은 채용하지 마라(
Don’t hire people you can’t learn from or be challenged by).

3.제품과 문화의 가치를 높일 사람은 채용하라 ( Do hire people who will add value to the product and our culture).


4. 이 두 가지 가치에 기여하지 못할 사람은 채용하지 마라(Don’t hire people who won’t contribute well to both).

5.일을 해낼 사람을 채용하라(Do hire people who will get things done).



6.문제점만 생각하는 사람은 채용하지 마라(Don’t hire people who just think about problems).

7.집중적으로 자신에게 동기를 부여하는 사람, 열정을 가진 사람을 채용하라(Do hire people who are enthusiastic, self-motivated, and passionate).



8.단순히 일자리를 원하는 사람은 채용하지 마라(
Don’t hire people who just want a job).

9.동료들에게 영감을 주며 일할 사람을 채용하라(Do hire people who inspire and work well with others).


10.혼자 일하기 좋아하는 사람은 채용하지 마라(Don’t hire people who prefer to work alone).

11.여러분의 팀이나 회사와 더불어 성장할 사람을 채용하라(
Do hire people who will grow with your team and with the company).



12.기술이나 관심사가 편협한 사람은 채용하지 마라(
Don’t hire people with narrow skill sets or interests).


13.성격이 원만하면서도 독특한 관심과 재능을 가진 사람을 채용하라(Do hire people who are well rounded, with unique interests and talents).



14.오로지 일하기 위해 사는 사람은 채용하지 마라(Don’t hire people who only live to work).

15.윤리적이고 개방적으로 소통하는 사람을 채용하라 ( Do hire people who are ethical and who communicate openly ) .



16.정치적이거나 속임수를 쓰는 사람은 채용하지 마라 (Don’t hire people who are political and manipulative).

17.뛰어난 지원자를 발견할 때만 채용하라 ( Do hire only when you’ve found a great candidate ).



18.기준 이하의 것에 만족하지 마라 ( Don’t settle for anything less).



Posted by 박재현
,


SaaS 와  Cloud  Computing



9월 중순 미국 샌프란시스코에서 개최된 오라클 오픈월드에서 오라 CEO인 래리 엘리슨은  아마존의 클라우드 컴퓨팅에 대한 정의에는 동의하나 Salesforce 에는 동의하지 못한다고  말했다.  CRM 분야에서 Salesforce가  SaaS 모델로  오라클의 기업용 CRM 시장에서 치열하게 경쟁하고 있는 것을 보면   그의  발언이 다소 정치고 영업적인 발언이라는 생각이 들 긴 하지만 이 기회에 SaaS와 Cloud 컴퓨팅에  대한  오해를 정리할 필요는 분명 있어 보인다.


필자는 과거 2000년 초 닷컴 버블 시절 그룹웨어 서비스를 ASP(Application Service Provider) 모델로 개발하여 서비스를 한 적이 있었다. 당시는 온라인으로 모든  것이 가능하다고 착각하던 시기였기 때문에 기존에 패키지나 인트라넷  형태로  구축. 제공되던  그룹웨어를  온라인으로  제공하고  월정액으로  받는 다는 모델은 많은 투자가와 벤터캐피털 등에게  관심을 끌었다.  그  결과 , 많은  투자도  유치했으며  무사히 서비스를  개발할 수 있었다.

그런데  당시 중요한 문제가 하나 숨어 있었다. 바로  다름 아니라  여러  기업  사용자들이  하나의  그룹웨어 서버를 공유하지 못했기 때문에 사용자가 증가할 수록 장비 투자를 계속해야 만 했었다.  특히, 당시 서버 장비는 고가의 선마이크로시스템즈 장비였고 소프트웨어 역시 오라클 등 고가의  소프트웨어를  사용할 수 밖에 없는 환경이었기 때문에 실제 투자 받은 자금 중 많은 부분을 장비 구매에 사용할 수 밖에 없었다.
또한 사용자의 개별적인 요구사항에 맞춰 서비스를 유연하게 변경하는 것도 불가능하였다. 이처럼 결국 사용자가 증가해도 손익분기점을 맞출 수 있는 인프라와 구조를 갖출 수 없었다.

결국 ASP 모델은  서비스의 구조적인 유연성과 인프라의 유연성 부족에서 실패할 수 밖에 없었다.

사용자 삽입 이미지

청계산 매봉에서 바라 본 구름

이후 필자는 2005년 다시 한번 유사한 모델의 서비스를 개발할 기회가 있었다.
씽크프리 오피스였다. 씽크프리 오피스는 기존에 데스크탑 패키지로 판매되던 워드 프로세스, 스프레드시트, 프리젠테이션 오피스를 온라인 웹 서비스를 통해  서비스로 판매하는 것이었다. 이 때 , 사람들은 이러한 서비스  모델을 ASP와 달리  SaaS(Software As A Service) 라고  부르기  시작했고  주요한 특징은 웹 브라우져만 있어면 언제 어디서나 인터넷을 통해 서비스를 이용하며 사용한 만큼 비용을 지불(Pay as you go)하는 것이다.

또한  얼마 지나지  않아  아마존 EC2 처럼 데이타 센타내에 하드웨어와 소프트웨어, 네트웍  등  시스템 자원을 인터넷을 통해 언제 어디서나 사용하고 사용한 만큼 비용을 지불하는 클라우드 컴퓨팅이 나타났다.  혹자는 이를 IaaS(Infrastructure As A Service)라고도 부른다.

그렇다면 이 두 모델 사이의 관계를 어떻게 될까? 먼저 결론부터 말하면 두 모델은 상호 보완적인 개념이며 다른 개념이다.  다시 말해, SaaS 제공자는 Cloud Computing 제공자의 Cloud 서비스의  사용자로서  이를 이용하여 SaaS 서비스를 제공한다. 즉, SaaS 개발자는 Cloud 서비스의 주요 사용자인 셈이다.  실제, 필자의 경우에도 씽크프리 오피스를 개발하던 시절에 아마존 EC2에서 제공하는 EC2와 S3 스토리지 클라우드 서비스를 이용하여 서비스를 하였으며 , 현재  넷플릭스 , 워싱턴포스트 , Zynga의 경우에도 현재  아마존 EC2를 사용하여 서비스를 제공하고 있다.

물론 이 두 모델 사이에는 인터넷을 통해 언제 어디서나 서비스를 제공받고 사용한 만큼 비용을 지불한다는 기존의 소프트웨어와 하드웨어를 판매하던 모델과는 완전히 다른 비지니스 개념을 사용한다는 공통점이 있다.

2008/12/24 - [Conference] - 클라우드 컴퓨팅 웍셥 발표 후기
2008/12/25 - [SaaS/Cloud] - SaaS(Cloud) Directory
2009/03/31 - [SaaS/Cloud] - Adsense for image
2009/03/31 - [SaaS/Cloud] - Amazon S3 현황
2009/04/13 - [SaaS/Cloud] - Context Cloud Computing
2009/04/30 - [SaaS/Cloud] - 클라우드 기반의 서비스 개발 환경 - Aptana
2009/05/04 - [SaaS/Cloud] - Above the Cloud
2009/11/10 - [SaaS/Cloud] - 대형SI업체들의 클라우드 사업에 대한 단상


이렇듯 SaaS/Cloud Computing 모델을 사용하는 것은 과거 ASP 모델이  안고 있던  서비스의  구조적인 유연성과 시스템 인프라의 유연성 문제를 일시에 해결해 준다. 구조적으로  SaaS 서비스는  ASP와  달리 하나의 서버에서 복 수 사용자를 최대한 처리할 수 있는 멀티터넌트 구조(Multi-tenant Architecture) 로 설계되고 서비스 된다. 이 때, 만약 하나의 서버에서  처리할 수 있는 최대량에 도달하게 되면 SaaS 서버는 증설돼야 한다. 이 때, 클라우드는 서버를 자동으로 증설하여 사용자가 증가하더라도 유연하게 대처할 수 있도록 해준다.  이러한 퍼블릭 클라우드 컴퓨팅을 제공하는 업체만 해도 아마존의 EC2를 필두로  Rackspace Cloud , GoGrid , FlexiScale , Microsoft Azure , Eucalyptus , Skytap 같은 전문 업체를  비롯해  MS의  Azure, 구글의 앱엔진  등 많은  퍼블릭 클라우드가  존재하여  이들 클라우드 기반하에 많은 SaaS 서비스가  제공되고 있다.

이렇듯 다양한 클라우드를 제대로 사용하여 서비스를 개발하고 운영하는 데에는 많은 지혜가 필요하다.

먼저  SaaS 개발시 특정 클라우드 인프라에 락인(Lock-in)되지 않도록 개발해야 한다.  다시 말해,  해당 SaaS를 다른 클라우드나 자체 프라이빗 클라우드(Private Cloud)로  이관하더라도  문제가 없도록 개발해야 한다.

- Cloud Computing이 유용한 경우는 초기 서비스를 런칭할 경우이다.

일반적으로 해당 서비스가 성공할지 실패할지 모르는 상황에서 무조건 장비에 투자하는 것은 바람직한 의사결정은 아니다. 그러나 해당 서비스가 성공하게 되면 여러가지 이유때문에 퍼블릭 클라우드를 이용하지 못할 수 있다. 가령, 고객의 요청에 따라 클라우드 컴퓨팅 업체에서 제공하는 SLA(System Level Agreement)보다 높은 SLA를 제공해야 할 경우 자체 구축한 프라이빗 클라우즈로 구축하고 옮겨야 한다. 이러한 상황에서 해당 서비스가 특정 클라우드에 의존적이라면 큰 낭패를 볼 수 있다.

- 신규 서비스 런칭시 적극적으로  퍼블릭 클라우드를 활용하는 것이 좋다.

신규 서비스는 실제 어느 정도의 사용자가 서비스에 가입하고 이용할 지 알 수가 없다. 아무리 무릎팍 도사라 할 지 라도 모른다. 따라서 이런 경우 클라우드를  가입하면 사용자가  급격하게 증가하더라고  이에 대해 적극적으로 대처할 수 있다. 실제 Zynga 경우 Farmville을 처음  2달 동안 일일 액티브 사용자가  20만 명 일 정도로  성공적으로 오픈하였다. 그 후 26주 동안 주당  1백만  사용자씩  증가하여  현재  월간  7천만  액티브  사용자가  사용하는 서비스로 성장하였다. 이러한  가파른  사용자  증가에도 불구하고 큰 문제없이 대처할 수 있었던 이유가 바로 EC2  클라우드를  사용하여  동적으로  서버의  용량을  증가시켜  대처했기 때문이다. 참고로 Zynga는현재 약 12,000개의 아마존  EC2 인스턴스를 사용중이라고 알려져 있다.

오라클, IBM, HP가 리드하고 있는 프라이빗 클라우드와  아마존 , MS,  구글  그리고 전문 업체 들이
리드하고 있는 퍼블릭 클라우드의 경쟁과 이를 통한 클라우드 시장의 확산은 필연적으로 SaaS 서비스의 확산을 가져올 것이다. 특히, 사용자 입장에서  이러한 퍼블릭과 프라이빗 클라우드의 전략적인 사용은 큰 경제적인 이점을 분명히 안겨줄 것이다.

[본 글은 ZDNet 컬럼에 기고한 글 입니다. ]

Posted by 박재현
,

사용자 삽입 이미지
최근에는 여러 이슈들이 있는 것 같습니다. 오라클의 선 인수, 한컴의 공개 매각 진행 , IBM의 클라우드 사업에 대한 본격적 참여, 안드로이드 1.5 등등... 특히, 제가 과거 한컴 씽크프리의 CTO를 했던 전력때문인지 여러 곳에서 한컴 인수에 대한 의견을 많이들 묻고 합니다. 물론 대답하기가 당연히 곤란하기에 그냥 웃고 말았습니다. ^-^

하여간 어차피 중요한 것은 대세가 아닐 까 싶습니다. 이미 우리가 살고 있는 이 세상은 웹이란 거대한 흐름에 의해서 많은 변화를 가져오고 있기 때문입니다. 이러한 거래한 흐름을 한 단어로 표현한다면 연결(Link)라고 표현할 수 있습니다. 웹의 링크에 대한 과학적이자 철학적 분석은 바라바시의 링크 라는 책을 참조하시면 좋을 것 같습니다. 바라바시는 웹 상에서 노드와 노트간의 연결에 대해 많은 이해를 도와주고 있습니다.  결국 웹은 모든 것을 빨아드리며 연결시켜 나가고 있습니다. 아마 이것을 더욱 가속화하는 것이 바로 스마트폰 같은 모바일 디바이스(이하 디바이스)일 것 입니다.

이렇듯 디바이스와 웹간의 상호연결성은 계속해서 확장될 것이며 디바이스는 보다 많은 서비스를 웹과의 상호작용을 통해 제공할 것이며 궁극적으로는 디바이스 자신 또한 웹 컨텐트를 생성해 내는 노드가 될 것 입니다. 실제 이미 안드로이드 OS는 웹 서버처럼 서비스를 감지하고 제공할 수 있는 모델을 제공하고 있으며 이러한 기능들을 통해 디바이스가 서로 상호작용하게 될 것입니다.

이러한 환경에서는 웹상의 노드에 위치하고 있는 서비스간의 데이타 동기화가 중요한 부분으로 대두됩니다. 가령, 중앙의 웹에 자신의 데이타와 프로그램을 모두 올려놓고 디바이스를 통해 필요한 데이타와 프로그램을 부분적으로 이용하고 동기화시키는 것이 필요합니다. 마찬가지로 집에 있는 PC 에서도 동일한 데이타와 프로그램이 필요해집니다.

다소 미흡하지만 이러한 동기화에 대한 기능 명세에 대한 표준화가 있습니다. 바로 OMA DS 표준 또는 Sync ML 입니다. 이 표준은 디바이스간 데이타 동기화에 대한 표준으로 Sync ML 과 6가지 동기화 모델을 제시하고 있습니다. - Fast Sync , Slow Sync , One way Sync from Server , One way Sync from Client , ㅊ , Refresh Sync from Server.

간략히 보면 Fast Sync가 client가 server에게 변경된 데이타만을 동기화하도록 요청하는 데 반해 Slow Sync는 모든 데이타를 동기화한다는 면에서 다릅니다. 또한  One way Sync from Server는 서버가 클라이언트에게 변경된 데이타에 대한 동기화를 요청합니다. 반대로 One way Sync from Client는 클라이언트가 서버에게 동기화를 요청합니다. 마지막으로 Referesh Sync from Server는 서버가 클라이언트에게 모든 데이타의 동기화를 요청하고 반대로 One way Sync from Client는 클라이언트가 모든 데이타의 동기화를 서버에 요청합니다.

실제 OMA DS 표준은 디바이스와 다른 디바이스간의 2 Way 방식의 동기화만을 명시하고 있다는 점에서 제약을 가지고 있습니다. 다시 말해, 실제 수 십대에서 수 백대의 디바이스상에서 다양한 서비스들이 데이타를 동기화하기 어렵습니다. 이를 위해서는 약간의 확장이 필요합니다. ^-^

이러한 동기화 기능을 이용하기 위해서는 기본적으로 Device에 OMA DS 모듈이 탑재되거나 OMA DS 서버에서 제공하는 OpenAPI를 디바이스에서 이용해야 합니다. 실제 디바이스 분야에서는 이미 OMA DS나 독자 싱크 방법을 사용하여 오래전 부터 디바이스상의 데이타를 동기화하는 기능들을 지원하고 있습니다. 가령,  심비안 , 블랙베리 , 안드로이드(현재 개발중) 등은 OMA DS를 사용하고 있으며 MS Windows CE의 ActiveSync를 사용하여 디바이스상의 데이타를 동기화하고 있습니다.

디바이스간의 2 Way 기능을 인트라넷까지 확장하여 기업의 리거시 데이타를 쉽게 모바일 웹으로 개발하기 위한 프레임웍으로 최근 오라클에 팔린 선은  GlassFish Mobile Framework 1.0을 릴리이즈 하였습니다. 이 플랫폼에는 서버측의 GlassFish와 JavaME상의 디바이스 응용 프로그램을 SyncML을 통해 동기화시켜 주는 서비스를 제공해 주고 있습니다. 특히, 재미난 기능으로는 Device상에서 Rest기반의 API를 호출할 수 있게 해주는 JerseyME 라이브러리를 내장하고 있습니다. 디바이스상의 개발자들은 JersyME를 사용하여 Rest API를 직접 호출하여 사용할 수 있습니다. 또한 JerseyME는 Device상에서 Cache 기능을 제공하기 때문에 서버와 연결이 되지 않은 오프라인 상태에서도  디비이스 응용 프로그램을 구동시킬 수 있는 기능을 제공하고 있습니다.

모바일 디바이스의 성장과 더불어 웹 노드간의 동기화는 보다 중요한 요소로 자리잡을 것 입니다. 조만간 국내에서도 멋진 플랫폼이 나올 예정이니 한번 기대해보세요. ^-^

Posted by 박재현
,

SaaS(Cloud) Directory

SaaS-Cloud 2008. 12. 25. 12:59

SaaS(Cloud) Directory


Last modified : 2008-12-25
Modified by   : JaehyunPark.kr@gmail.com
Persistent URL : http://docs.google.com/Doc?id=dmzpwb5_411r6g7b2cg


[ New Services ]

- RXP
RPX는 AOL, Facebook, Google, MySpace, Yahoo 등의  OpenID와 인증 시스템을 통합해 준다. 사용자는 자신의 사이트를 RPX에 가입한 후 원하는 RPX 차림표를 보고 메뉴를 선택한 후(월 9.99$ 의 유료 서비스가 존재함) 제공되는 REST 방식의 API로 사이트의 인증 로직을 개발하면 된다.
 

1. Application as a Service

1.1 웹 오피스(Web Office)
  •     Google Apps- 웹 오피스, 일정 관리 ,구글 톡 등의 웹 오피스 서비스
  •     Zoho- 웹 오피스와 웹 노트 등 각종 웹 오피스 서비스
  •     ThinkFree- 데스크탑용 문서 작성, 스프레드 시트, 프리젠테이션 오피스 툴과 웹 문서 관리
  •     WebEx- Web Conferencing 과 Collaboration 서비스( by Cisco )
  •     Zimbra - Email 서비스와 솔루션 ( by Google )
  •     BaseCamp - 주제나 토픽별 협업 서비스
  •     Editgrid - 웹 스프레드 시트

1.2 웹 운영체제(Web OS)
  •     eyeOS- 웹  운영체제

1.3 보안(Security) 및 인증
  •     Ping Identity-SSO(Single-Sign On Service)
  •     Qualys- IT 보안 및 위험 관리 서비스, 회사의 기존 인프라 관리에 적용하면 효과적이다.
  •     RPX - 메타 SSO 인증 서비스로 OpenID 와  OAuth 서비스의 메타 서비스를 제공해준다.

1.4 데이타(Data)
  •     StrikeIron- 사용자의 Data를 전송하는 서비스로 멀티소스의 데이타를 Cleansing하여 제공한다.
  •     Amazon의 CloudFront   

1.5 헬프데스크(Helpdesk)

1.6 고객관리(CRM)

1.7 빌링(Billing)
1.8 지불(Payment)

1.9 광고(Advertising)

1.10 이메일 보안/관리(E-mail)
  •     Postini ( 구글이 인수함 ) - 이메일 보안 및 아카이빙
  •     MessageLabs ( 시멘틱이 인수함 )- 이메일 보안 및 아카이빙
  •     MineCast

1.11 인적 자원 관리(Human Resource)

2. Platform as a Service

2.1 Public Cloud

2.2 Private Cloud

2.3 Open Cloud Platforms

2.4 Cloud Platform Tools

2.4.1 Fabric Mgmt

2.4.2 데이타 그리드

2.4.3 Virtual Appliances

2.5.4 스토리지/Content Delivery

2.5 서비스와 시스템 통합(Service & System Integration)

2.6 애플리케이션 개발
        Zembly는 기존의 서비스 및 위젯등을 사용하여 쇼셜 애플리케이션을 개발할 수 있다. 사용자는  
        Zembly에서 제공하는 웹 브라우져 기반의  IDE를 통해 개발을 하고 , 개발된 애플리케이션을  
        Facebook , Meebo , OpenSocial , iPhone , Google Gadgets 에 직접 퍼블리싱 할 수 있다.

'SaaS-Cloud' 카테고리의 다른 글

클라우드 기반의 서비스 개발 환경 - Aptana on the DaaS  (2) 2009.05.01
Context Cloud Computing  (1) 2009.04.13
Adsense for image  (1) 2009.04.09
Amazon S3 현황  (2) 2009.03.31
OpenAPI에서 테스트 환경은 가장 중요한 환경이다.  (3) 2009.01.26
OpenID와 SaaS 서비스  (0) 2008.12.25
SaaS 기술 동향 - 2008년 10월  (0) 2008.10.28
구글 G메일 다운과 SaaS  (0) 2008.10.18
SaaS Taxanomy  (0) 2008.10.08
XaaS에 대한 단상  (2) 2008.10.01

Posted by 박재현
,

아마 최근 들어 모바일 분야에서 가장 많이 언급되는 키워드가 바로 오픈 마켓일 것입니다. 애플의 앱스토아를 필두로 구글의 오픈 마켓, MS의 스카이마켓(실제 저는 본 적은 없습니다. 추측가는 점이 있긴 합니다만..)에 이르기까지 많은 모바일용 오픈마켓이 화두가 되고 있습니다.

안드로이를 사용하자 마자 당연히 첫번째로 눈이 가는 기능이 바로 구글 마켓이었습니다. 왼쪽 화면에 Market 이라는 아이콘이 보이시죠. 바로 그 넘이 구글 마켓으로 연결해 주는 문입니다. 아이콘을 클릭하면 오른편과 같이 안드로이드 마켓의 카테고리가 나타납니다.

사용자 삽입 이미지
사용자 삽입 이미지


























해당 카테고리중에서 [Games->Arcade & Action]을 선택해 보도록 하겠습니다.

사용자 삽입 이미지
사용자 삽입 이미지

























Alien Blood Bath 게임을 하나 선택해 보겠습니다. 무료이기 때문에 부담은 없습니다. 왼편의 화면처럼 설치를 알리는 화면이 나타납니다. 하단의 [Install]을 선택하면 게임이 설치되고 오른편 화면처럼 설치가 되었다고 [Installed] 되었다는 표시가 나타납니다.

사용자 삽입 이미지
사용자 삽입 이미지

























설치후 왼편의 화면처럼 프로그램 목록을 보면 해당 게임의 아이콘을 확인해 볼 수 있다. 이제 신나게 즐기기만 하면 됩니다^-^. 만일 해당 프로그램을 삭제하려면 다시 구글 마켓을 통해 카테고리에서 [Uninstall]이라는 메뉴를 선택하면 삭제가 됩니다.

사용자 삽입 이미지
사용자 삽입 이미지

























구글 마켓에서 제공하는 어플리케이션들은 개발자 자신이 개발한 프로그램을 등록하는 과정을 통해야 합니다. 기본적으로 무료는 아니며 25$의 등록비를 구글 체크아웃 기능을 사용하여 신용카드로 지불해야 합니다.

사용자 삽입 이미지

최근 들어, 호주의 Kogan이라는 듣도보도 못한 회사가 안드로이드폰인 Agora를 발표했다는 기사가 나왔습니다. 가격도 착해서 최고 사양인 Agora Pro가 $256라고 하니 구글 마켓의 접접은 더욱 늘어날 것으로 보인다. 누가 지금부터 모바일 오픈마켓에 대한 마켓팅을 좀 고민해서 서비스하면 좋은 사업 아이템이 되지 않을까 싶다.



Posted by 박재현
,