STORES Product Blog

こだわりを持ったお商売を支える「STORES」のテクノロジー部門のメンバーによるブログです。

CI/CD Conference 2023に参加してきました

プロダクト基盤本部SREの藤原です。

3/20開催のCI/CD Conference 2023に参加してきました。 随分遅くはなってしまいましたが学びの多かったイベントだったので改めてエントリをしたためています。

参加と言っても私自身が本イベントの運営にも関わっているので、その辺りも少し触れつつ感想を述べます。

参加したセッション

当日は以下のセッションに参加しました。

"UbieはなぜSnykを選んだのか?安全で高速なアプリケーション開発ライフサイクルの実現へ"のセッション以外はアーカイブと資料が公開されています。 いずれも学び、気づきの多いセッションなので資料だけでなく動画アーカイブも見ていただくと得られるものは多くなるでしょう。

セッション終了後のよるイベにも参加しました。 こちらについても感想を述べます。

個別セッションの感想

GitHub Actionsと"仲良く"なるための練習法

株式会社オルターブースの松村さんのセッションです。

ソフトウェア開発ライフサイクルについて触れたのちに提携作業の1つとしてビルド、テストとリリース作業を挙げ、CI/CDについて解説していました。 GitHub Actionsの基礎の基礎となる基本概念について解説をしつつ、ローカル環境での練習手段としてnektos/actを紹介されていました。

nektos/actで対応可能な部分とそうでない部分についてわかりやすく解説されていました。 GitHub Actionsの基本について学びつつ、ローカルで学習がてら動かしてみたいといった方にとっては非常に有用なセッションだったのではないでしょうか。

はじめてGitHub Actionsを使う方、初めてワークフローの設計を任されているという方、改めてGitHub Actionsについて知識を整理し直したい方にとっては非常に有用であろうセッションでした。

speakerdeck.com

UbieはなぜSnykを選んだのか?安全で高速なアプリケーション開発ライフサイクルの実現へ

Snykの相澤さんとUbie株式会社 水谷さんのセッションです。

セキュリティプラットフォームSnykの紹介と事例のセッションでした。 Snykについて自分が知っている範囲では、docker scanコマンド1でコンテナイメージに内包されている脆弱性を確認してくれる分析ツールくらいの認識でした。

現在のSnykはコンテナイメージの脆弱性チェックだけに止まらず、セキュリティのシフトレフトを実現するためのプラットフォームになっています。

Snykを用いることで利用しているOSS脆弱性チェックのみではなく、脆弱性対応のPRまで作成やライセンス観点のチェックまでしてくれるのは便利だと思いました。

また、組織横断で脆弱性管理を進めていくにあたっては、脆弱性を検知した後にどうアクションすべきかが非常に重要になると言った部分については納得感がありました。 セキュリティ組織にすべてを任せるのではなく、個々の脆弱性トリアージしたうえで、自律的に対応できる開発チームづくりが必要であることを改めて感じさせられました。

トランクベース開発の実現に向けた開発プロセスとCIパイプラインの継続的改善

DMM株式会社 小林さんのセッションです。 担当されているプロダクトにおいて開発チームパフォーマンスのFour Keys2のうち、変更のリードタイムを如何にして短くするかといった観点の内容でした。

一般的なブランチ戦略(GitHub Flowなど)の課題を事例ベースで述べたのち、トランクベース開発に向けてのチャレンジについて紹介していました。 その上で最終的にごく短期間のフィーチャーブランチを作成して短期間でマージを繰り返す開発スタイルに行き着くまでを説明いただきました。 開発プロセスを継続的に改善し続けることの重要性、地道に取り組むことが一番の近道であることを痛感させられました。

特に、レビューで時間がかかっていることを測定の上で、どうそれを短くするのかの具体的な取り組みについては多くの示唆がありました。

speakerdeck.com

セッション以外(夜イベ)

イベント当日のセッション終了後に現地にてディスカッションイベントが開催されたので参加しました。

私はCI/CDを進めていく上での組織論的な悩みのテーブルにてファシリテーター的な役割を担当したのですが、かなり白熱した議論が繰り広げられました。 テストのメンテナンスおよび、コードのリファクタリングの重要性についてDevの人間としてどうBizサイドの人に納得してもらった上で取り組んでいくか?や、全てをCIでテストするにテストの量質ともに現実的には難しい場合に組織としてどのようなポリシーを定めるべきか?といった事柄について盛り上がりました。

いろいろな組織から参加されてる方の悩み事、相談事について相互に知ることができ、"うちではこう捉えて解決しようとしています"といったナレッジ共有も積極的になされていました。 ただ参加者として学びを得るだけでなく、他の参加者の方の学びに多少なりとも貢献できた点も自己効力感的な観点からプラスになったと思います。

全体的な感想

当日私は現地参加でした。 久しぶりの現地イベント参加だったのですが、やはり現地参加固有の良さがあると感じました。 セッションをただ聞くという意味では大きな違いはないのですが、登壇者や、他の参加者とのコミュニケーション(セッションの感想戦や夜イベでのディスカッション)はオンライン参加では得づらい部分だと思いました。

加えて、やはりこういう場での情報、ナレッジの共有に改めてチャレンジしたいという気持ちが強まりました。 Cloud Native Days Fukuoka 2023も夏に控えているので、何かしらの形で貢献できないか考えています。

また、運営にも携わっていた身としては、少々不安がありました。 CI/CDという狭く見えかねない領域でそこまでセッションが集まるだろうか?と言った部分や、参加者があつまるだろうか?という部分で不安を感じていました。 最終的には多数の方に参加いただくことができたことに加えて、セッションの中でフォーカスしている観点についても多様なものがあり、改めて気付かされる課題も多々ありました。


  1. ただし、このコマンド自体は2023/4/13以降はサポートされなくなっているので注意してください。
  2. 参考) エリート DevOps チームであることを Four Keys プロジェクトで確認する