teratail Report vol.12

2018/07/04

「SIだからこそ最新の技術を追える」GCPエキスパートを束ねるCTOが明かすクラウドの軌跡とSIの魅力とは。

「SIだからこそ最新の技術を追える」GCPエキスパートを束ねるCTOが明かすクラウドの軌跡とSIの魅力とは。

こんにちは。teratail Report編集部です。

“teratail Report”は、エンジニア一人一人の中に隠れている「貴重な情報」を、日本中のエンジニアに届けていくメディアです。技術の最前線を走るエンジニアたちの「考え方・捉え方・経験や思想」には、オンライン上には出てこない「貴重な情報」がたくさん隠れています。teratail Reportは、実際にエンジニアに接し、その根幹を明らかにしていきます。

今回注目する人物は、Google Cloud Platform(以下、GCP)のスペシャリスト集団、クラウドエース株式会社で、CTOとして手腕を奮っている高野遼氏。自身もエキスパートとして活躍しながら優秀なエンジニア集団を率いる高野氏に、GCPを始めとするクラウド業界のトレンドややりがいについてたっぷりと伺ってきました!

高野 遼たかの りょう

執行役員 CTO

都城工業高等専門学校卒業後、富士通株式会社に入社。社内 SE として、プライベートクラウドシステムの開発に携わる。
退職後、吉積情報株式会社に入社し、Google App Engine による多数のシステム開発を行う。
フリーの IT コンサルタントを経て、クラウドエースに参画。
現在は Google Cloud コンサルタント・Google 認定トレーナーとして活動中。
Google Cloud Certified Professional (Cloud Architect, Data Engineer)

Google、そして強烈な人物との出会い

── 高野さんは、現在、GCPのプロフェッショナルとして活動されていますが、GCPに興味を持ち始めたきっかけは何ですか?

高野遼氏(以下、高野)僕はもともと高専を卒業したあと、20歳である大手メーカーに就職して"開発技術"を専門にしていました。開発技術というのは、ウォーターフォールやアジャイルなどの開発手法や、プロジェクトマネジメントをどうするかといった部分ですね。入社して2、3年経った2009年頃から世間ではVMwareが流行り始めて、僕も社内向けのプライベートクラウドシステムを構築していました。

── 社内向けシステムというのは?

高野社内のエンジニアやSE向けにIaaSを提供するものです。社長賞をいただいたりとわりと上手くいっている反面、少し怠惰な部分もあり威張れる勤怠じゃなかったんですよね。静岡県沼津にある会社から歩いて5分の寮に閉じ込められてたこともありました(笑)その後5年くらい開発や運用をしていたんですが、その会社内だけでずっと働いていていいのかなと考えるようになり、一度外で腕試しをしてみようと転職活動をしてみて、その時に縁があったのが、Googleと出会うことになる吉積情報株式会社という会社です。

── 転職の際はいろいろな企業に出会ったかと思うんですが、決め手はなんだったんでしょうか?

高野まず1つはクラウドをやりたいということと、ずっと静岡にいたのでできれば東京がいいなということがありました。吉積情報は今のクラウドエースの親会社ですが、当時はGoogle App Engine(以下、GAE)をメインの事業にしていたんです。GAEはGCPの前身となるサービスで、すごく先を行っているサービスでした。まずは腕試しという気持ちと、社長の印象が強烈すぎたのもあって入社を決めました(笑)Googleの哲学に”Don’t Be Evil”(邪悪になるな)っていうのがあるんですけど、うちの社長はまさに全く邪心がなくて、裏表ない感じ。逆にたちが悪いんですが(笑)そこが好きな人は多いですね。フォーマルな場でもGoogleのシャツ着ちゃいますからね。

- 未だに社長は強烈なんですけどね、と笑顔で語る高野氏 -

「最新」が「最良」ではないコンサルとしてのクラウド選択

── そこでGAEに出会ってからは、Googleのクラウドサービス一筋といった感じでお仕事をされてきたんですか?

高野吉積情報で2年ほど勤めたあとは、一度フリーランスになったんです。GAEで中小たくさんのシステムを作って要件定義から納品、保守、運用まで開発工程はほぼ1人でできるようになっていたので、ITコンサルタントとしてやってみようと。企業の情シス部門を担当するような役回りで動いていました。

ただコンサルって、最先端の技術を選択すると実はあまり評価されないのでは?と感じました。もちろん、素晴らしい技術を素晴らしいものとして理解してもらえるよう務めることであったり、新技術を導入することに対するリスクや、現場の運用への影響など、多面的な考慮が必要ではあります。ただ、評価軸が「満足感」に寄りがちなので、お客さんが理解して使いこなせるような技術じゃないと、なかなか受け入れてもらえない。GAEで最新のクラウド環境を整えるより、ApacheとかNginxで組んだ方が安心されるということが多く、技術者としては難しさを感じていました。

── お客さんありきの開発の難しいところでしょうか。

