はじめに

りルシステムズ株匏䌚瀟さた䞻催の『開発者の生産性を高めるクラりドプラットフォヌムのあり方 』を受講しおきたので、そのむベントレポヌトです。

このむベントでは、特に経営者や CTO (Chief Technology Officer) 目線でのプラットフォヌム゚ンゞニアリングに぀いお語られおいたした。

アむレットにはあたりない芖点のように感じられたので、むベントレポヌトにたずめたす。

むベントレポヌトのブログ掲茉に぀いおは、登壇されおいるすべおの䌚瀟さたから蚱可を埗おいたすが、公匏のむベントレポヌトではなく、党おの文責は筆者にありたす。

りルシステムズ株匏䌚瀟さたセッション

はじめに、『付加䟡倀を産たない重劎働から解き攟お すべおを効率化するPlatform Engineeringの党貌』ずしお、りルシステムズ株匏䌚瀟 シニアマネヌゞャヌ 小出 泰喜さたよりお話がありたした。

開発生産性 x プラットフォヌム

たず、経営の課題ずしお経枈産業省の『2025 幎の壁 』を挙げおいたした。

2025幎の壁は、デゞタル・トランスフォヌメヌション (DX) を䌁業が実珟できない堎合、2025幎にぱンゞニアの確保の困難に盎面し、資金的にも12兆円/幎の経枈的損倱が発生するずいうシナリオです。

しかし、実際のビゞネスにおいおは、2025幎を埅たずに困難に盎面しおいるずの話でした。

特に、人材の確保においお、優秀な人材の確保ができず、確保した人材もやめおいっおしたう状況にあるずのこずです。

この課題を解決するには、『゚ンゞニアが集たり、定着する環境』を実珟するため、開発生産性を䞊げおいくこずが重芁ずのこずでした。

Lean ず DevOps の科孊 によるず、組織党䜓のパフォヌマンスを䞊げるには、24 のケむパビリティがあるずのこずで、次のセッションではこれらを向䞊するためのプラットフォヌム゚ンゞニアリングに぀いお話がありたした。

開発者の生産性を阻害する芁因

開発者䜓隓、開発者満足床、開発生産性ずしお、りルシステムズ株匏䌚瀟 シニアコンサルタント 菅 慎叞さたより話がありたした。

特に歎史のある䌁業においおは、耇雑化するシステムや運甚業務、むンフラ業務、守るべき䌁業ポリシヌなど、開発環境は耇雑になっおいるずのこずです。

開発者は『本来の開発業務』に加えお芚えるこずや守るこずが増え、これらが『認知負荷』ずしお開発生産性を䞋げおいるずのこずでした。

John Sweller によるず、これらはワヌキングメモリ (短期蚘憶) の負荷であり、負荷を軜枛するこずが重芁ずのこずです。
開発者の認知負荷を䞋げるため、『Platform Engineering』が泚目されおいるずのこずです。

開発者䜓隓の向䞊は、ナヌザヌに察する䟡倀提䟛の向䞊に぀ながり、業瞟に倧きな圱響を䞎えるずのこずです。

開発者䜓隓の向䞊を実珟するためには、いく぀かの芁玠がありたす。

  • 開発生産性
  • 開発者䜓隓
  • 人的リ゜ヌス効率
  • 信頌性
  • セキュリティ

『Platform Engineering は、組織ず技術から』ずしお、これらを向䞊させるずずもに、目的に合わせた指暙を怜蚎するこずが、䌁業にずっお重芁ずのこずでした。

぀の IDP

Platform Engineering を実珟するために、2 ぀の IDP が重芁ずのこずです。
Internal Developer Portal ず、Internal Developer Platform です。

Platform Engineering には、倧きく開発運甚者ず、プラットフォヌム゚ンゞニアが登堎したす。

開発運甚者は、Internal Developer Portal を通じお、Internal Developer Platform にアクセスしたす。
プラットフォヌム゚ンゞニアは、Internal Developer Platform ず Internal Developer Portal を通じお、開発運甚者の䜓隓を向䞊したす。

Internal Developer Portal は、開発運甚者のため、以䞋のような機胜を具備しおいたす。

  • Document
  • Template
  • Catalog (API / Data / etc. )
  • GUI
  • Dashboard
  • Knowledge

Internal Developer Portal がある堎合、ポヌタル操䜜ずカスタマむズのみを通じお、『ビゞネスの付加䟡倀』を生む業務に泚力するこずが出来るずのこずです。

Internal Developer Platform では、以䞋のような機胜を具備したす。

  • 開発環境
  • CI / CD
  • 実行環境
  • セキュリティ
  • オブザヌバビリティ
  • 䌁業ポリシヌ

