注目記事

「技術はビジネスの武器」クラウド二刀流・G-gen杉村CTOが語る、未経験から市場価値を高める学習法とAI時代の生存戦略

杉村勇馬さんメインカット

この記事でわかること

  • 未経験からクラウドエンジニアとしてキャリアを築くためのマインドセット

  • AWSとGoogle Cloudの違いと、マルチクラウド時代における学習のアプローチ

  • 生成AI時代にエンジニアが持つべきスキル

クラウド技術がさまざまなサービス、プロダクト、システムの“前提”となったいま、未経験からクラウドエンジニアを目指す人や、さらに市場価値を高めたい技術者は、なにをどう学べばよいのでしょうか。

今回は、警察官からIT業界へ転身し、現在はGoogle Cloud専業のインテグレーターである株式会社G-genで執行役員CTOを務める杉村勇馬さんにお話を伺いました。AWSとGoogle Cloudの両方で全認定資格を保有する、いわゆる「全冠」でもある杉村さんに、エンジニアがクラウドを取り扱ううえで身につけるべき基礎力や、AI時代における技術との向き合い方について、徹底的に語っていただきました。

▶「監視疲れ」「運用での失敗」はなぜ起こる?

杉村勇馬

株式会社G-gen 執行役員CTO / プラットフォームエンジニアリング本部 クラウドソリューション部 部長。 埼玉県警の地域課警察官として勤務した後、未経験でIT業界へ転身。インフラエンジニアとしてキャリアをスタートさせる。AWS専業のクラウドインテグレーターを経て、2021年にG-genの設立に参画。AWSおよびGoogle Cloudの全認定資格を保有する(計23冠)。技術ブログの執筆やコミュニティでの発信にも尽力し、「Google Cloud Champion Innovator」など数々のアワードを受賞している。

【X(旧Twitter)】:@y_sugi_it

「クラウドエンジニアなんて存在しない」技術ではなくビジネスに寄与するインフラの価値

ーー杉村さんは警察官から未経験でIT業界に入られたユニークなキャリアをお持ちです。クラウドエンジニアを目指すうえで、キャリア初期にはどのようなマインドセットが重要だとお考えですか?

杉村さん:どの仕事でも同じですが、専門職においてはとくに「知識」と「経験」の両輪が必要です。知識を積み重ねるためには、業務の中でわからないことがあったら「すぐに調べる」こと、そして「腹落ちするまで深く調べる」ことがとても大事なマインドセットだと思っています。

また、キャリアが浅いうちは「私はクラウドをやりたいので他はやりたくないです」と選り好みしてしまいがちですが、ソフトウェア開発の仕事はすべての要素、技術が根本で繋がっているので、「特定の技術だけ見る」というのは近視眼すぎる態度だと思います。

私自身は未経験で飛び込んだ最初の現場では、インフラかアプリかもわからないまま、選り好みする余地などありませんでした。ただ全力でパフォーマンスを出すことだけを考えていましたが、結果、たまたまAWSに出会い、それが強みとなり、いまのキャリアに繋がっています。ですから、「自分の強みがはっきりするまでは選り好みせず、学び、経験を深める」という姿勢がとても大切だと思うんです。

 

ーー「クラウドが好き」というよりも、仕事を通じてクラウドの有用性に気づかれたのですね。

杉村さん:実は、正直に言えば私自身は「技術そのものが大好き」というわけではないんです(笑)。2017年当時は多くの日本企業でクラウド導入が一気に進んでおり、明らかにビジネスシーンで流行し、「クラウド」は有用なツールになりつつあり、私も注力するようになったんです。

ただ、エンジニアとして誤解してはならないのが、「クラウドエンジニア」という職種や「クラウド技術」というものは、実は特別なものとして存在していない、ということです。従来型のインフラ技術の延長線上にあり、たまたま製品としての形態や売り方が「クラウド」なだけで、本質的な価値を発揮するのは基本的なインフラの技術や知識や経験だと考えています。

受託開発の中で、多くの企業のシステムに関わる経験を重ね、どの会社も似たようなITの悩みや技術を抱えていることがわかりました。つまり、このインフラの汎用的な知見を持っていれば、どの会社でも通用する非常に市場価値の高い人材になれると気づき、自分自身もインフラの本質的な知識や技術を学ぼうと思ったんです。

 

ーー異業種や非エンジニア職からIT業界へ転職される方も増えていますが、そうした方々ならではの強みはありますか?

