Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
他チームと⼀緒に⽣産性を⾼めるGaroonチーム
Search
Cybozu
PRO
June 15, 2020
Technology
0
1.9k
他チームと⼀緒に⽣産性を⾼めるGaroonチーム
Cybozu
PRO
June 15, 2020
Tweet
Share
More Decks by Cybozu
See All by Cybozu
つけまが降ってきた日
cybozuinsideout
PRO
1
220
「行ってよかった!」をみんなに広げる
cybozuinsideout
PRO
0
110
不具合の先にある面白さ~配属3か月目の新卒QAのいま~
cybozuinsideout
PRO
0
270
kintone開発チームの紹介
cybozuinsideout
PRO
1
79k
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
220
AIツール開発ワークショップ(Dify)【サイボウズ新人研修2025】
cybozuinsideout
PRO
21
25k
モバイル【サイボウズ新人研修2025】
cybozuinsideout
PRO
3
4.3k
Git/GitHub を使う上で知っておくと嬉しいかも Tips【サイボウズ新人研修2025】
cybozuinsideout
PRO
14
11k
GitHub Copilot活用【サイボウズ新人研修2025】
cybozuinsideout
PRO
15
15k
Other Decks in Technology
See All in Technology
Flutterコントリビューションのススメ
d_r_1009
1
330
Master Dataグループ紹介資料
sansan33
PRO
1
3.9k
QAEが生成AIと越える、ソフトウェア開発の境界線
rinchsan
0
1k
Zabbix Conference Japan 2025 ダッシュボードコンテストLT
katayamatg
0
150
仕様駆動 x Codex で 超効率開発
ismk
2
1.3k
エンジニアにとってコードと並んで重要な「データ」のお話 - データが動くとコードが見える:関数型=データフロー入門
ismk
0
440
バグと向き合い、仕組みで防ぐ
____rina____
0
240
Design and implementation of "Markdown to Google Slides" / phpconfuk 2025
k1low
1
390
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
2
420
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
6
2.4k
CloudFormationコンソールから、実際に作られたリソースを辿れるようになろう!
amixedcolor
0
110
re:Invent完全攻略ガイド
junjikoide
0
240
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
A better future with KSS
kneath
239
18k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Gamification - CAS2011
davidbonilla
81
5.5k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Documentation Writing (for coders)
carmenintech
76
5.1k
Making Projects Easy
brettharned
120
6.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Transcript
他チームと⼀緒に ⽣産性を⾼めるGaroonチーム 川畑 裕也 サイボウズ株式会社 Garoon開発チーム
川畑 裕也 @n1wat0n ▌Garoon開発チーム 新卒4年⽬ l新機能開発チーム, サポートエンジニアチームを経験 l現在は改善専⾨チームで⽴案/設計/実装 ▌⽣産性向上チーム 兼務8ヶ⽉
(後述)
▌組織の情報を集めるWebアプリケーション ▌⽇々頑張っている会社/⼈を⽀える製品 ▌たくさんの会社、ユーザ様に使われている l5,600 社 2,700,000 ユーザ
今⽇お話すること Garoonチームは 他チームと協⼒することで つらい状況を変えていった
Garoonのつらかった話 ▌開発⾯ l18年の開発で読みづらくなったコード群 l ちょっとした不具合を直すのに影響範囲が膨⼤ l⾃動テストの結果が出るのが1時間後 l 誰が落としたかわからない l 重要視されなくなっていく…
Garoonのつらかった話 ▌組織体制 lベテランが抜けていく l開発や問い合わせ業務を進めるだけでギリギリの配置 l2年⽬の僕と新⼈の後輩で問い合わせ対応(不具合調査、 障害調査)をやってる時期が⼀番つらかった
開発を取るか改善を取るか ▌技術的負債は溜まっていく⼀⽅ ▌限られた⼈数で開発も改善も進めていくのは厳しい 当時の発⾔
兼務するきっかけ ▌あるGaroonチームのメンバーが⽣産性向上チームと 兼務して改善活動を始める ▌Garoonがよくなっていくことを感じて⾃分も参加
⽣産性向上チームについて ▌チームを横断して開発基盤を整備するチーム 開発基盤の整備 • AWSにSSOする 仕組みづくり • 開発⽤のGCP, Office365の管理 •
本番環境への リリース⾃動化 • Garoonの改善⽀援 ⾃動化・効率化の⽀援
⽣産性向上チームと Garoonチームの取り組み ▌⾃動テスト環境の整備 ▌ローカル開発環境のDocker移⾏ ▌テスト⽤メールサーバの改善 ▌点在していたDocker Imageを管理しやすく集約 ▌⾃動テスト環境構築の⾼速化
⽣産性向上チームと Garoonチームの取り組み ▌⾃動テスト環境の整備 ▌ローカル開発環境のDocker移⾏ ▌テスト⽤メールサーバの改善 ▌点在していたDocker Imageを管理しやすく集約 ▌⾃動テスト環境構築の⾼速化
改善前の⾃動テスト ▌プルリクエスト作成時にユニットテストが⾛らない lマージしないと問題に気づけない ▌ビルドからE2Eテストが終わるまで最低1時間以上 lちょっとしたミスを直すのに⻑時間かかる ▌定期実⾏されてる⻑時間かかるJobがある lユニットテストのカバレージ取得に6時間
改善前のJenkins ▌⼤量の⾃動テスト/⾃動ビルド lどのJobの後にどのJobが動くのか わからない l新バージョンごとにJobを再作成 l 1週間以上かかることも ▌メンテナンスが⼤変︕
現状を整理 この辺にZoomロゴ この辺にZoomロゴ →
改善の取り組み ▌CI基盤: Jenkins → CircieCI l⼤量のジョブを少しづつ移⾏ ▌テストの実⾏⽅式 l直列 → 10並列
▌テスト環境 lVM使いまわし → Amazon EC2で都度作成 ▌不安定なテストケースを改修
改善後の⾃動テスト ▌プルリクエスト作成時にユニットテストが⾛らない → プルリクエスト作成時にユニットテストを実⾏ 圧倒的に⼿戻りが減った ▌ビルドからE2Eテストが終わるまで最低1時間以上 → 36分に削減 ▌定期実⾏されてる6時間かかるJobがある →
14分に削減
改善後のCircleCI ▌ジョブの関係もわかりやすくなった
改善をしてハッピーになった ▌Garoonメンバーの喜びの声を聞けた ▌暗い雰囲気はなくなってきた(体感) l これからも改善できる雰囲気になった ▌⽣産性向上チームに限らず他のチームと協⼒する機会が 増えた
Garoonチームだけでは 出来なかった ▌助けてくれるチームがいると⼼強い ▌客観的に「この状況はヤバい」と⾔ってもらえた l 他チームの状況を知らないと本当にヤバいか分からない l 変えていこう、やっていこうと思えた ▌他製品での改善の知⾒を活かして進められた l
CircleCIへ移⾏しよう l 他チームではこのツールを使っている
改善の種は尽きない ▌Garoonは改善の種の宝庫 l定期的にGaroon開発チームと⽣産性向上チームで 次にやることを話す会を設けている ▌改善したことでレガシーコードへの戦いに 挑めるようになった
俺たちの戦いはこれからだ︕
⼀緒に⽣産性を⾼める⼈を募集中!