はじめに
2024/4/16.17 で開催された DevOpsDays Tokyo 2024 に参加したのでその感想をまとめる。
DevOpsDays Tokyo 2024
DevOpsDays は世界中で開催されているカンファレンスである。ソフトウェア開発、ITインフラ運用、そしてその境界線上にあるトピックをカバーし、特にDevOpsを実現するための自動化、テスト、セキュリティ、組織文化にフォーカスしている。
感想
「そもそも DevOps って一言で表すと何だろう。」
kyon_mm さんの講演で問いかけられ私は納得のいく回答を導き出せなかった。「開発者を楽にさせる仕組み」、「プロダクトをスケールさせるプラクティス」など、様々な言葉で表現される "DevOps" だが、私個人では本カンファレンスの参加を通じて、「変化の激しい IT 業界において、アウトカムを最大化させる文化」という定義に落とし込んだ。私自身全くこの回答に自信はないが、本カンファレンスに参加する前のなにも答えられない状況に比べたら、大きな進歩だと思うし、DevOps について考えることができたこと自体に価値があると感じている。それだけで、本カンファレンスに参加できたことを喜びに感じる。
そんな DevOpsDays には様々な勉強になる講演があった。そんな中で私が一番印象に残っている講演は株式会社カケハシさんの『Value-Driven DevOps Team 〜価値貢献を大切にするチームがたどり着いたDevOpsベストプラクティス〜』である。この講演では主に、「チームが DevOpsトランスフォーメーションするためのプラクティス」と「チームが DevOps サイクルを効果的にワークさせるためのプラクティス」を重点的に話されていた。
「チームが DevOpsトランスフォーメーションするためのプラクティス」
① CI / CD をそれぞれリポジトリ分けする
⇒ステージング環境へデプロイするため
②フィーチャーフラグを活用
⇒ただ、コードが複雑になるので用途を限定し、なるべく使わない。使う前にフラグ削除の条件を決めておく。
③制約を受け入れる
- 本番環境を壊さないように変更
- デプロイされる順番に気を付ける
- チームで1つずつ作る
「チームが DevOps サイクルを効果的にワークさせるためのプラクティス」
①ワーキングアグリーメントの作成
⇒メンバーそれぞれバックグラウンドが異なり価値観も異なるため。
②振り返りのプラクティスはスプリントの内容毎に適当なものを採用する
⇒チームの学びを最大化するため
③モブプログラミング
⇒トランクベース開発と相性が良い
⇒slack のハドルミーティングを使用していると PdM も時間によっては参加してくれる
以上が主にカケハシさんがお話されていたことである。様々な有効なプラクティスを紹介されていてとても勉強になった。が、私が最も印象に残っているのはどのプラクティスでもなく、「DevOps カルチャーを編むには、"アウトカムを最大化する"という目的を共通化する」という言葉である。他の講演でも「内製化するのに必要なのは、エンジニアを増やすことではなく、気持ちをそろえること」みたいなことを聞いたが、チーム・組織を変えていくにはプラクティス・ツールでもエンジニアの人数でもなく、目的の共通化なのかなと感じた。ただめっちゃ難しい気がするし解答は得られていない、そのためのきっかけに上のようなツールとかプラクティスとか使うのもありなのかなとか思ったり思わなかったりした。
おわりに
本カンファレンスに参加して、DevOps についてとても深く考えるきっかけになったし、得られた知見はとても多かった。現在私の所属しているチームの開発はそもそもウォーターフォール開発をしてるし、組織的にも DevOps カルチャーはまだまだ根付いていないと感じるが、DevOps が大事なのではなくなぜ DevOps にしたいのかやりたいのか、の観点から考えを広げる重要性を学べた気がするし、その考えは色々な業務に役立つ気がする。
最後に、色々感想を述べたが本カンファレンスでの個人的な一番の収穫は、懇親会でのコミュニティの手を広げられたことである。普段はなかなか奥手になってしまい会話の機会も少ないが、今回の懇親会では外部のエンジニアの方とたくさんお話できた気がする。別のカンファレンスでお会いする機会も多いと思うので今度は積極的に自分から話しかけてみようと思う。あと銀のさらがめちゃめちゃ美味でした。