杉村さん:もちろんです。「技術の視点」だけで仕事を考えてしまうと、うまく案件が進まなくなることが往々にしてあります。他業種でビジネスを経験してきた人ならば、ビジネスの視点からお客様の組織や人を理解するための「引き出し」を持っているはずで、「技術」だけでは解決できなかった課題を取り除き、推進させることが可能でしょう。開発には純粋な技術追求型のスーパーエンジニアも必要ですが、同時に、ビジネスの視点を持つエンジニアも必要であり、双方がバランスをとることが重要だと思っています。

大事なのは「試行回数を積める」環境と「自分が携わったシステムをきちんと説明する」力

ーークラウドに関わるエンジニアがスキルを伸ばせる「良質な仕事環境」とは、どのような条件が揃っている現場でしょうか。

杉村さん:大きく2つあります。1つは「実際に触って試行できる、検証環境があること」です。技術はドキュメントベースの理論と、実際に触ってみる実践がセットでなければ身につきません。いまならば、ドキュメントはネットで誰でもアクセスできますから、あとは「月数千円〜数万円までなら自由に使っていいよ」といった、用途を細かく問わず試行錯誤できる環境が用意されているといいと思います。G-genでも、社員には自由に触れるGoogle Cloudの検証環境を提供しています。

2つ目は「限られたリソースの中で最大の成果を出す(弘法筆を選ばず)」ということです。たとえば、G-genのエンジニアの多くは「Chromebook」で仕事をしています。これは私たちがGoogle Cloud専業インテグレーターとして、Googleの環境を自分たちで体感する「ドッグフーディング」の意味合いもありますが、実際、ブラウザで動くIDE(Cloud ShellエディタやCloud Workstations)を使えば、ローカルの高スペックなパソコンがなくても小規模な開発であればできるはずです。

どのような会社や案件でも、予算や運用上の制約は必ずあります。その制約の中で、いかに創意工夫して効率的に仕事ができるかを突き詰めるのも、エンジニアの立派なスキルだと思っています。

 

ーーG-gen社には、エンジニア経験はあってもクラウドは未経験という方が多く入社されているそうですね。採用面接において、未経験の方の「クラウド適性」をどう評価されているのでしょうか。

杉村さん:私は採用面接で「過去の案件やシステムについて、自分の言葉で説明できるか」を重視しています。実は、「自分が携わったシステムをきちんと説明する」というのは、そう簡単ではないんです。自分が行った狭い範囲の作業しか見えていなかったり、知識がきちんと言語化できていないということが往々にしてあるからです。

「自分の言葉で語れる」というのは、対話の中で持論を持ちつつ、同時に「IT用語(共通言語)」を正しく使ってシステムを抽象化して他者に伝えられる、という意味合いです。これができる人は、開発におけるベストプラクティスを丸暗記しているだけでなく、現場での実践を通して「システムがどう駆動しているのか」を正しく理解できている人だと捉えています。

 

ーーもう一つの評価ポイントとして「基本情報技術者試験に基づく知識」を挙げられていますね。

杉村さん:はい。基本情報技術者試験というと「初歩的な試験」と思われるかもしれませんが、あの広範な試験範囲を本当の意味で理解するのは非常に難しいことです。クラウド特有の知識よりも、ネットワーク(TCP/IP)やOS、データベースといった基礎知識を、広く汎用的な知識としてちゃんと理解しているかはとても大事ですから。

基礎を養う意識と技術だけにとどまらない俯瞰的な視野の重要性

ーー未経験から最速でクラウドを学ぶためのロードマップや、陥りがちな壁について教えてください。

杉村さんクラウドというものは末端のツールであり、TCP/IPやデータベースといった既存技術の上に成り立っているものです。なので、繰り返しになりますが、まずはこうした基礎知識や技術をきちんと把握すべきです。

ただし、キャリアの初期からあらゆる基礎技術の学習に手を広げすぎると、今の業務との繋がりがわからず義務感になり、挫折してしまうことも危惧されます。ですから、まずは自分が直近でやっている業務に関係する部分から学び、そこで得た知識が現場でバリューを出し、「学んでよかった!」と喜びが得られてから基礎を体系的に学び直すのがいいと思います。

 

ーー杉村さんご自身はAWS、Google Cloudに関する資格の「23冠」という実績をお持ちですが、学習において資格取得はどう位置づけるべきでしょうか。

杉村さん:G-genはGoogle Cloud専業の会社で、普段からGoogle Cloudにみっちりと触れている私たちが資格を取るのは、ある意味当然で、自身が有する知識の客観的な証明として「取れるものなら取っておこう」というくらいのスタンスです。

