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
ゼロからつくったリモートスクラムチームはスクラムに挫折し解散しました-スクラムフェス札幌2020
Search
Mizuki Kusakabe
November 06, 2020
Technology
1
6k
ゼロからつくったリモートスクラムチームはスクラムに挫折し解散しました-スクラムフェス札幌2020
2020/11/6、スクラムフェス札幌での発表スライドです。
Mizuki Kusakabe
November 06, 2020
Tweet
Share
More Decks by Mizuki Kusakabe
See All by Mizuki Kusakabe
ふりかえりカンファレンス2023「インフラ構築をふりかえりでカイゼンする! - お互い何してるかわからないチームから、モブ・ネットワーク機器コンフィグ作成をやるチームへ -」
n0mzk
1
1.4k
Other Decks in Technology
See All in Technology
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
大幅アップデートされたRagas v0.2をキャッチアップ
os1ma
2
520
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
270
C++26 エラー性動作
faithandbrave
2
640
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
160
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
440
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
Turing × atmaCup #18 - 1st Place Solution
hakubishin3
0
460
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
360
Wantedly での Datadog 活用事例
bgpat
1
400
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
180
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
590
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Done Done
chrislema
181
16k
How STYLIGHT went responsive
nonsquared
95
5.2k
It's Worth the Effort
3n
183
28k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Side Projects
sachag
452
42k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Making the Leap to Tech Lead
cromwellryan
133
9k
RailsConf 2023
tenderlove
29
940
Automating Front-end Workflow
addyosmani
1366
200k
Designing for Performance
lara
604
68k
Transcript
ゼロからつくった リモートスクラムチームは スクラムに挫折し解散しました BBSakura Networks 株式会社 モバイルコアエンジニア 日下部 水規 Twitter:
@n0mzk / Discord: @n0mzk #1823 1
ゼロからつくる!リモートスクラムチーム 1月の私 2 https://confengine.com/scrum-fest-sapporo-2020/proposal/14135
• 私、チームから離脱 • チームはスクラムやめる • チーム解散! スクフェス札幌延期 3
4 https://confengine.com/scrum-fest-sapporo-2020/proposal/14135 9月の私 ゼロからつくったリモートスクラムチームはスクラ ムに挫折し解散しました
• スクラムむずかしい • どうやったらスクラムやれるのかわからない • でも、「じょうずに」ソフトウェアをつくりたい じょうずに: • みんなで •
たのしく • 儲かる(求められる)ものを • 適切なスピードで スクラムやってみて思ったこと 5
• 2019年8月設立 • BBIXとさくらインターネットが出資するジョイントベンチャー • 自社開発のソフトウェアモバイルコアで、モバイルネットワークソリューション を提供する会社 • コロナ前からフルリモート BBSakura
Networksとは 6
• モバイル通信を処理する設備 (= モバイルコア)をソフトウェアで 自社開発 • それを使って便利な通信サービス を世の中に提供する モバイルコア? モバイルネットワークソリューション?
モバイルネットワーク BBSakuraで 開発しているのは このへん B to B to B 7 • 例)さくらのセキュアモバイルコネクト • 例)さくらのクラウド ショートメッセージサービス
おはなしするプロジェクト 必要なスキル: • ネットワークの知識 • モバイルネットワークの知識 • システム設計力 • プログラミング力(Golang)
• チーム開発力 • 英語力(国際標準読む) • など モバイルネットワーク 今日おはなしする プロジェクトで つくろうとしているもの 新しいコンポーネントをつくり、新しいソリューションを提供する! モバイルコアのつくりかた : 1. 提供したいソリューションがある 2. (モバイルネットワーク内の、) 必要なコンポーネントが決まる 3. 国際標準にのっとって開発する 8 参考: GoでEPC作って本番運用している話 https://www.janog.gr.jp/meeting/janog42/application/files/6615/3132/4801/JANOG42_kusakabe.pdf
チームの歴史 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
9 自走期 いつもどおり進める期 10月
10 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
自走期 いつもどおり進める期 10月 チーム結成前夜 - 2019/9 ~ 10
チーム結成前夜 - 2019/9 ~ 10 こういうものつくりたい! 顧客になりそうな人たちもノッてくれている! 4月ぐらいから顧客設備と相互接続試験やりたい! この部分をやりたい! 社長・PO
後の テックリード エンジニアたち 13 必要なコンポーネントもマイルストンも見えてきた 早く開発するためにスクラムでやろう!
チーム結成前夜 - 2019/9 ~ 10 14 だが、 • 開発は始まらない! •
メンバーは決まらない! • やりたい気持はあるがみんな業務を持っている!
チーム結成前夜 - 2019/9 ~ 10 15 • 救いをもとめてEOF2019へ • OSTでプロジェクトの始めかたを相談
• それをもとに、始めかたを提案
チーム結成前夜 - 2019/9 ~ 10 16 マイルストン・スケジュールの合意 メンバーは挙手制で決める 前提知識習得のための課題提示 POに夢を語ってもらう
キックオフ実施 始動までのスケジュールの提案 も追加
チーム結成! - 2019/11 スクラムマスターやります! 開発やりません! チーム開発初めて! スクラム初めて! SCRUM BOOT CAMP
THE BOOK超おもしろかった! やります! チーム開発初めて! Goでの開発ほぼ初めて モバイルコアの開発初めて! スクラム初めて! 全体像の設計しました 国際標準からスプリントバックログ作っておきます みんなが各機能足していけるようにベース部分作っておき ます しばらくはコードレビュー全部やります スクラムは前職で雑に経験したのでだいたいわかる やります! モバイルコアの開発初めて! スクラム初めて! やります! Goでの開発初めて! モバイルコアの開発初めて! スクラム初めて! 私 @北海道 新卒 エンジニア @東京 フロントエンド エンジニア @大阪 業務系 エンジニア @東京 テックリード @北海道 やります! チーム開発10年ぶり! Goでの開発ほぼ初めて! モバイルコアの開発初めて! スクラム初めて! 低レイヤー出身 エンジニア @大阪 17
チーム結成! - 2019/11 Phase 2 開発完了 Phase 1 開発完了 開発開始
社内ラボ試験 結成時に合意したスケジュール: Phase 3 開発完了 相互接続試験開始 社内ラボ試験 18 11月 2020年 1月 2019年 7月 4月 10月
19 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
自走期 いつもどおり進める期 10月 立ち上げ期 - 2019/11 ~ 12
• スクラムをやってみる! • チームのルールを決める! • デイリースクラム代わりのSlack投稿 • スプリントミーティングのやりかた • Doneの定義
• スプリントバックログのタスクを個人に割り振る • 1週間スプリントをまわしはじめる 立ち上げ期 - 2019/11 ~ 12 • テストを書き、 CI通る • プルリク出す • レビューしてマージされる 20 • フルリモート & フレックスなので非同期でやる • Slackに1日1回発言する ◦ 今日やったこと ◦ 明日やること ◦ 困っていること(なにかあれば) ◦ なにか一言 ← コミュニケーション促進のため必須 • 毎週水曜日に 2時間、Google meetで • 前スプリントのバックログが Doneになっているか確認 • 次スプリントの計画 • 良かったこと・困っていること・改善策
21 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
自走期 いつもどおり進める期 10月 自走期 - 2020/1 ~ 2
• 他プロダクトで障害多発 • 根本対策としての大掛かりな開発を優先するため、兼務していたSM・TLがこ のチームを離脱することに 自走期 - 2020/1 ~ 2
※ この先は私はチームを抜けてしまったので外からしか見ていません。 この先の話は、私が外から見た様子と、メンバーたちに後から聞いた話で構成しています。 22
• SM・TL不在によりチームは自走しだす • 自分たちでスプリントバックログを作る • プラクティスを取り入れてみる • モブプロ • ビデオ会議で口頭コミュニケーションを増やす
• タスクは個人に割り振るが、徐々にタスクの境目がなくなり互いに助け合える状態に • プランニング通りにいかなくても柔軟に相談し計画し直せる • 「ぬるっと進みだした」 23 自走期 - 2020/1 ~ 2
24 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
自走期 いつもどおり進める期 10月 いつもどおり進める期 - 2020/3 ~ 6
• 形式的なふりかえり & プランニングを行う週次ミーティング • 進行役は交代でやるが、スクラムマスター的な動きをする人は不在 • デイリースクラム(Slack投稿)廃止 • 書き忘れる、時間帯が合わない、互いに反応していない、「今日の一言」毎日書くの辛
い • 「このあたりからスクラムではなかった」 • 「このままプロジェクトやっていていいのかな、と自信をなくすこともあった」 • それでも「いつもどおり」バックログをつくり、割り振り、タスクを片付けて進め ていける いつもどおり進める期 - 2020/3 ~ 6 25
26 フェーズ2開発完了 & 社内でのラボ試験クリア! 加速期 立ち上げ期 前夜 11月 2020年 1月
2019年 7月 4月 自走期 いつもどおり進める期 10月 フェーズ2・ラボ試験完了! - 2020/6
フェーズ2・ラボ試験完了! - 2020/6 Phase 2 開発完了 Phase 1 開発完了 Phase
3 開発完了 開発開始 相互接続試験開始 社内ラボ試験 社内ラボ試験 Phase 2 開発完了 社内ラボ試験 28 11月 2020年 1月 2019年 7月 4月 10月
チームの解散 - 2020/6 1つのコンポーネントを1人で開発してく る! 社長 開発スピードアップのため一部外注しよう 合意! 別プロジェクトでフロントエンド力が足 りない!助けに行く!
33 解散!
新体制発足! - 2020/7 外注先 契約期間は4か月! この期間で次のフェーズの開発 & 社内ラボ試験まで完了して、 顧客企業との相互接続試験ができる状態にする! 34
Phase 2 開発完了 Phase 1 開発完了 Phase 3 開発完了 開発開始
相互接続試験開始 社内ラボ試験 社内ラボ試験 Phase 3 開発完了 相互接続試験開始 社内ラボ試験 35 11月 2020年 1月 2019年 7月 4月 10月 Phase 2 開発完了 社内ラボ試験 新体制発足! - 2020/7
36 加速期 立ち上げ期 前夜 11月 2020年 1月 2019年 7月 4月
自走期 いつもどおり進める期 10月 加速期 - 2020/7 ~ 10
• 2か月かけて仕様検討し、サービス・システム・開発の全体像を理解 • その後、開発に着手 • これまで開発してきた土台 + 全体像が見えたことで開発が加速 • 「無限のタスク・無限の時間ではここまで進まなかったと思う」
加速期 - 2020/7 ~ 10 8月、 新メンバー(国際標準のプロ)入社 によりさらにブースト 37
フェーズ3予定通り完了! - 2020/10 Phase 2 開発完了 Phase 1 開発完了 Phase
3 開発完了 開発開始 相互接続試験開始 社内ラボ試験 社内ラボ試験 Phase 3 開発完了 相互接続試験開始 社内ラボ試験 38 11月 2020年 1月 2019年 7月 4月 10月 Phase 2 開発完了 社内ラボ試験
• スクラムむずかしい • どうやったらスクラムやれるのかわからない • でも、「じょうずに」ソフトウェアをつくりたい じょうずに: • みんなで •
たのしく • 儲かる(求められる)ものを • 適切なスピードで 再掲:スクラムやってみて思ったこと 39
• メンバーみんなゼロからスタートした • チーム開発経験、アジャイル・スクラムの理解や経験、ソフトウェア開発経験、ドメイン 知識、ほとんどない • 会社としてもチーム開発が初めて • これまでは個人開発ばかり •
フルリモートでのチーム開発も、もちろん初めて • スクラム開発も、もちろん初めて • 新規プロダクト = いままでだれもつくったことがないものをつくっている むずかしくて当然! しかし考えてみれば、 40
• チーム立ち上げ時はオフラインで合宿やればよかった • WIP = 1, Swarmingすればよかった • プロジェクト兼務よくない スクラム的な反省
41
• 「スクラムじゃない」状態になってから開発は進みだした • (スクラム的ではない?)仕様検討のみに時間をかけたことで加速した • スクラムのフレームワークにのっとることよりだいじなことがあったのだろう • じょうずにソフトウェアをつくるのには、何がだいじなのか? このチームでは、 42
• 開発者それぞれが • 価値を提供しようとする相手の現状とイシューを知っていて • 自分たちのつくっているものが相手にとって価値があるのだと理解・納得して いて • つくる道筋が見通せていること •
それらによって、信念と自信をもって手を動かせること だいじだと思うこと 43
• 経験がなくてもやりたいって言えるのが嬉しかった • 自分がやりたいって言ったのでやるしかなかった • いま振り返ってみたら、結局自分で手を動かす以外に方法はなかった メンバーたちの声 44
• 開発者には技術力が必要 • スクラムだからとか関係ない • ソフトウェアをつくるには技術が必要 • 技術を身につけるには、経験するしかない • 自分で国際標準を読んでコードを書いてみる、設計してみて失敗して学ぶ
信念と自信をもって手を動かすために 45
• 経験から学んでよりよくしていくのは、ソフトウェアをつくることにおいても、人 間や組織をつくることにおいても同じようにだいじ • 経験と学習をくりかえして、じょうずにソフトウェアをつくれるエンジニア・会社 になりたい なんか聞いたことあるやつ 46
全ての「モノ」がつながる社会を支える テクノロジーカンパニー 47
一緒にソフトウェアを作る仲間を募集しています! https://recruit.softbank.jp/career/positions/detail/000920/ ※ 2020/11/6 現在のURLです 48 お気軽にご連絡ください! Twitter: @n0mzk Discord:
@n0mzk #1823