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
LLMでもいつものテスト技術〜意外と半分はこれまでのテストでした〜
cybozuinsideout
PRO
1
15
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
880
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
76k
LLMアプリの品質保証
cybozuinsideout
PRO
1
360
技術広報チームに丸投げしない!「一緒につくる」スポンサー活動
cybozuinsideout
PRO
0
190
テクニカルライター (グループウェア) について
cybozuinsideout
PRO
0
150
つけまが降ってきた日
cybozuinsideout
PRO
1
620
「行ってよかった!」をみんなに広げる
cybozuinsideout
PRO
0
200
サイボウズの QAエンジニアについて / about cybozu QA
cybozuinsideout
PRO
3
4.6k
Other Decks in Technology
See All in Technology
最強のAIエージェントを諦めたら品質が上がった話 / how quality improved after giving up on the strongest AI agent
kt2mikan
0
180
フロントエンド刷新 4年間の軌跡
yotahada3
0
330
組織全体で実現する標準監視設計
yuobayashi
3
490
実践 Datadog MCP Server
nulabinc
PRO
2
200
今のWordPress の制作手法ってなにがあんねん?(改) / What’s the Deal with WordPress Development These Days?
tbshiki
0
450
楽しく学ぼう!ネットワーク入門
shotashiratori
4
3.3k
Kubernetesにおける推論基盤
ry
1
380
Cortex Code CLI と一緒に進めるAgentic Data Engineering
__allllllllez__
0
220
S3はフラットである –AWS公式SDKにも存在した、 署名付きURLにおけるパストラバーサル脆弱性– / JAWS DAYS 2026
flatt_security
0
1.8k
Go標準パッケージのI/O処理をながめる
matumoto
0
210
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
8
7.2k
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
210
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
150
Navigating Team Friction
lara
192
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
How to build a perfect <img>
jonoalderson
1
5.3k
Amusing Abliteration
ianozsvald
0
130
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
290
[SF Ruby Conf 2025] Rails X
palkan
2
830
Documentation Writing (for coders)
carmenintech
77
5.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
220
The browser strikes back
jonoalderson
0
790
Fireside Chat
paigeccino
42
3.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
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開発チームと⽣産性向上チームで 次にやることを話す会を設けている ▌改善したことでレガシーコードへの戦いに 挑めるようになった
俺たちの戦いはこれからだ︕
⼀緒に⽣産性を⾼める⼈を募集中!