ただ、学習におけるマイルストーンとして資格を活用するのは有用だと思います。各クラウドベンダーが提唱するシステム構成などにおけるベストプラクティスを確認し、頭に入れるためのプロセスとして資格試験は役に立つでしょう。

しかし、学科試験だけで自動車の運転ができないのと同じで、理論には実践が伴わなければなりません。実業務ではコストや運用体制といったさまざまな制約があるため、ベストプラクティスをそのまま適用できないケースが多々あります

たとえば、「ネットワーク管理者が共有VPCを管理するのがベストプラクティス」とされていても、専任の管理チームを置くコストが割けない企業では、各事業部に管理を任せつつシステム的なガードレールを設けるといった、制約下における最適解を模索する必要があります。資格で得たベストプラクティス、つまり型を実務でどう応用するかが、理論だけにとどまらない、エンジニアの現場における必要とされる能力のひとつでしょう。

 

ーーでは、現場で直面する技術的な「壁」はどのように乗り越えてこられましたか?

杉村さん:壁だらけでしたが、乗り越えるヒントは常に「先輩の話を聞くこと」と「顧客と会話すること」にありました。若手のころ、お客様から「非機能要件グレードに沿って設計ドキュメントを書いてくれ」と指摘され、「非機能要件」という言葉すら知らなかったことに気づかされた経験があります。

そこで初めてIPAの標準的な知識の重要性に気づき、自分の技術やAWSの知識だけではダメで、「答えは自分の中ではなくお客様の中(ビジネスの中)にある」と痛感しました。

ーーこれまでの学習で、特に自身の視座を高めるのに役立った書籍などはありますか?

杉村さん:実は「おすすめの書籍は何ですか」と聞かれても、特定のものを答えるのは難しいです(笑う)。人によって理解しやすいスタイルは全く違うので、書店でパラパラとページをめくってみて、自分が一番わかりやすいと思ったものを手に入れるのがベストではないでしょうか。

私の場合、なにを学ぶか決めたら、買った本をPCの横に置き、わからないことがあれば腹落ちするまで適宜引っ張り出して繰り返し読むということが多いですね。

その上で、これまでの学習で私の手元にずっとあった本を挙げるとすれば、基本情報技術者試験の参考書と『システム構築の大前提――ITアーキテクチャのセオリー』という本ですね。とくに後者は、私のITエンジニアとしての視座を引き上げてくれた1冊だと思っています。

画像の説明

ーー『ITアーキテクチャのセオリー』のどのような点で、視座が高まったと感じられたのでしょうか。

杉村さん:この本では「ビジネス・データ・アプリケーション・インフラ」という4つの階層(エンタープライズ・アーキテクチャ)がどう関連しているかが示されています。

当時、エンジニア3、4年目だった私の中では、「業務」と「データ」と「アプリ」と「インフラ」というものがそれぞれ完全に分離していました。インフラの業務しか経験していなかったのですが、この本を読んで、それらがどう関連しているのか、とくに「データの大事さ」に気づくことができました。インフラの世界しか知らなかった私が、この階層構造を知ったことで「業務と技術が繋がった」という感覚が得られ、「インフラはお客様のビジネスニーズを満たすためのものだ」と視界が大きく広がったように思います。

ただし、この本は「まだ技術の習得だけで手一杯」といった状態で読んでも、その有用性はなかなか理解しにくいかもしれません。私自身、初めて読んだときは理解しにくかったのですが、インフラの開発経験を積み、お客様ともコミュニケーションするようになった3、4年目に読んで、ようやく「点と点が繋がった」と感じました。

AWSとGoogle Cloudの“違い”を乗り越える。マルチクラウド時代の学び方

ーー杉村さんはAWSとGoogle Cloudの両方に通じておられますが、両者の学び方やキャッチアップの方法に違いはありますか?

杉村さん:「スモールスタート」「マネージド」「従量課金」「APIベース」などの根底にある思想は大きく変わりません。基本情報技術者試験に出てくるような仕組みがわかっていれば、AWSからGoogle Cloudへ移行しても「名前が違うだけで同じ仕組みを使っているな」とすぐに理解できるでしょう。私自身、Google Cloudの初期の資格はAWSで得られた知識をもとにして、ほとんどドキュメントを読んだだけで合格できたほどです。

 

ーー実装面において、AWS経験者がGoogle Cloudを学ぶ際につまずきやすいポイントはどこでしょうか。

