パーティーみんなを強くする魔法? Platform Engineeringの面白さとは
──最後に、将来の展望や期待について伺いたいです。まずはPlatform Engineeringに関わる方を増やすためにはどうすればいいでしょうか。アプリケーション開発と比較して、プラットフォーム開発に関わる面白さをうまく言語化できないことも多く、ぜひご見解をいただきたいです。
中島:ものすごく個人的な観点で、なぜ自分が開発者生産性の向上やプラットフォームエンジニアリングのようなものが好きなのか? やりたいと思うのか? ってのを考えたことがあって、その時に思い出したのは小さい頃によくやっていたゲームのドラゴンクエストのことです。ドラクエには「スクルト」や「バイキルト」という呪文があります。「スクルト」は全パーティーの防御力を上げる魔法で「バイキルト」は特定のメンバーの攻撃力を上げる魔法です。僕は、ボス戦でそのような魔法を駆使してみんなを強くして一気に勝つような戦術が好きでした。
この思考はより良いプラットフォームを作ることで開発チームを強くし、より良いプロダクト開発を実現したいという考えにも近いと思うんですよね。なので、そういった思考を持ってる人は実はプラットフォームに関わるのがあってるかもと思っていたりします。
草間:「バフ」(能力をプラスする効果)をかけていく。しかも「スカラ」(特定のメンバーにかける魔法)じゃなくて「スクルト」で全体を上げる方が気持ちよく上げられるような感じですね。
中島:そうそう、みんなが一気に強くなって余裕で倒していけるような。サービス開発に置き換えていくと、プロダクティビティを改善することは、つまり皆を強くすることであり、みんなで強くなることによって、より早くプロダクトを出せるようになっていく感じですね。
昔のインフラの文脈では「いかに落とさないか」という観点に重きを置いていたと思います。もちろん可用性も大事ですが、いかにみんなを強くするか、生産性を上げるか、最近の傾向ではよりエンジニアをハッピーにしたいとか、エクスペリエンスをよくしたいという話になってきていて、そういった取り組みが好きな人は結構いると思いますし、それこそOSSでツールを作って公開する人にもそのような想いがありそうです。
プラットフォームは泥臭いインフラだけではなく、エンジニアをより強く・楽しくするという面白さをお伝えできると、やりたい人が増えるんじゃないかなと思ったりしています。
草間:ゲームに例える話を聞いて確かになるほどと思いました。マインクラフトでおしゃれな建物を作るのはどちらかというとアプリケーションエンジニア的なところがあると思うのですが、自動化をしたりうまくテクスチャを整理したりするなど、レッドストーン(ゲーム中で電気回路のようにさまざまなギミックを動かせる要素)を使ってさまざまに仕組み化できることがあって、そういった取り組みはプラットフォームエンジニア的だなと思います。そういった人が一人いるだけで、自分のやるべき仕事に集中できたりするんですよね。
近藤:例えばエンジニアが、自分がどういうキャリアを歩んでいこうかなと考えた時に、今回のお話を届けることで「Platform Engineeringってよく知らなかったけど、自分はそういう貢献の仕方が好きだから、プラットフォームエンジニアを目指してみようかな」と思う人も増えそうだと思いました。「興味を持つエンジニアを増やすには」という質問に対して、すごくいいお話をしていただけたなと思いました。
中島:僕もキャリアの最初はバックエンドエンジニアでしたが、きっかけそこですからね。周りの開発者が運用やデプロイに苦労していて、これは良くしなければ、いうことから始まっています。こういう取り組みがあるよというのを知ってもらえたら、やってみたいと思う人は結構いるんじゃないかなと思います。
──インフラというと、昔はデータセンターに物理サーバーを台車で持っていって、LANを引いてOSをインストールするという物理の話も多かったですが、今はソフトウェアの領域が増えており、プログラムの開発を通じてメンバーへ貢献できる可能性が広がっていると思いますし、そこがモチベーションの根源にもなっていると感じました。
中島:はい、よりソフトウェアエンジニアにも近づいていると思います。昔はそこまで実装のチャンスはありませんでしたが、今はプラットフォームを作るためには、がっつりGoでプログラムを書けなければならないこともあるので。そのような面白さがあるよと、もっと知られてほしいです。
──では最後に、今回の記事を読んでPlatform Engineeringに興味を持っていただいた方や、コミュニティに対する期待など、メッセージをいただけますでしょうか。
中島:今回はメルカリのPlatform Engineeringの取り組みを紹介しましたが、みんなが同じようなプラットフォームを作った方がいいかというと全然そんなことはありません。業種・業界や会社によってプラットフォームに求められているものが違うので、違うものを作るべきだと思っています。コミュニティがあることで、さまざまな会社が関わり、情報共有がより活発になっていくと面白いことになってくるんじゃないかと期待しています。
あと、Platform Engineeringは日本だけじゃなく世界的なトピックです。メルカリがプラットフォーム作りを始めた時はPlatform Engineeringという用語すらなく、ちょうどSpotifyなどが近しい取り組みを始めていた時期だったので、いろいろなカンファレンスに出ていって、どういう基盤を作ろうとしているのか情報共有して、その学びを持ち帰って実際のプラットフォーム作りに活かしていました。Platform Engineeringに取り組んでいる方は日本以外にも数多くいます。PlatformConのような海外のカンファレンスもありますので、みんなでどんどん海外に出ていって、つながりを作ってほしいです。
──Platform Engineering Meetup運営メンバーとしても、コミュニティへの期待のメッセージはすごくありがたく思います。中島さん、貴重なお話をありがとうございました!