Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
他チームと⼀緒に⽣産性を⾼めるGaroonチーム
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Cybozu
PRO
June 15, 2020
Technology
1.9k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
他チームと⼀緒に⽣産性を⾼めるGaroonチーム
Cybozu
PRO
June 15, 2020
Transcript
22 slides
他チームと⼀緒に ⽣産性を⾼める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開発チームと⽣産性向上チームで 次にやることを話す会を設けている ▌改善したことでレガシーコードへの戦いに 挑めるようになった
俺たちの戦いはこれからだ︕
⼀緒に⽣産性を⾼める⼈を募集中!
More Decks by Cybozu
See All by Cybozu
「明日のテストを楽にしたい」から始まった小さな一歩!「自分たちには活かせないかも」を越えて、カンファレンスの学びを現場へ
cybozuinsideout
PRO
1
9
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
97k
新卒1年目QAが リリース基準の"なぜ"をたどってみた
cybozuinsideout
PRO
1
1k
kintone リサーチ副部/UXリサーチャー 業務紹介
cybozuinsideout
PRO
0
230
私たちが『JaSST協賛』から『外部コネクト』チームになった理由
cybozuinsideout
PRO
0
650
LLMでもいつものテスト技術〜意外と半分はこれまでのテストでした〜
cybozuinsideout
PRO
1
1.3k
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
1
1.8k
LLMアプリの品質保証
cybozuinsideout
PRO
1
930
技術広報チームに丸投げしない!「一緒につくる」スポンサー活動
cybozuinsideout
PRO
0
330
Other Decks in Technology
See All in Technology
Context != Context: One window, many lifecycles (AI Native DevCon, Nov 2026)
birgitta410
0
120
うちなーぐちが認識できるなら、秋田弁もいけるはず!? Amazon Transcribe方言チューニング検証
ryouto715
1
170
Go初心者のクラウドエンジニアが、デプロイを通して旨味を知っていく話
ryudai
1
200
Active Directory と Entra ID のむむむな関係
murachiakira
PRO
4
1.8k
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
250
あの日、見つかっていなかったらどうなっていたか
kazzpapa3
2
170
小さなエージェントから始めてみよう!実践コンテキストエンジニアリング
iwamot
PRO
0
120
Kiro Crew の Bot (続く役目を任せる窓口) | 目指せ Kiro マスター 12
inariku
PRO
2
380
Reticulum, le réseau cypherpunk dont vous avez besoin !
rlifchitz
0
140
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
2.5k
[JAWS Festa 2026]一番いい仕事は、請求書に現れない / jawsfesta2026
sh_fk2
2
510
並列度を下げたら速くなった — go build の重複コンパイルを実測で見る
tomoaki25
2
1.2k
Featured
See All Featured
Crafting Experiences
bethany
1
440
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
2
3.8k
Scaling GitHub
holman
464
140k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
900
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Building the Perfect Custom Keyboard
takai
2
950
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
2
520
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
750
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
990
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
480
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.6k
Ruling the World: When Life Gets Gamed
codingconduct
0
440