Upgrade to Pro — share decks privately, control downloads, hide ads and more …

レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動

Avatar for kesoji kesoji
July 04, 2025

レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動

開発生産性カンファレンス 2025 (2025/07/04-05) での登壇資料です。

私たちのエンジニア組織は30名程度で、プロダクトはサービス開始から8年が経過し、多くの顧客と共に、多くの技術負債も抱えています。
本セッションでは、「レベル1(仕事量の生産性)」の改善に特化し、効率化スクリプトの導入、CI/CD改善、日々の煩雑な繰り返し業務の解消など、実際の取り組み内容と現場の工夫・効果を紹介します。私たちの事例が皆さんの改善活動のヒントにつながれば幸いです。

Avatar for kesoji

kesoji

July 04, 2025
Tweet

Other Decks in Programming

Transcript

  1. 2 ©Social Databank, Inc. 自己紹介 櫻田 健治 / kesoji ソーシャルデータバンク株式会社

    技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜
  2. 3 ©Social Databank, Inc. 自己紹介 櫻田 健治 / kesoji ソーシャルデータバンク株式会社

    技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  3. 4 ©Social Databank, Inc. 自己紹介 櫻田 健治 / kesoji ソーシャルデータバンク株式会社

    技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 かな入力 好きな言葉: 効率化
  4. 5 ©Social Databank, Inc. 自己紹介 かな入力 ローマ字: S E I

    S A N S E I 9キー 櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  5. 6 ©Social Databank, Inc. 自己紹介 かな入力 ローマ字: S E I

    S A N S E I かな: せ い さ ん せ い P E X Y P E 9キー 6キー 櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  6. 7 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 櫻田 健治 /

    kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  7. 8 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 大学生から 神Excel 櫻田

    健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  8. 9 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 大学生から 神Excel 明細表

    報告書テンプレ 生成 櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  9. 10 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 大学生から 神Excel ※反省しています

    櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  10. 11 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 大学生から 神Excel ※反省しています

    櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: 効率化
  11. 12 ©Social Databank, Inc. 自己紹介 かな入力 ※おすすめしません 大学生から 神Excel ※反省しています

    ※おすすめします 櫻田 健治 / kesoji ソーシャルデータバンク株式会社 技術本部 開発部 部長 白い犬の通信キャリアでSE ソーシャルデータバンク株式会社 社会人1年目 社会人5年目〜 好きな言葉: Vim
  12. 14 ©Social Databank, Inc. 開発生産性のレベル レベル1 仕事量の生産性 [作業効率 / 個人のスキルアップ]

    開発者・チーム レベル2 期待付加価値の生産性 [期待価値の高い施策のリリース] プロダクトチーム全体 レベル3 実現付加価値の生産性 [売上・KPIへの実際の貢献] 全部門 広木大地「開発生産性について議論する前に知っておきたいこと」Qiita
  13. 15 ©Social Databank, Inc. 開発生産性のレベル レベル1 仕事量の生産性 [作業効率 / 個人のスキルアップ]

    開発者・チーム • 個人やチームで完結できる • 大きな承認プロセスが不要 • 効果がすぐに見える 小さな改善の積み重ねが大きな成果に
  14. 17 ©Social Databank, Inc. 本日お伝えしたいこと • 日々「これ、めんどくさいな」と感じているエンジニアの方へ • チームの生産性を上げたいと思っているマネージャーの方へ •

    「改善したいけど、大きなことはできないし...」と悩んでいる方へ これなら明日から試せそう うちでも似たような問題があった!
  15. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  16. 22 ©Social Databank, Inc. 数字で見る 8740 万人 総友だち数 21428 件

    契約アカウント数 2億 6395万通 月間送信メッセージ数 ※2024年9月時点 0.61 2.10 4.62 10.10 17.21 18.99 19.73 1期 2期 3期 4期 5期 6期 7期 売上推移(億円) (OEM含む)
  17. 23 ©Social Databank, Inc. • DBのテーブルで最もレコード数が多いもの ◦ 数百億レコード • DynamoDBのテーブル数

    ◦ 約40 • Redisクラスター数 ◦ 約20 • ECSのサービス数 ◦ 約100 • 1日に出るログの量 ◦ 約1.5TB システムの規模
  18. 24 ©Social Databank, Inc. 組織内のエンジニアの割合 39%(27人) 人 バックオフィス CS系 Biz系

    エンジニア 創業社長 (大学の同級生) もエンジニア! 会社全体の平均年齢は31歳
  19. ©Social Databank, Inc. 👉 IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  20. 27 ©Social Databank, Inc. IPアドレス制限の自動化 • 検証環境はインターネット全公開にしたくない ◦ (クレデンシャルは1Passwordで管理しています) •

    VPNは未導入 ◦ (最近はTailscaleが便利ですよね...) • 解放までのリードタイム / エンジニアのトイル 課題/状況
  21. 28 ©Social Databank, Inc. IPアドレス制限の自動化 • 仕組み ◦ 専用のWebサイトにアクセス ◦

    認証 (弊社はGoogleでログイン) ◦ 現在のIPがセキュリティグループに追加 ◦ 9時間後: 設定内容が削除される 解決策 自動IP制限 / 解除システム
  22. 31 ©Social Databank, Inc. IPアドレス制限の自動化 terraform moduleあります github.com/kesoji/terraform-ip-restriction-ui Cognito User

    Pool API Gateway Lambda Cloudwatch Events ※弊社ではLaravelで独自アプリケーション
  23. ©Social Databank, Inc. • IPアドレス制限の自動化 👉 リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  24. 35 ©Social Databank, Inc. リリース付帯作業の自動化 • 参考にしたのはLaravel / Railsのスキーママイ グレーション

    ◦ ファイルを作り ◦ コマンドで実行 ◦ 実行済みかどうかはDBのテーブルで管理 解決策 DBマイグレーション風の自動コマンド実行
  25. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 👉 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  26. 40 ©Social Databank, Inc. 開発環境自動更新 課題/状況 • 環境とコードのミスマッチによるエラー • ジュニアメンバーにはトラブルシュートが難しい

    • 何かしら作業が必要な場合は「開発環境設定ロ グ」に書いて展開していた ◦ しかし徹底しきれない
  27. 42 ©Social Databank, Inc. 開発環境自動更新 • 開発環境で行ってほしいことをファイルに記載 • zshの chpwd()

    フックでチェックコマンド実行 ◦ 開発者にはzshrcに行追加してもらいます ◦ direnv とか使ってもいいと思います • リポジトリのディレクトリにcdでGitHubと通信 • 未チェックのものを表示 / 実行 ◦ チェック状態はローカルファイルで管理
  28. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 👉 デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  29. 47 ©Social Databank, Inc. デバッグ効率化 課題/状況 • RDBMS以外のリソースが初心者に鬼門 ◦ 前述の通り、DynamoDBが数十テーブル、Redisのク

    ラスターもたくさん... ◦ パフォーマンスのオフロード目的のことも多く複雑 ◦ 外部のAPIを叩いている場合も
  30. 48 ©Social Databank, Inc. デバッグ効率化 解決策 php-debugbarに外部通信を記載 • php-debugbarとは ◦

    リクエストの様々なデータを表示してくれる ◦ Vue やReactのDevToolsのサーバー版
  31. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 👉 ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 • PR管理の人間ボット
  32. 52 ©Social Databank, Inc. • 障害発生後の振り返り手法 • 要点 ◦ 非難しない文化

    ◦ タイムライン記録 ◦ 根本原因分析 ◦ 知識共有 ポストモーテムとは
  33. 54 ©Social Databank, Inc. ポストモーテムの◦◦化 課題/状況 • 見る側としては、コンテキストが足りなかった りしてハードルが高い •

    「障害対応からしか得られない栄養がある」の 名言もあるし、実際に対応にあたっていない人 でも少しでも栄養にしてもらいたい
  34. 63 ©Social Databank, Inc. ポストモーテムの絵本化 SRE 中堅 ジュニア 「何が書いてあるかよくわからなかったから敬遠していたが、 とりあえず絵本を読むようになった。あと、かわいい。」

    「自分が読むべきかどうか、絵本部分で判断できるようになっ た。あと、かわいい。」 効果 「AIに喰わせることで資料としてのレビューも挟まる。工数も 大きく増えないためやりやすい。
  35. 64 ©Social Databank, Inc. ポストモーテムの絵本化 SRE 中堅 ジュニア 「何が書いてあるかよくわからなかったから敬遠していたが、 とりあえず絵本を読むようになった。あと、かわいい。」

    「自分が読むべきかどうか、絵本部分で判断できるようになっ た。あと、かわいい。」 効果 「AIに喰わせることで資料としてのレビューも挟まる。工数も 大きく増えないためやりやすい。あと、かわいい。」
  36. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 👉 複雑な仕組みを体で理解 • PR管理の人間ボット
  37. 67 ©Social Databank, Inc. 複雑な仕組みを体で理解 課題/状況 • 配信モジュールが巨大 • 継ぎ足し継ぎ足しで分散処理

    & 優先度処理など • オレオレキューイングシステム • 複数リソースに跨がる • 理解の難易度が高い
  38. 68 ©Social Databank, Inc. 複雑な仕組みを体で理解 解決策 人間配信モジュール • 物理的なモノを用意 ◦

    紙(配信メッセージ) ◦ 封筒(優先度の仕組み) ◦ レターボックス(キュー(Redis)) • 人間はPHPのモジュールやDBとなる
  39. ©Social Databank, Inc. • IPアドレス制限の自動化 • リリース付帯作業の自動化 • 開発環境の更新の自動化 🤖

    自動化で解決 🛠 開発サポート 📚 情報共有の改善 👥 人の力で改善 • デバッグの効率化 • ポストモーテムの◦◦化 • 複雑な仕組みを体で理解 👉 PR管理の人間ボット
  40. 75 ©Social Databank, Inc. PR管理の人間ボット 課題/状況 • 作業中のPRが100個以上 ◦ ボトムアップな組織文化

    ▪ 良い意味で、自由・自主性がある ▪ 悪い意味で、着地できずそのまま放置 • 誰も多いことに気を留めない
  41. 76 ©Social Databank, Inc. PR管理の人間ボット • PRを古い順に並べる • PRを作った人と一緒に作業する時間を設定 ◦

    入れられるものは Merge する ◦ 練り直すものは Close してタスクに戻す • これを10回ほど繰り返し、 100から40程度に 解決策 泥臭く
  42. 78 ©Social Databank, Inc. PR管理の人間ボット 1. しばらく進んでないPRを見つける 2. 発生している問題を聞く 3.

    解消の手を打つ 再発防止 人間ボット これをボットのように週1で繰り返す
  43. 86 ©Social Databank, Inc. • 弊社で取り組んだ様々な活動をご紹介 ◦ 何かしらご参考になるものがあれば嬉しいです • いくつかはAIに作って貰ったものも

    ◦ 「ついカッとなって改善」with AI オススメ • 「めんどくさい」に敏感に ◦ いつも使っているツールにもヒントが? まとめ
  44. 87 ©Social Databank, Inc. • 弊社で取り組んだ様々な活動をご紹介 ◦ 何かしらご参考になるものがあれば嬉しいです • いくつかはAIに作って貰ったものも

    ◦ 「ついカッとなって改善」with AI オススメ • 「めんどくさい」に敏感に ◦ いつも使っているツールにもヒントが? まとめ ところで、マウス操作って めんどくさいですよね