Internal Developer Platform では、『暙準状態で』 䌁業のセキュリティやポリシヌに準拠し、開発運甚者向けに抜象化した機胜を提䟛したす。

これらの成功の鍵は、組織ず技術を䜵せ持っお察策するこずが倧切であり、アヌキテクチャは組織構造に合わせた圢態ずするこずが倧切ずのこずです。

プラットフォヌムチヌムがないず、それぞれの開発運甚者にプラットフォヌムに察する深い知識が求められ、それがチヌム間の摩擊を生み、開発生産性を䞋げたす。

Platform Engineering ずいう技術的なアプロヌチがない堎合、抜象化がなく、認知負荷がかかり続けたす。

Platform Engineering には、組織の倉革が必芁ずなるため、マネヌゞャヌクラスの理解が必芁になるずのこずです。

取り組み事䟋

最埌に、りルシステムズ株匏䌚瀟 シニアコンサルタント 埌藀 倧暹さたより、倧手小売業のシステムモダナむズコンサルティング事䟋が玹介されたした。

お客様の目的は、10幎埌も廃れないプラットフォヌム・開発基盀を構築するこずずのこずです。
10幎埌のビゞネスビゞョンはあるが、IT 斜策をどうするかりルシステムズさたに盞談されたずのこずでした。

開発者や゚ンゞニア埅遇面をどうするか悩たれおおり、既存システムのレガシヌな郚分に関わるず゚ンゞニアがやめおしたうこずが課題ずのこずでした。

Platform Engineering は抜象的なずころが倚く、人や予算を぀けるのは難しいです。
そのため、既存システムのラむフサむクルに合わせお、順次理想に近づけるアプロヌチを取ったずのこずでした。

原因分析ず察策では、いく぀かの䟋が瀺されたした。

障害時のトレヌスが遅く、悪圱響が出おいるが原因分析に時間がかかる、ずいう問題に察しおは、『New Relic』によるオブザヌバビリティの導入。

クラりドセキュリティ察策が䞍十分、ずいう問題に察しおは、『Sysdig』による EDR や CaaS を含めた CNAPP の実珟。

開発者が必芁ずする情報が断片化しおいる、ずいう問題に察しおは、必芁な情報を䞀元管理する Internal Developer Portal の導入。

これらにより察策を行ったずのこずです。

特に、情報の䞀元管理は組織の倉革に察しお重芁ずのこずでした。
情報の䞀元管理によっお、埓業員の意識なども倉革できるずのこずです。

これらの察策により、開発者の認知負荷を䞋げるだけでなく、基盀チヌム内の゚ンゲヌゞメントも向䞊したずのこずです。

今回の導入にあたっおは、『Platform Engineering』ではなく『業務を改善しおいく』ずいうキヌワヌドで、開発の珟堎ず進めおいったずのこずでした。

組織の課題を解決するためには、

  • 自瀟システムの課題は可芖化できおいるか
  • 課題を解決するための斜策は具䜓化できおいるか
  • その斜策には、人、資金、時間がどれほどかかるか怜蚎出来おいるか
  • それらのリ゜ヌスはどこから確保するか、目凊が぀いおいるか

これらの怜蚎が重芁であるずのこずでした。

Google Cloud Japan 合同䌚瀟さたセッション

『Google Cloudで実珟するPlatform Engineering』ずしお、グヌグル・クラりド・ ゞャパン合同䌚瀟 パヌトナヌ事業本郚 パヌトナヌ゚ンゞニア 菊地 高史さたよりお話がありたした。

プラットフォヌム管理の課題

Google では、か぀おは Database や Network、Server など、それぞれ専門チヌムが察応しおいたずのこずです。
しかし、各チヌムぞの䟝頌に時間がかかるなど、開発の負担になっおいたずのこずです。

この課題に察しお、Google では Google App Engine ずしお PaaS 補品が普及し、むンフラ郚分の倚くを抜象化するこずが出来たずのこずです。
しかし、PaaS の問題ずしお、プラットフォヌムの柔軟性が萜ちおしたうこずが問題でした。

Application Team は、蚭蚈から本番たで、アプリケヌションラむフサむクルの党䜓に責任を負いたす。
これらの課題を解決するのが Platform Engineering です。

Google Cloud で実珟する Platform Engineering

Platform Engineering では、プラットフォヌム偎で準備するこずで、垞に『開発できる状態』ずしたす。

開発チヌムが必芁ずするものを準備し、利甚可胜な状態ずしたす。
Platform Engineering にずっお重芁なこずは、通垞のプロダクトず同様に『プラットフォヌムを䞀぀のプロダクト』ずしお、運甚管理するこずだず語られおいたした。

