DevOpsDays Tokyo 2019開催。DevOpsの伝道者Gene Kimのキーノートセッションを紹介
DevOpsを推進するテクノロジーやユースケースを紹介するカンファレンス、DevOpsDays Tokyo 2019が開催された。キーノートセッションに登壇したGene Kim氏は、DevOpsに関する書籍「LeanとDevOpsの科学」の著者の一人であり、自身の経験を踏まえてDevOpsを実践する際の方法論などについて講演を行った。
キーノートセッションとして行われたKim氏の講演は、DevOpsの核心について様々な角度から解説したもので、まず最初に行ったのはDevpsの定義だ。
この文字数の多いスライドをまとめると「アーキテクチャーであり、技術的な実践であり、文化的な常識」であり、それが「アプリケーションとサービスを実装する能力を高める」ことによって「新たな実験や革新を素早く安全に顧客に対して価値すること」でありながらも「同時に世界トップレベルの安全性、信頼性、安定を兼ね備える」ことによって「市場で勝ち抜く」ことを実現すること、といったところだろうか。
もっとシンプルにまとめると「より良く、速く、安全に、もっとハッピーに」なることだというのが、この前のスライドに対するオチということだろう。
その後にDevOpsが実現できていない例として、データセンターの絡み合ったケーブルの写真やデベロッパーと運用担当者が争い合っている写真などを例に出して会場の笑いを誘った。
その後、DevOpsは単にテクノロジーだけの話ではないという意味で、DevOpsができている組織とそうではない組織では結果が大きく異なるという内容を解説。ここでは往々にして技術論、ツール論に終始しがちなDevOpsを、もっとビジネスに影響を与える重要なイノベーションとして定義したいというKim氏の意図が表れたものとなった。
ここからはDORA(DevOps Research and Assesment、現在はGoogleに買収された)が行ったリサーチ(State of DevOps 2018)の内容を元に、DevOpsがビジネスに与える影響を解説する段となった。リサーチのレポートは以下から入手できる。
What sets top-performing DevOps teams apart
ハイパフォーマーとローパフォーマー、つまり仕事ができる組織とあまり結果が出ない組織を比較してその違いを数値化したもので、このレポートでは全方面でできる組織とできない組織の違いが明らかになっている。
ここでKim氏は、仕事ができる組織のほうが結果として生産性、顧客満足度、ゴール達成など多くのビジネスに直結する指針においても2倍の違いがあることを説明。
Kim氏は単に生産性の比較ではなく「コードが実装されるまでのリードタイム」についても言及した。ここでは実装の頻度や回数よりも、デベロッパーがコードをコミットしてそれが本番システムに実装されるまでの時間を重視するべきだという提言となった。
またコンウェイの法則にも言及して、組織の構造とソフトウェアのアーキテクチャーが一致するという部分から、技術やツールよりも組織をどうやって構成するのか? にトピックを移した。
ちなみにここで紹介された例は「4つのグループがコンパイラーを作れば、4つの別々の仕組みのコンパイラーを手にすることになる」という内容で、組織が複雑なのであればそれと同様のソフトウェアができあがる。よって組織もシンプルにするべきだという結論であろう。
その意味でこのスライドは、理想的な組織とは何か? を具体的に説明するものであった。簡単に要約すると「他のチームに依存したり許可を求めなくても大きな変更が可能なチームであること」「他のチームときめ細かな連絡や調整をしなくても仕事を完結できること」「他の製品やサービスに依存せずにいつでも製品やサービスを実装できること」「いつでもテストを実行できること」「ダウンタイムを最小限に抑えて通常のビジネスアワーに本番環境に実装できること」などが可能なチームを作るべきという内容だ。
巨大なシステムになればなるほど依存関係が複雑で、他との調整が必要というのは一般的な常識だが、それを組織から作り変えることで依存を減らし、実装までのリードタイムを短くするというのがDevOpsにおける組織のあるべき姿ということだろう。
そしてプラットフォームの重要性という部分についてセルフサービス、オンデマンドなどのキーワードで解説し、デベロッパーが主体となって生産性が上がることを中心に考慮するべきだと説明。
またDevOpsのエンタープライズ企業への適用については、2018年11月に行われたDevOps Enterprise Summitを紹介。このカンファレンスでは技術的に優れたユニコーン企業ではない一般のエンタープライズがDevOpsを実際に導入した例として、CapitalOneやWalmart、Nike、Verizonなどの名前を挙げて、エンタープライズ企業において実践することの重要性を説いた。
またDevOps実践にはリーダーシップが大きな意味を持つとして、変革を求めないリーダーに率いられた組織はITの活用においてハイパフォーマーの半分以下の実績しか残せないとして、IT活用には変化を好むリーダーが必要であり、その配下の人員も変化に対応できるメンバーがサポートすることでより高い成果を挙げられることを述べた。
そして組織が変化に対応せず、技術的負債を克服できずに組織的に極めて死亡に近い状態にあった例としてMicrosoft、Google、Amazonなどを紹介した。これは技術的負債を払拭するために、組織は一度は立ち止まって新しい製品の開発などを止めて負債をなくすべきであるという内容のものだったが、その例としてMicrosoftのBill Gatesのメモを紹介した。
そのメモについてはWiredのこの記事に原文があるので参考にして欲しい。
参考:BILL GATES: TRUSTWORTHY COMPUTING
また信頼性をあげるために、チームの能力の20%を技術的負債解消のために使うべきとしたMarty Cagan氏の著書を紹介し、プロダクトチームは20%の力を負債を解消するために使わないと技術的負債が増えてしまい、将来的により多くの労力が必要となると警告した。
そして最後に5つの原則として以下の5点を解説した。
- 組織の自立性を保つこと
- 日々の仕事を楽しめること
- チームが常に向上することを忘れないこと
- 組織の文化として失敗しても心理的に安全であることを確信できること
- 常に顧客にフォーカスすること
特に失敗を恐れないという部分については、トヨタのアメリカの工場でのアンドン(行灯)コードに関するエピソードを紹介した。これは工場の生産ラインに設置されているもので、トヨタでは生産ラインに何か異常を検知すると、作業員が即座にアンドンコードを引いて生産ラインを止めて異常を確認、修正するということが常識となっている。アンドンコードは、一日平均で3500回も使われているということで、失敗や異常を恐れずにその場で修正するマインドセットがソフトウェア開発にも必要だということを説いたものとなった。
そして最後に現在、執筆を進めているThe Unicorn Projectという本について紹介を行って、ステージを降りた。その後、会場からの質問に答えた後、翻訳された「LeanとDevOpsの科学」の即売会と合わせて著書のサイン会が行われた。ここでも長蛇の列となり、Gene Kim氏がDevOpsのThought Leaderとなっていることが感じられる瞬間となった。
Kim氏の講演は途中で何度も参加者に「これはわかる? 大丈夫かな?」と会場の参加者の理解度を確認しながら行われていたことからも分かるように、英語による文字主体のスライドがちゃんと伝わっているを気にしていたようだが、著作が売り切れるほどの人気だったことからも参加者の意識の高さが伺えるキーノートセッションとなった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- GitHub UniverseでMSのエンジニアが語った「共有と協力」への険しい道
- DevOpsに特化したイベント、DevOpsDays Tokyo 2017が開催
- CI/CD Conference 2021からCircleCIによる調査レポートの解説を紹介
- オープンソースのストレージ管理ソフトウェアSODAがオンラインカンファレンスを開催
- KuberCon/CloudNativeCon NA 2021開催、3日間のキーノートを紹介
- ChefのCTO、DevOpsを拡げるためにはツールと方法論の両方が必要と語る
- KubeConサンディエゴ最終日のキーノートはカオスエンジニアリング
- 「KubeCon NA 2022」から、VMwareが行った既存のイメージを壊すプレゼンテーションを紹介
- All Things OpenでRed HatのBurr Sutter氏にインタビュー。最高のデモを見せる極意とは?
- CloudNative Days Tokyo 2019:メルペイのマイクロサービス化の目的とは?