高野そうですね。2年くらいフリーで働いた頃、吉積情報の社長から「GCPの東京リージョンができるタイミングに合わせて分社化をするので手伝ってほしい」と誘いを受けて入ったのが今のクラウドエースです。フリーランスでもやっていけることはわかった、会社が立ち上がってよちよち歩きを始める時期というのはなかなか体験できない、このタイミングでやるしかないということで戻りました。

クラウドに訪れた3つの波

── GAEというのは当時そんなに進んだサービスだったんですね。

高野そうですね。クラウドの歴史を簡単に振り返ってみると、いくつかの革新が起こった3つの波があるんです。

まず30年くらい前はどこも自社に物理サーバをおいて運用していましたよね。どこにサーバを置くかとか配線をどうするかとかの問題がありました。最初にくる第一の波は、「コロケーション」が使えるようになったことです。データセンターに置いたサーバをリモートで使う時代になり、コンセントが抜けちゃうとかコーヒーこぼすとかいったリスクから解放されたのが初めでした。

そして次の第二の波が「VMware」の到来です。VMwareが普及して仮想化が進むことで、物理的なリソースの制約に縛られなくなりました。それまではサーバを一台、二台と増やさないといけなかったんですが、CPUやメモリの単位で買ったり捨てたりできるようになりました。これがEC2などに代表される、いわゆるIaaSの世界です。

第三の波は「マネージドサービス」です。仮想化サーバって結局、OSやミドルウェアの面倒をみないといけないし、脆弱性があったらパッチをあてないといけない。いろんな部分の脆弱性やアップデートを見ないといけなくて結構大変なんですよ。僕らは本当はみんなアプリケーションコードを書いて自分のビジネスをより良くしていきたいと思っているはずだけど、インフラの足回りを見ないといけなかったんです。そこでマネージドサービスが登場すると。

ただ、いま各社クラウドサービスを提供していますけど、第二のクラウドがほとんどなんですよね。むしろ第一のクラウドに近いものも多いです。GAEは2008年に登場したころから第三のマネージドサービスという方向にものすごく舵を切っていて、その意味ですごく先進的でした。

先に進みすぎていてなかなか受け入れられていなくて、IaaSも含めて広くニーズに応えられる形にしたのが現在のGCPです。現在はGCPの一つがGAEですが、本来は価値を生んでいるサービス部分に集中すべき。Googleとしては足回りの面倒を見なくてよい世界にするために、GCPもマネージドサービスの方向に寄せていくと思います。

- GCPの資格を取得するとお祝い金10万円と各月2万円の手当がでます、と話す高野氏。 -

改めてAWSにはないGCPの強みを知る

── Googleのクラウドサービスと他のサービスを比べたとき、強みはどういった部分にあるんでしょうか?

高野まずGoogleの強みを考えてみると、19年間自社サービスをやってきているんですよね。Google.comはもちろん、めちゃくちゃユーザ数の多いGSuite (GMail, GDrive, GCalendar等) Youtube、Google Mapといったサービスにおいて常に発生しつづける超大量のリクエストをさばくためのインフラというのをずっと作ってきているんですよ。いかに安定して運営するか、どういったインフラが必要かということを突き詰めている部隊なので、ハードウェアのレイヤーからカスタマイズして最適化することに長けているんですよね。

いま普及している技術はGoogleの19年の歴史で培われているということも多いです。例えばいま有名なOSSのHadoopは「Map Reduce」というGoogleの論文を実装したものですし、HBaseというHadoopの分散ファイルシステム上で動くDBも「BigTable」という論文を実装したものです。GoogleはいまOSで動いている分散システムの元になる部分をほとんど作ったんです。

── 分散システムにものすごい強みがあるんですね。実際に使っていく上では、どういいのでしょうか?

高野現代の高可用性システムは分散が前提なので、Googleの技術が先行しているのは間違いないですよね。GCPの技術面で言うと、精度もコストもすごいです。

実際に使うユーザからすると、性能面と価格面で差が出ます。そしてマネージドサービスの豊富さと性能については、頭一つ抜けていますね。

── やはり「マネージドサービス」という点がキーワードになるんですね。

高野AWSはユーザの現状に寄り添った機能が多いですよね。今使用しているテクノロジーと近いところで、痒いところに手が届くというか、ある種なんでも用意されている。ドライバの種類もすごく多くて、そこはGoogleができていない部分です。ただそこには思想の違いもあって、Googleとしてはできるだけ機能の役割が重ならないようにサービス設計をしているので、あまりなんでもかんでもサービスにしようとは思っていないんですよ。IaaSならこれ、コンテナならこれ、と。