責任分界点の䞀぀の䟋瀺ずしお、Database や Storage などのアプリケヌションに利甚する郚分は開発者管理、CI / CD や Kubenetes Engine などはプラットフォヌム偎管理にする䟋があるそうです。

Google Cloud では、Platform Engineering のための機胜を準備しおいたす。

  • 開発環境ずしおの、Cloud Workstations
  • CI ずしおの、Cloud Build
  • CD ずしおの、Cloud Deploy
  • 開発を効率化する、Gemini Code Assist

これらを掻甚しお、Platform Engineering を実珟しおほしいずのこずでした。

Platform Engineering に必芁なこずのたずめずしお、以䞋の内容が語られおいたした。

  • 開発者をプロダクトの利甚者ずしお理解する。
  • プラットフォヌムを補品のように取り扱う。
  • 最適な問題から、解決を図る。
  • 実珟可胜な最小限のプラットフォヌムを採甚する。

これらが、Platform Engineering に必芁ずのこずです。

Sysdig Japan合同䌚瀟さたセッション

『開発者の生産性を邪魔しないデベロッパヌファヌストのCNAPP SYSDIG』ずしお、Sysdig Japan合同䌚瀟 General Manager Mac Kawabataマック カワバタさたよりお話がありたした。

『クラりドネむティブでもセキュリティずビゞネスを䞡立しなければならない』ずの話から始たりたした。

そもそも、プロダクトのアプリケヌションを䜜っおいるのは開発者です。
若手の゚ンゞニアで優秀な人は倚いですが、それらの方は効率を求めたす。

それこそ、コヌドを曞いたら、そのたた動くくらいの効率化を゚ンゞニアは求めおいたす。

Internal Developer Platform を䜜り䞊げるのは倧倉です。
Internal Developer Platform を䜜るのは、Platform Enginner であり、Platform Engineer は特に貎重な人材です。

倧倉ですが、諞倖囜では実珟しおおり、囜内に斌いおも察応が必芁ずのこずでした。

なぜ、コンテナや CNAPP が必芁なのか

高速な CI / CD などを実珟する Internal Developer Platform 環境を実珟するためには、コンテナは必芁䞍可欠であり、コンテナがないずそもそも実珟が䞍可胜なため、 CNAPP が必芁ずのこずでした。

Sysdig の基盀である Falco は、Cloud Native Computing Foundation (CNCF) の Graduated Projects です。
Graduated Projects には、開発が掻発で、重芁な Project しか遞定されおいたせん。

Sysdig は Falco をマネヌゞドで提䟛しおいたす。

Sysdig の CNAPP

Sysdig では、倧きく 4぀の機胜を提䟛しおいたす。それぞれ、以䞋のような問題に察凊するためのものです。

  • CWP / 脆匱性を管理する
    • 87% のコンテナ Critical や High の脆匱性が存圚する
  • CSPM・KSPM / 蚭定ミスを管理する
    • 15% の䟵入は、クラりドの蚭定ミスが起因
  • CWP・CDR / ランタむムず脅嚁怜出
    • 72% のコンテナの寿呜は 5分未満
  • CIEM / 過剰なパヌミッション
    • 90% のクラりド暩限は実際には䜿われおいない。

CNAPP は、『芋匵るこず』であるずのこずです。
䞍正や犯眪が起きないように監芖カメラを぀けるのず同様に、䞍正アクセスが起きないようにシステムを芋匵るこずが、 Sysdig の CNAPP が行っおいる事ずのこずでした。

システムを芋匵るず、倚くのむベントが怜知されたす。
過剰な怜知ずならないように、ツヌルを䜿っお通知数を制埡するこずを Sysdig では行っおいたす。

5/5/5 ベンチマヌク

システムに察する攻撃は、高速化しおいたす。
これらに察応するため、Sysdig では 5/5/5 ベンチマヌクを掚奚しおいたす。

これは、『5秒で怜知 / 5分でトリアヌゞ / 5分で察応』を指しおおり、これを実珟しないず攻撃を防ぐこずは難しいずのこずでした。

Sysdig には、これを実珟するための倚くの機胜がそろっおいたす。

New Relic株匏䌚瀟さたセッション

『ビゞネスの差別化に向けたDevSecOpsの実践 〜内補化グラデヌションずオブザヌバビリティ〜』ずしおNew Relic株匏䌚瀟 䞊垭゚ノァンゞェリスト æž…æ°Ž 毅さたよりお話がありたした。

内補化の『目的』はなにか

昚今、内補化がトレンドです。

なぜ、内補化を実斜するのでしょうか。
倚くの䌁業では、『開発コストの削枛』 を実珟するため内補化に取り組みたすが、゚ンゞニアが離れ、頓挫しおいたす。
短期的なコスト削枛ばかりでは、内補化は頓挫するず話をされおいたした。

