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

アプリ開発者が主体となったCI整備の取り組み

Avatar for WHIsaiyo WHIsaiyo
September 05, 2025
3

 アプリ開発者が主体となったCI整備の取り組み

8/1に開催した、
20年以上愛される製品を作る、自社開発現場のリアル」の資料です。

井本 弦輝 / IMOTO Genki

Avatar for WHIsaiyo

WHIsaiyo

September 05, 2025
Tweet

More Decks by WHIsaiyo

Transcript

  1. © 2025 Works Human Intelligence Co., Ltd. AGENDA 3 01

    02 03 04 05 ⾃⼰紹介 継続して価値を届けることの重要性 CI⾃動化の重要性 取り組み まとめ
  2. © 2025 Works Human Intelligence Co., Ltd. 4 ⾃⼰紹介 株式会社Works

    Human Intelligence アプリエンジニア (2010年⼊社 / 16年⽬) 井本 弦輝/ Imoto Genki ▲去年参加したAWS re:Invent の帰りに寄ったグランドキャニ オンでの写真です 趣味:カンファレンス参加、CodingAgentと戯れる、リファクタリング、 ⾳楽制作、AmongUs(LV.88)、限界移動旅⾏、サウナなど 好きな技術トピック:Java、AWS(特にServerless系のサービス)、CI、 テスト(UnitTestからE2Eテストまで)、スクラムなど JAWS-UG、JJUG界隈のイベントによく出没します! もしどこかで出会った際にはよろしくお願いします◎ 2010年
 WHIに入社、人事領域の様々な業務機能、アプリケーション基盤の保守、新規機能開発、プロダクト コンセプトの作成などに従事。開発チームのマネジメントをしつつ、プロダクトの CI改善や自動テスト の整備、普及を推進する活動に積極的に取り組み続けてきた。 
 
 7月からは新プロダクトの立ち上げに開発者として取り組んでいる。
  3. © 2025 Works Human Intelligence Co., Ltd. 6 継続して価値を届けることの重要性 ソフトウェアはスケールメリットによって利益を産む

    • ⽣産は⼤変 • コピーやスケールはしやすい 多くのユーザーを獲得するために重要なことは 継続して価値を届け続け、⻑く愛される製品を作ること
  4. © 2025 Works Human Intelligence Co., Ltd. 7 継続して価値を届けることの重要性 WHIのシステム開発では

    お客様の問題を発⾒するところから運⽤までフルスタックで取り組み 価値の発⾒に全員で取り組んでいます WHIのエンジニア 顧客‧市場理解 問題発⾒‧分析 製品企画‧設計 デザイン 実装‧開発 テスト 運⽤ 事業開発‧マーケティング‧企画部⾨ IT企画部⾨ エンジニア部⾨ ⼀ 般 的 な 製 品 開 発
  5. © 2025 Works Human Intelligence Co., Ltd. 8 継続して価値を届けることの重要性 (※1)2023年度 ERP市場

    - ⼈事‧給与業務分野:ベンダー別売上⾦額シェア 出典:ITR「ITR Market View:ERP市場2025」 (※2)2024年度 ⾦額ベース (※3)2024年12⽉末時点の契約法⼈における「COMPANY ⼈事」の契約ライセンス数合計 「COMPANY」は、約1,200法⼈グループのお客様にご利⽤いただき、トップシェア(※1) を誇ります シェア率 年間契約継続率 (※2) 管理データ数 「COMPANY」で 管理している⼈事データ数 540万⼈(※3) ERP⼈事‧給与業務分野 シェアNo.1 (※1) 98%
  6. © 2025 Works Human Intelligence Co., Ltd. 10 CI⾃動化の重要性 CIとは?

    継続的インテグレーションのこと インテグレーションとは? 変更したコードをコードベースへ取り込んで検証すること ソフトウェアの検証ではビルド、静的解析、テストなどが⾏われます ソフトウェア開発は継続して⾏う必要がある そのためインテグレーションも継続して⾏う必要がある 継続して価値を届けるために重要な技術
  7. © 2025 Works Human Intelligence Co., Ltd. 11 CI⾃動化の重要性 どちらが簡単ですか?

    ‧1万⾏の変更を検証したら失敗しました。問題を修正してください ‧1⾏の変更を検証したら失敗しました。問題を修正してください
  8. © 2025 Works Human Intelligence Co., Ltd. 12 CI⾃動化の重要性 どちらが簡単ですか?

    ‧1万⾏の変更を検証したら失敗しました。問題を修正してください ‧1⾏の変更を検証したら失敗しました。問題を修正してください ⼩さな変更の⽅が修正が簡単 しかしCIが⾃動化されていないと変更を⼤きくする⼒が働きます
  9. © 2025 Works Human Intelligence Co., Ltd. 13 CI⾃動化の重要性 おそらくそう遠くない未来の話

    Coding Agentによって開発は全て⾃動化されました Issue を切ればAIがすぐにPRを上げてくれます 毎⽇2000個のPRが作成されます 検証をするのは誰? CIが⾃動化されていないなら 全て⼈間が検証する必要があります (AIのガードレールとしてのCI)
  10. © 2025 Works Human Intelligence Co., Ltd. 14 CI⾃動化の重要性 インストラクションとしてのCI

    テスト実⾏時のログ出⼒によって、Coding Agentの問題解決を助ける ⼈間が仕様書のない難しいプログラムを読む時にデバッグをするのに近い効果 インストラクションとしてのCIによってCoding Agentの⾃⼰修復能⼒が⾼まる
  11. © 2025 Works Human Intelligence Co., Ltd. 16 取り組み 5年ほど前の時点で当社のCI⾃動化の取り組みはかなり遅れていた

    アプリ開発者が主体となり⾃動化されたCIの整備を⾏っていった • UnitTestの⾃動化 • データベースに接続するUnitTestの⾃動化 • データベースを更新する出荷物の静的解析の⾃動化 • E2Eテストの⾃動化 ⾃動テストによるBugの検知やシフトレフトが進んだ
  12. © 2025 Works Human Intelligence Co., Ltd. 17 取り組み(仕組みの整備) •

    ⾃動化の仕組みを作ることが1stステップ ⾃動化して繰り返し実⾏されないCIは腐っていく • ⼩さいところから⾃動化 LinterやFormatterの導⼊やプレマージでのUnitTestの実⾏から導⼊する • 結合テストはコンテナ化とテストデータ整備が鍵 そこさえできればE2Eテストにも取り組める
  13. © 2025 Works Human Intelligence Co., Ltd. 18 取り組み(技術習得と⽂化醸成) •

    基礎知識の共有と習得 UnitTestの書き⽅のハンズオン会を繰り返し実施 • マインドセットを整える 外部講師の⽅による社内向け講演の実施
  14. © 2025 Works Human Intelligence Co., Ltd. 19 取り組み(技術習得と⽂化醸成) •

    実践の伴⾛ プロダクトコードにテストを書くハンズオン会の実施 新卒研修としてテストコードを書く会の実施 ここでも外部講師の⽅を招いたワークショップの実施 • コミュニティ形成 週間UnitTest追加ランキングの発表 継続してテストコードやリファクタリングについて語る会を開催 プロダクトごとにE2E推進室を運営 (※1) 出典:弊社note記事 https://note.com/works_hi/n/n852745c5f30e (※2) 出典:弊社note記事 https://note.com/works_hi/n/n7dbd403358da ※1 ※2
  15. © 2025 Works Human Intelligence Co., Ltd. 20 まとめ •

    ソフトウェアの開発では継続して価値を届けることが重要 • 継続して価値を届けるにはCIの⾃動化が重要 • 近年AIによるCodingの普及によってよりCIの重要性は増している • CI⾃動化には ◦ まず仕組みの整備が重要 ◦ 次に各開発者の技術習得と⽂化醸成が重要 • 開発者が主体となって取り組めば楽しい!