杉村さん:一番の違いは「ID管理(IAM)」の仕組みです。AWSの場合は人(ユーザー)に対して「このリソースを操作していいですよ」というポリシーを付与しますが、Google Cloudはリソース側に「この人からの操作を受け付けますよ」というポリシーを書き込みます。

これはおそらく、それぞれのクラウドが歩んできた歴史的背景や後付けの実装によるものですが、管理画面が似ているだけに、AWSの感覚で触ると「なぜこんな動きになるんだ?」と混乱しがちです。G-genに入社してきたAWS経験者には、初期研修の模擬プロジェクトを通じて、必ずこの違いを体感してもらうようにしています。

また、細かいところではVPC(仮想プライベートクラウド)やOrg(組織)といった、クラウドリソースを管理するための仕組みにも違いがあります。

実は、私たちが運営している「G-gen Tech Blog」の初期の記事は、G-genを立ち上げた約5年前に、まさに私自身がGoogle Cloudを学んでいく中で「ここはAWSと違うからわかりにくいな」とつまずいたポイントをまとめた記事が多くあります。私やメンバーの実体験をベースに、IAMやVPCなどの違いについて具体的に記事にしていますので、AWS経験者の方にはぜひ、このブログの初期の記事をキャッチアップの参考にしていただければと思います。

また、実業務の用途にもカラーの違いがあります。AWSはトラディショナルなインフラ寄り、Google Cloudはデータ分析(BigQueryなど)やAIなどのモダンインフラ用途で使われるケースが多いです。とはいえ、最近はAWSもAI領域で巻き返していますし、多くの企業がマルチクラウドを前提にシステムを構築するようになっています。

▶Google Cloud上のRed Hat OpenShiftで仮想マシンとコンテナの統合管理が可能に

AI時代にエンジニアが持つべき3つのスキルと「技術」への向き合い方

ーー生成AIがコードを書いてくれる時代になりつつあります。これからのクラウドエンジニアは、どのようなスキルを持っておくべきでしょうか。

杉村さん:実装やコーディングといった下流工程は、間違いなくAIによって時間短縮・代替されていきます。だからこそ、エンジニアは「作り手」から「導く人・目利き」へと役割を変えなければなりません。具体的には次の3つのスキルが必須になります。

  • ヒアリング 
    • 言語化の能力 AIへのインプットは言語です。お客様の曖昧な要望をヒアリングし、AIが理解できる適切なコンテキストに言語化できなければ、AIを正しく動かすことはできません。
  • アーキテクチャ設計
    • レビューの能力 現状のAIのアウトプットはまだ完璧ではなく、ビジネス背景の考慮漏れやハルシネーション(もっともらしい嘘)が含まれます。「この構成は要件を満たしているか」「お客様の用語と合っているか」を判断し、軌道修正を指示するためには、人間側に「何がベターか」を知る確かな知識が必要です。
  • 情報セキュリティへの理解
    • IT技術者ではない一般社員がAIを使ってコードを書けるようになったことで、ソースコードに認証情報(パスワードなど)を直書きしてしまうような致命的なミスが普通に起きるようになっています。AIの出力したコードの危うさに気づき、ストップをかけられる能力が不可欠です。

若い世代がAIをフル活用するのは素晴らしいことですが、AIがなくても仕事ができる基礎スキルを持っておくことは絶対に必要です。AIが出したものを何も考えずにコピペして「危ないもの」を出してしまうようではプロとは言えません。


ーー最後に、杉村さんの原動力について教えてください。技術そのものが大好きというわけではないとおっしゃっていましたが、なぜここまで学びを深め続けられるのでしょうか。

杉村さん:新しい技術が出てきたときに「これはビジネスに適用できそうだぞ」「お客様の課題解決に役立ちそうだぞ」と考えるのが好きだからです。現実世界の問題を解決するための「武器」として技術を蓄えることに面白さを感じています。


最初は「この技術に詳しくなれば社内で評価されそうだ」という小さなモチベーションから始まりましたが、それが徐々にお客様への価値提供に繋がり、ひいては社会の役に立つことに繋がってきました。技術の基礎研究ではなく、「技術をどうビジネス(商売)に使うか」という最適化の視点があるからこそ、歩みを止めずに学び続けられているのだと思います。


▶選ばれるクラウドエンジニアに必要なのは「ビジネスとの対話」

取材・文:はてな編集部

撮影:赤司 聡

マイナビ転職 アンドエンジニア編集部