「Sansan vs サイボウズ 開発生産性Tips夏祭り」に参加してきました

新規開発でイベントストーミングを実践したら体験が良かった話

イベントストーミング

  • 要件を素早く設計に落とし込みたかった
    • 伝言ゲームを減らして手戻りを減らしたい
    • 業務フロー設計の理解を統一したい
  • イベントストーミングとは
    • DDDの戦略的設計
    • ドメインエキスパートの力を借りて設計する
    • 発生したイベントを記録する手法
  • 参加者
  • 事前に
    • ゴールを決めて置けるといい
    • MVPを決めることなど
  • 実践
    • BigPicture
      • イベントを書き出し
        • 過去形で
        • 用語を揃える
      • タイムラインに並べる
      • 似たものをマージ
      • 何度か繰り返す
    • Business Process Modeling
      • コマンド/アクター/ポリシー/外部システム/リードモデル
    • Software Engineering
  • 参加したメンバー内で理解の共有ができた
    • 用語の統一ができた

10 分でわかる生産性向上チーム in 2024

生産性向上チーム

  • 開発者が辛いと思ってることを最高にしていく
    • 多様で価値あるサービスを迅速に
    • オープンな開発基盤
  • モブプログラミングで開発してる
    • 1日最大3.5時間
    • 25分やって5分休憩
    • 属人性を減らす
    • レーンを分ける
      • 注力してる領域ごとに分かれる
  • 最近の活動
    • GitHubActionsびセルフホストランナー基盤のコスト削減
      • 毎日1万以上のジョブが実行される
      • ランナーをプール数見直し
      • インスタンスの種類を見直し
      • 30%削減
    • AWSのSSOをIAM Identity Centerに移行
      • 独自CLIで頑張ってたが移行した
  • 今後
    • 開発チームとのアラインメント

可視化から始める開発生産性向上の取り組み

生産性の可視化

  • エンジニア組織が成長
    • プロダクトの成長にあわせて大きくなった
  • はじめは1チームのスクラム
  • 自分たちの開発生産性が高いかわからなかった
    • 事業貢献もわからない
  • 可視化
    • アウトカム
      • どこにいてどこを目指す
    • プロセス
      • 課題はどこか
  • 開発生産性
    • 開発チーム視点
      • プルリク数/リードタイム(プルリクオープンからマージまで)
    • プロダクト組織視点
    • 部門全体視点
  • 見えないものは改善できない

GitHub Projectsを自動化するGitHub CLIテクニック

GitHubProjects

  • GitHubProjects
    • GitHubのプロジェクト管理ツール
    • リポジトリをまたいで使える
    • ビュー設定が柔軟
  • 組み込みの自動化
    • issueがxxされたらxxする
  • API/Actionsを使用した自動化
    • API操作をActionsで実行
    • スプリントを自動更新
      • doingにしたら現在のスプリントに
      • スプリントまたいだら自動で更新
    • 長過ぎるshellになると展開しづらい
      • 再利用しやすいようにパッケージング
      • GitHub CLIの拡張で処理を置き換える