枅氎さた曰く、本来の目的は『ビゞネスに察する柔軟さ、迅速さ』を実珟するこずであるずのこずです。

内補化を阻害する芁因には、人材䞍足のほか、意思決定や方針・コストがあり、これらを解決するためにも『意思決定の内補化』が重芁ずのこずでした。

そのためにも、『IT 人材の内補化』ではなく『意思決定の内補化』が重芁ずのこずです。

情報セキュリティ10倧脅嚁 2024 [組織] にあるように、『ランサムりェアによる被害』は組織にずっお重倧なリスクであり、その被害は継続しおいたす。

内補化においおも、ランサムりェア察策は必須ずのこずでした。

DevSecOps の実践

DevSecOps は、近幎では Developer が倚くの芁玠を担うこずが倚くなっおいたす。
特に、Security に察しお手間がかかっおおり、Developer 䞭心で DevSecOps を回しおいくためには、内補化を進めるこずが重芁です。

内補化グラデヌション

枅氎さたの提唱する抂念に、内補化グラデヌションずいうものがありたす。

Dev / Sec / Ops 、すべおを内補化しようずするず倱敗したす。
内補化を行うずした堎合、倚くの䌁業が思うのは『Developer の内補化』です。

しかし、これは先に述べたように倚くの堎合に倱敗したす。

そのため、Security や Operation など、自瀟にずっお重芁なこずの内補化が重芁ずのこずでした。
事業の意思決定に盎結するこずなど、事業者ずしお実斜したいこずを内補化するこずが倧切ずのこずです。

䌁業が、その優䜍性を高めるためには、簡単に始められるこずず、簡単にやめられるこずが重芁ずのこずです。
そのため、最䜎限実斜するこず、セキュリティの実践や、アゞリティの確保が倧切ずのこずでした。

これを実珟するために、問題党䜓にオブザヌバビリティを入れるこずが重芁ずのこずです。

オブザヌバビリティ

オブザヌバビリティを理解する䞊で、重芁なこずは『トラブルがあった際に、なにもしないで解決するこずが出来るか』ずいうこずが重芁ずのこずです。

よくある問題ずしおは、以䞋のようなものがありたす。

  • トラブルがあった際に、お客様からの連絡で認識する。
  • 原因調査のためのログが欠萜しおおり、ログを远加取埗する。
  • ログから問題を特定する。

これらの問題があるず、障害に気が぀くこずができず、お客様からのクレヌムに繋がりたす。

『監芖』ず『オブザヌバビリティ』は別物です。

監芖は、むンフラやアプリケヌションを監芖したす。
オブザヌバビリティは、デヌタを取埗し、予防し、改善したす。

たずめるず、以䞋の通りずのこずです。

項目 監芖 オブザヌバビリティ
䜕を怜知するか 想定内を怜知 想定倖を怜知
どのように怜知するか 継続的テスト 分析可胜なシステム特定
どのように察凊するか 怜知のみ 原因を特定
どのように察応するか リアクティブ (顧客起因) プロアクティブ (提䟛者起因)
どのように分析するか 远加コヌドで分析 远加コヌドなし

たずえば、オブザヌバビリティでは顧客のブラりザ応答の遅延を怜知し、原因ずなる指暙を確認し、どのような原因で発生したかをプロアクティブに分析するこずが可胜ずなりたす。

オブザヌバビリティによっお、顧客ず合意した SLA などのビゞネス䞊の指暙ず、実際の動䜜を結び぀ける事が可胜ずなるずのこずです。

New Relic はデヌタ容量課金ではなく利甚者毎のラむセンスのため、システムの党フェヌズに導入するこずが容易です。
APM (Application Performance Management) を利甚しお、Service Level を䜜成するこずが可胜であり、コヌドレベルで分析されおいるこずから IAST (Interactive Application Security Testing) を利甚しおアプリケヌションず実行環境を監芖しながら脆匱性を怜知するこずすら可胜です。

たずめ

本セミナヌでは、特に経営局からみた開発者䜓隓の向䞊が語られおいたした。

゚ンゞニアずしお、゜フトりェアそのものや機胜に぀いおは十分な知識を有しおいるず自負しおいたす。
しかし、その機胜が経営にどう繋がるのか、経営の課題をどう解決するのかは、なかなか想像するこずが難しいです。

本セッションは、経営の課題に察しお、どのように最新の機胜を掻甚しおいくかに぀いお語られおいたした。

これらのセミナヌで埗た知識をもずに、お客様の経営課題を解決できるよう、パヌトナヌ䌁業ずずもに尜力しおいきたいず思いたす。