ただ、AWSの機能ですごくいいなと思う機能があって、「Fargate」というサービスです。ECSやEKS上でコンテナベースのアプリケーションを動作させる際に、「Fargateモード」で動作させるか「EC2モード」で動作させるかを選択できます。「EC2モード」を選択すると、EC2インスタンスからなるクラスタが起動し、その上でコンテナを動作させることになります。この場合、ユーザはクラスタ上で動作するアプリケーションと、クラスタ自体を管理することになります。一方、「Fargateモード」を選択すると、コンテナが動作するクラスタは一切ユーザに見えません。さらに、コンテナが動作したぶんだけ課金がされることになります。それに一番近いGoogleのサービスはGAESE(Google App Engine Standard Edition)や、GKE(Google Kubernetes Engine)なんですが、GAEは一般的なコンテナの技術ではないですし、現状のGKEは「EC2モード」にあたるものになります。。AWS FargateはDocker、k8sなど汎用化されているコンテナの技術がそのまま動かせるという点とコンテナ動作分だけの従量課金、IaaSのレイヤが一切見えないという点が非常にいいです。GCPでも同じことができるとかなり流行るだろうと思うので、期待しています。

機械学習の未来でGoogleの真髄が発揮される

高野機械学習の未来についていうと、GoogleがCloud AutoML(Machine Learnning)というサービスを発表したことが挙げられます。機械学習において、ニューラルネットワークモデルをエンジニアが自前で作るというのはほとんどなくて、それは研究者の領域なんですよ。エンジニアの仕事はどういうデータが質の高いインプットか、どうやって集めるかという部分です。

Cloud AutoMLでは、なにがよいデータかわかるエンジニアがいれば、あとはデータ投入するだけで学習モデルを勝手に作ってやってくれると。今はCloud AutoML Visionという画像解析のサービスですが、VoiceとかVideoとか出てきたらかなり強いんじゃないかと思っています。インフラの仕事はどちらかというと無くなっていって、業務分野やドメインの知識、いかにマネージドサービスを使うかというところにフォーカスがあたるようになるという風に思っています。いずれにしても、マネージドというところがポイントですね。

SIだからこそ最新の技術を追い続けられる

── そんなGCPを専門に扱うクラウドエースでは、どういう部分に面白みを感じていますか?

高野僕がよくいうのは、僕たちは「剣術道場」を開いているようなものだということです。GCPという剣はどうやったらよく切れて、どうやって使いこなせばいいのか。中には自分で切りたくないというお客さんがいるのでたまには代わりに切ることもある。これをSIと勝手に思っています。

SIというと日本ではネガティブなイメージが強いですが、僕は変えたいと思っています。Sierと自社サービス・ユーザ企業のエンジニアの大きな違いとして、「プロジェクトの多様性」があると思っています。特にクラウドエースはGCPを扱うことをメインにしているので古くてつまらないという案件が少ない。GCPという最先端の技術を使ってマイクロサービスアーキテクチャを作りたい、最新の技術を使いたいというお客さんが多い。そういう部分を開発できるので、エンジニアが今、本当にやりたいことをできると思っています。サービスの場合は、自分たちのサービスに良いことしかできない。僕たちは技術が好きで、その技術を追いかけていきたいと思っている。ある意味SIは好きな技術を追い続けられる環境だと思います。

── クラウドエースは "攻めのSI"ができる環境があるということですね。チーム体制はどんな風になっているんでしょうか??

高野システム開発部は3つに分かれていて、先進開発(AdvancedDeveloptment)チーム、SRE(Site Reliability Engineering)チーム、データ・ML(Machine Leargning)チームです。ただ実際のプロジェクトは各チームから3:1:1で混成でやれるのがバランスがよくてベストですね。

── 先進開発チームっていうのはアプリケーション層?

高野そうです。GCPはシステムにおけるインフラなのでインフラチームだけでも良いのでは?と思うかもしれないんですが、お客様のビジネスの目標を達成するにはアプリケーション開発は避けられない。ただし、うちでやっているのは「AdvancedDevelopment」なんですよ。

昔に比べてインフラもどんどん賢くなっている。オートスケールで無駄を省いたり、いろんなミドルウェアが登場したり。そんな技術背景がありながら、アプリケーションの開発の方法論もどんどん変化してきている。GCPは最先端のインフラなので、それに伴って最先端の開発方法論が必要になる。そこに思いを込めて名前をつけています。なのでアプリケーションエンジニアも最先端のインフラをうまく扱えるエンジニアを目指してほしいと。3チームには三者三様に意味があって、全員高いレベル目指してほしいと思っています。

── クラウドエースは今後どういった方向を目指しているんですか?

高野現状は拡大路線をとっていて、日本では名古屋、大阪、福岡、海外ではベトナムにも広げています。マルチリージョンな企業になりつつあり、グローバルはもちろん、マルチプラネットのように惑星をも跨ぐ勢いで、留まることを知らずに広げていきたいですね(笑)

── マルチプラネット企業、いいですね(笑)拡大にあたって、どんなエンジニアを増やしていくんですか?

高野僕はエンジニアには、すべての時代で価値あるエンジニアを目指してほしいと思っています。今正しいと思う技術を探してほしいと思っているし、エンジニアとして高いレベルを目指してほしいと言っています。いまはGCPがいいと思っているのでGCPですけど、剣より強い武器がでてくるようにGCPだけではなくなるかもしれない。選択肢を多くして、技術を磨ける会社にしていきたいなと思っています。

── 技術とエンジニアに対する熱い気持ちがよくわかりました。たっぷりとお話しいただきありがとうございました!