開発生産性カンファレンス2025の2日目の聴講メモです。
受付は並ばずできて、昨日の混雑はKent Beckのせいだったようです。
開発生産性向上の探求:DevOpsの進化、普遍的な原則、そして生成AIがもたらす変革
Gene Kim
DevOpsのビジネス価値は我々の想定よりさらに高い
ハイパフォーマーはより安全で管理しやすい
- 市場で勝つのはハイパフォーマー
「開発生産性」ではなく、事業の投資対効果に向き合う「事業生産性」へ
山口拓弥
生産性の本質
レベル1:チーム
レベル2:組織
レベル3:部門
レベル1から順にやっていく必要はあるのか
- レベル間の相関が薄い?
もっとも重要なのはレベル3
- レベル3から取り組むことで2,1も達成できる?
事業生産性はROIC(投下資本利益率)で計測するのが適切
開発者視点でとらえる事業生産性
- ROICを高めるために開発者が意識すること
- どう利益を高め、資本を最適化するか
- ROICを高めるために開発者が意識すること
具体例
- 資産性開発の管理
- エンジニア自身が投資対効果に対して説明責任を持つ
- 開発プロセスの改善
- PR設計の改善(小分けなど)、開発サイクルの効率を向上
- 個々のスキルの向上
- 属人性を減らしながらチームを強化
- AIツールの活用
- 現場の自律的な活用を後押し
- 資産性開発の管理
事業生産性とAIとの関係
- AI活用はROICの向上に寄与する
fukabori.fm出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話
森川知雄、岩瀬義昌
要員のアサインについて
- HAMAT: HYPER ASSIGN MANAGEMENT TOOL
月180人入社
- オンボーディングはシステム化している
- 2週間くらい
- オンボーディングはシステム化している
アサイン業務の課題
- 稼働率を上げる
- 敵はexcelだった
- 稼働率を上げる
どうExcelと戦ったか
再現性はあるのか
- 耳は大きく(よく話を聞く)、手は小さく(作りすぎない)、声は大きく迅速に(素早く作ってしっかりアピール)
「作れば使ってくれるだろう」
- そんなことはない
学びとして得たもの
- Excelに勝とうと思うな、共存を探れ
- Excelにやられている人は救いたい
- Excelを何に置き換えても通用するw
今後の展望
- AIアサインマッチング
DXって言わない
- 現場とプロダクト第一にイテレーティブに改善をするだけ
デジタル庁におけるAI活用の最前線:内製化の推進と行政事務効率化の取組み
楠正憲
- 生成AIの検証
- 課金してる人としてない人で議論がかみ合わない
生成AI導入の壁を越える!Biz/Devの取組みと連携による組織定着のアプローチ
木下陽介、三木洋司
AI活用の遅れ=企業のリスクととらえる
安心して使える環境を整える
- どんな情報を入れていいのかいけないのかガイドライン策定
- なにができるのか
ワークショップ
- 参加ハードルを少し上げて、興味がある人をあぶりだす
サービスへの組み込み
- 開発プロジェクト発足
開発における利用
- Devin導入
セキュリティ診断AIエージェント「Takumi」の雇用によって実現する開発生産性の向上
米内貴志
バイブコーディングとセキュリティ
- AI生成コードは安全ではないという話ではない
- 起こりやすさの話、気にしないとそれなりに起こる
- 見た目の生産性が上がっても欲しいものが手に入っていない
- 人間でもリリース前など急いでいるときに脆弱性が入りやすい
- AI生成コードは安全ではないという話ではない
対抗技術としてのバイブハッキング
コードを読む力
些細なノイズや嘘は一定量入る
最後の責任は人に集約される
AI時代の開発生産性へ
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
本間匡晃
よくある課題
- 情報格差
- 環境構築が終わらない
オンボーディングへの取り組み
- 課題
- チームごとの実施→受講者間の知識差
- ドキュメントの散乱
- 進捗がわかりにくい
- 資料をだれが更新するのか明確ではない
- 理想
- 社会的受容:チームの一員として受け入れられている感覚
- 役割の明確さ:自分の役割・責務がクリアになっている
- 自己効力感:自分ならやり遂げられるという自信
- カイゼン
- ドキュメントを集約
- リンク集
- フィルターして必要なカリキュラムを抽出
- 陳腐化対策
- 管理者を明確にする
- カリキュラムにフィードバックを含める
- ドキュメントを集約
- 課題
個別の開発環境への取り組み
- 課題
- コードベースが大きい
- ミドルウェア(FFmpeg、ImageMagickなど)のバージョンも重要
- デザイナーの負担増
- カイゼン
- Sandbox環境の導入
- EKSに個人の環境を作成
- VS CodeでリモートSSHをして開発
- 個人用のyamlファイルを作成するのみ
- 課題
エンジニアが主体的にビジネスに貢献する〜開発現場からの変革
伊藤直也、山田裕一朗
生産性とは
- スピード、品質、納期
- IN/OUTが決まっていれば測りやすい
顧客の価値
- 提供するサービス
- 満たせれば多少の問題は気にしない
- 提供するサービス
エンジニアがビジネスに貢献するためには
- 現場でエンドユーザーと話をする
- 直接聞くことで、自分事としてとらえられる
- その場で聞くことに意味がある
- 自分たちのできることからではなく、課題から出発するべき
- 現場でエンドユーザーと話をする
インバウンドのキャンセル問題
- キャンセル料を取りたいわけではなく、予防線を張りたい
紙の話
- 紙のほうが便利だから使っている場合
- 利便性の強化ではなく、印刷機能の強化
- 紙のほうが便利だから使っている場合
ビジネスに貢献するためのエンジニア組織とは
- 分業すればするほどダメになる
- 役割分担を明確にしないようにしている
- マネジメントは難しくなる
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
丹哲郎
FinOps
- 全員がコスト最適化をする考え方のひとつ
- Financial+DevOps
- データに基づく迅速な意思決定
- クラウドコストのコントロールが困難(増大する)
コスト最適化のアプローチ
- AWSのWell-architected tool
どうすれば全員が参加できるのか
- 経営陣が指揮を執る
- 最適化ではなく削減という視点で物事を見る
- モブコスト分析
- billingを眺めながら話す
事例
- バックアップ戦略の見直し
- マルチテナント化
- 通信量の削減
AI時代のソフトウェア開発を考える
和田卓人
Vibe Coding
- ノリでコーディング
- 喋ってコーディング
Claude Code
- 定額のインパクト
- 使い倒さないと損マインド
- 定額のインパクト
コードレビューが省略される
- 動作確認のみ
2025年の崖
- 保守不能なコードの量産
適切な設計がされていれば・・・の復活
問題の構造は変わらず、圧倒的に顕在化が早まっただけ
ソフトウェアエンジニアリングは時間で積分したプログラミング
- Googleソフトウェアエンジニアリング
- Googleの規模だから起きていた問題が自分たちのところにも
TDDから何を学んだか
- 終わらない設計を自動テストとリファクタリングで支える
DDDから何を学んだか
- 語彙が大事
- コードとモデルとドキュメントはたがいにフィードバックしあう。一方通行ではない。
ザ・ゴール
- リソース効率よりフロー効率
- レビューがボトルネックになる
- 待ちPR=在庫=ムダ
- ペアプロやモブプロでフロー効率向上
プロダクトマネジメント
- ビルドトラップを避ける
- OutputよりOutcomeやインパクト
- OutcomeにつながらなければOutputを増やしても意味がない
- AIはこの傾向
Vibe CodingからAgentic Codingへ
- AIとの協業の2つのモード
- 伴走:直列
- 教習車
- リサーチアシスタント
- 委託:並列
- 小人さん(夜のうちにやってくれる)
- コンペ
- 伴走:直列
- 自動化から自働化へ
- Reconciliation Loop
- 望ましい状態を定義し、そこに向かって働く
- 暴走/迷走対策としてのバージョン管理、テスティング、自動化の重要性が増す
- Reconciliation Loop
- AIとの協業の2つのモード
正直に現実を見つめよう
- 最初から正しい設計をすることはできない
- わからないものはレビューもできない
- 時間が経つと正しくなくなることもある
能力向上のためのAI利用
- 設計のバディとして
- 批判的レビュアーとして
- 根負けしない議論相手として
- 新しい言語を学ぶため
抽象度が一段上がるのか
- コードがアセンブラ相当に
- 自然言語がコード相当に
べきか否かという問いは間違っている
- 失敗に導かれやすい
- 決定を遅延、選択肢を広げる
- 不確実な状況下で選択肢を狭めるのは危険でしかない