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
「ログイン画面が開きません」から始まるチーム改革の軌跡
Search
susumutomita
April 15, 2021
Programming
540
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「ログイン画面が開きません」から始まるチーム改革の軌跡
susumutomita
April 15, 2021
More Decks by susumutomita
See All by susumutomita
RedefiningValueThroughInternalCrossDepartmentSideProjects.pdf
susumutomita
0
72
DevOpsDaysTokyo2025社内副業で他部門へ_越境_して見えた価値再定義最大1か月のリードタイムを10分に短縮したDevOps実践.pdf
susumutomita
0
260
DevOpsDaysTaipei2024_How_a_Five-Hour-a-Week_Side_Project_Crossed_Silos_and_Saved_IT_service_Operators_.pdf
susumutomita
0
98
HashiTalks.pdf
susumutomita
0
110
DevOpsDaysTokyo2024_週5時間から始めた活動が組織の壁を越え__商用サービスの運用者を救った話.pdf
susumutomita
0
230
製造業にクラウドエンジニアを引き寄せろ!デンソーの採用プロセス改革とその挑戦
susumutomita
0
610
20%ルールから始めた活動が組織の壁を超え、会社のスタンダードを作り、商用サービスの運用者を救った話
susumutomita
0
250
おしゃれは足元の開発基盤から - 小さく始めるゼロトラスト101
susumutomita
1
560
デンソーデジタルイノベーション室SREチーム物語(スクラムは多能工というけれどやっぱり専門性が求められるよね) / di-sre-story
susumutomita
0
1.1k
Other Decks in Programming
See All in Programming
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
280
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
120
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
590
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4k
メールのエイリアス機能を履き違えない
isshinfunada
0
250
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
170
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
580
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
170
今さら聞けない .NET CLI
htkym
0
210
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
220
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
380
The SEO Collaboration Effect
kristinabergwall1
1
530
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Thoughts on Productivity
jonyablonski
76
5.3k
Agile that works and the tools we love
rasmusluckow
331
22k
The World Runs on Bad Software
bkeepers
PRO
72
12k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Product Roadmaps are Hard
iamctodd
55
12k
Faster Mobile Websites
deanohume
310
32k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
2021年4⽉15⽇ DevOpsDays Tokyo 2021 株式会社デンソー 島津直道、冨⽥進 株式会社デンソーテン 迎諒 「ログイン画面が開きません」 から始まるチーム改革の軌跡
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 島津直道 Naomichi Shimazu デンソーSRE室 寿司を握って⾷べるエンジニア 冨⽥ 進 Susumu Tomita デンソーSRE室 Site Reliability Engineering team Software Engineer 迎 諒 Ryo Mukai デンソーテン ICT技術部 ミュージシャン兼エンジニア(新婚) Who are speakers https://codezine.jp/article/detail/11391 2
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 今⽇持ち帰って欲しいこと 1. ⼩さいチームから変えていこう 2. いきなり100点を⽬指さない⼀つ⼀つ変えていく 3. 同志を⾒つけよう 3
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 1. 組織横断チーム結成 2. どんどん増える課題 3. ⼩さなチームから取り組みを変えた 4. 僕らのチームが成し遂げたこと 5. 学んだこと Agenda 4
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 組織横断チーム結成 KeyCloakのログイン画⾯を表⽰せよ 1 5
© DENS O C ORPORATION All Rights Reserved. /00 KeyCloak(OSSの認証・認可ソフトウエアである)を使⽤したあるサービスの開発チームでは
リリースに向けて着々と開発作業を進めていた。 そんなある⽇、チームのキーマンがとある事情で離脱することになった。 あるプロジェクトの悲劇 DevOpsDays Tokyo 2021 / Apr 15, 2021 マジか…… 6
© DENS O C ORPORATION All Rights Reserved. /00 キーマンが離脱しても開発は進む、問題が⾒つかれば当然、構成変更も⾏う。
この⽇は認証・認可に使⽤しているKeyCloakの構成変更を⾏った。 ちょっとした構成変更だし、インフラもコード化してあるし⼤丈夫! 変更した結果…… 暗雲が立ち込める DevOpsDays Tokyo 2021 / Apr 15, 2021 7
© DENS O C ORPORATION All Rights Reserved. /00 ログインが画面が出なくなった
コンニチワ DevOpsDays Tokyo 2021 / Apr 15, 2021 8
© DENS O C ORPORATION All Rights Reserved. /00 KeyCloak周りを開発したのはキーマン。
細かい知⾒は引き継げておらず、なぜログイン画⾯が出ないのかわからない。 それでもプロジェクトは待ってくれない。 3週間後には顧客との結合試験の予定なのに、このままではすべての試験に影響が出てしまう。 途⽅にくれる担当者…… 焦る担当者 DevOpsDays Tokyo 2021 / Apr 15, 2021 9
© DENS O C ORPORATION All Rights Reserved. /00 部⻑も巻き込み、KeyCloakの知⾒を持つ⼈を求めてさまざまな知り合いにメールを送るもの
の⾒つからない…… そんな中、⼀⼈だけKeyCloakを知っていると応答を返した⼈がいた。 それがSRE室のメンバーだった。 つづく 一筋の光が差す DevOpsDays Tokyo 2021 / Apr 15, 2021 10
© DENS O C ORPORATION All Rights Reserved. /00 SRE室とは
DevOpsDays Tokyo 2021 / Apr 15, 2021 Siteの プロダクト Reliability実現するために 信頼性、性能効率性、セキュリティ Engineeringを活⽤して貢献する Cloud , Open Source, プログラミング SREチームはプロダクトを開発しているチームと密 に連携して以下を担う • 品質要件の定義と評価、改善⽀援 • 運⽤の要件定義と機能構築、オペレーション⽀ 援 • PaaS設計・構築⽀援 SREはGoogle社が提唱、実践しているシステム管理 とサービス運⽤の⽅法論であり役割 ENGINEERING能⼒を⾝に着けた運⽤チームがこの 役割を担う 11
© DENS O C ORPORATION All Rights Reserved. /00 求められるスキルセットが広く⼀⼈ではカバーできないことは当然ある
❖ チームメンバでお互いの強みを活かし協⼒しながら仕事を進めている ❖ 困ったときにはペアワーク、複数⼈で⼀つの問題に取り組むモブワークを積極的に利⽤ SRE室の働き方 DevOpsDays Tokyo 2021 / Apr 15, 2021 12
© DENS O C ORPORATION All Rights Reserved. /00 SRE室でKeyCloakを使⽤して開発基盤を構築していたため、コラボレーションが始まった。
しかし、いくつかの懸念があった。 懸念 ❖ 独⽴した調査チームで動いて、すでに解決済みや結論が出ていることに時間を費やして しまう ❖ 直接環境を変更することでさらなる障害を発⽣させてしまう ❖ 働き⽅に違いがあるが、コミュニケーションをうまく取れるか 取り組み ❖ プロジェクトの背景も抑えている有識者とチームを作り⼀緒に働いてもらう ❖ ソースコードも公開してもらい、⼀緒に読み込んでいく ❖ 意識的に雑談を多くする チームビルディング前のぼくらの懸念 DevOpsDays Tokyo 2021 / Apr 15, 2021 13
© DENS O C ORPORATION All Rights Reserved. /00 避けたかったこと
確定でない情報は混乱を招くかもしれない と思って、 情報共有しない (でも、本当は悪い情報ほど早く共有してほしい) 解決⽅法 ❖ 意識的に雑談や業務に関係ない話をしてコミュニケーションを取る ➢ プレッシャーのかかる状況だったが、なんでも⾔い合える⼼理的なセーフティー ネットの⽤意 ❖ 確定でない情報は事実確認を丁寧に⾏う ➢ 「そう思う」「⾔ってた」などのキーワードが含まれていたら要注意 ➢ 今わかっている課題について優先順位をつけて⼀つづつ確実に取り組んでいく Why雑談? DevOpsDays Tokyo 2021 / Apr 15, 2021 14
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 どんどん増える課題 2 15
© DENS O C ORPORATION All Rights Reserved. /00 KeyCloakのログイン画⾯が表⽰できない問題はすぐに解決した。
しかし次々と課題が⾒つかった。 ❖ ログアウトできない ❖ 認証⽅式をAWSのロードバランサー経由からNginxを使⽤した⽅式に変更してほしい ❖ 顧客システムと接続してほしい ❖ 顧客システムからはVPNで接続しているので認証をスキップしてほしい ❖ 外部のシステムへの接続⽅法をマネージドサービスから他のソリューションへ変更でき るか技術検証をしてほしい ❖ KeyCloakのログイン画⾯をカスタマイズしたものへ変更してほしい ❖ 監視についての検討が進んでいなかった ❖ APIの仕様にセキュリティ関連の課題を⾒つけてしまった ❖ なんかエラーがでた など どんどん増える課題と追加要望 DevOpsDays Tokyo 2021 / Apr 15, 2021 16
© DENS O C ORPORATION All Rights Reserved. /00 KeyCloakのログイン画⾯が表⽰できない問題はすぐに解決した。
しかし次々と課題が⾒つかった。 ❖ ログアウトできない ❖ 認証⽅式をAWSのロードバランサー経由からNginxを使⽤した⽅式に変更してほしい ❖ 顧客システムと接続してほしい ❖ 顧客システムからはVPNで接続しているので認証をスキップしてほしい ❖ 外部のシステムへの接続⽅法をマネージドサービスから他のソリューションへ変更でき るか技術検証をしてほしい ❖ KeyCloakのログイン画⾯をカスタマイズしたものへ変更してほしい ❖ 監視についての検討が進んでいなかった ❖ APIの仕様にセキュリティ関連の課題を⾒つけてしまった ❖ なんかエラーがでた など どんどん増える課題と追加要望 DevOpsDays Tokyo 2021 / Apr 15, 2021 何からやればいいの? 17
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 ⼩さなチームから取り組みを変えた 3 18
© DENS O C ORPORATION All Rights Reserved. /00 ❖
モブワーク ❖ プランニングの導⼊ ❖ ふりかえりを導⼊ ❖ ⾒える化 ❖ ログを残す 取り組みの変え方 DevOpsDays Tokyo 2021 / Apr 15, 2021 19
© DENS O C ORPORATION All Rights Reserved. /00 常にZoomをつないだ状態でモブで作業する。
メンバー間で理解に差ができないようにこまめにドライバーを交代する。 作業中は1H〜1.5Hごとに休憩を意識的に⼊れる。(定期的にお休みして頭をリフレッシュ) →議論が⽩熱している時こそ落ち着くために休憩を挟む。議論が堂々巡りの時ももちろん。 モブワーク ※画像はイメージです DevOpsDays Tokyo 2021 / Apr 15, 2021 20
© DENS O C ORPORATION All Rights Reserved. /00 ❖
常に同期、すべての成果物を常時レビューしている状態となるので、進捗共有のための 会議やレビューを別途持つ必要がなくなった ❖ 難しい問題や障害調査時にアイデアがどんどんでてくる ❖ みんなで進める安⼼感がある ❖ でも疲れる モブワークメインで進めるとどのようになるのか DevOpsDays Tokyo 2021 / Apr 15, 2021 21
© DENS O C ORPORATION All Rights Reserved. /00 解決すべき課題が増え、
何をいつまで解決すればよいか? 優先度が⾼いものはなにか? の把握が難しくなってきたため導⼊した。 毎週ふりかえり後に ❖ 優先順位の⾒直す ❖ バックログのサイズをS(半⽇)・M(1⽇)・L(3⽇)・XL(それ以上)で⾒積もる ➢ XLの場合は抽象度が⾼く⾒積もれないと判断し、S・M・L(分量が想像できるレベ ル)までタスクを分割することを考える ❖ ⼀週間後どこまで終わらせるか⽬標をたてる プランニングを導入 DevOpsDays Tokyo 2021 / Apr 15, 2021 22
© DENS O C ORPORATION All Rights Reserved. /00 プランニングを導入
DevOpsDays Tokyo 2021 / Apr 15, 2021 タスクのサイズを ⾊で表現 23
© DENS O C ORPORATION All Rights Reserved. /00 毎⽇終業前の10分間でふりかえりをやってみる
↓ 1ヶ⽉くらいたってプロジェクトが⻑期戦になりそうだとわかった ↓ 毎週1-2時間強制的にふりかえりをやってみる ↓ ふりかえりで出てきた課題について少しずつ改善をしていった ふりかえりを導入 DevOpsDays Tokyo 2021 / Apr 15, 2021 24
© DENS O C ORPORATION All Rights Reserved. /00 ふりかえりを導入
DevOpsDays Tokyo 2021 / Apr 15, 2021 25
© DENS O C ORPORATION All Rights Reserved. /00 バックログはMiroにすべて集約し、優先順位をつけ、やるべきことを明確化してタスクに集中
できるようにした。 見える化 DevOpsDays Tokyo 2021 / Apr 15, 2021 26
© DENS O C ORPORATION All Rights Reserved. /00 属⼈化を防ぎ、全員が情報を共有している状態を作るために、常にログを残すようにした。
❖ 作業ログ ❖ 設計意図 ❖ 思考過程 ❖ 議事録 不要になったものについては適宜整理した。 ログを残す DevOpsDays Tokyo 2021 / Apr 15, 2021 27
© DENS O C ORPORATION All Rights Reserved. /00 ログを残す
DevOpsDays Tokyo 2021 / Apr 15, 2021 28
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 僕らのチームが成し遂げたこと 4 29
© DENS O C ORPORATION All Rights Reserved. /00 課題を⼀つ⼀つ着実に対処していった結果
❖ すべての課題を解決してスケジュール通りにリリースすることができた ❖ このチームの⽂化を他のチームにも広めるきっかけを作れた ❖ プロジェクトの進め⽅の改善の働きかけ ➢ 技術検証なしに難易度の⾼い機能(無停⽌マイグレーション)の実装を顧客にコミッ トしようとしていたのを⾒直した 僕らのチームが成し遂げたこと DevOpsDays Tokyo 2021 / Apr 15, 2021 30
© DENS O C ORPORATION All Rights Reserved. /00 ❖
状況の整理や課題の明確化が必要だったもの ➢ ログアウトできない問題 ➢ 監視についての検討が進んでいなかった ➢ APIの仕様にセキュリティ関連の課題を⾒つけてしまった ➢ なんかエラーが出た ❖ 要件を洗い出し地道に実装したもの ➢ 認証⽅式をAWSのロードバランサー経由からNginxを使⽤した⽅式に変更してほしい ➢ 顧客システムと接続してほしい ➢ 顧客システムからはVPNで接続しているので認証をスキップしてほしい ➢ KeyCloakのログイン画⾯をカスタマイズしたものへ変更してほしい ❖ 実装⽅式の変更を提案したもの ➢ 外部のシステムへの接続⽅法をマネージドサービスから他のソリューションへ変更できるか 技術検証をしてほしい それぞれの課題への対処 DevOpsDays Tokyo 2021 / Apr 15, 2021 31
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 学んだこと 5 32
© DENS O C ORPORATION All Rights Reserved. /00 ログインできたと思ったら今度はログアウトができない...
調べてみた結果、まだ実装されていないKeyCloakの機能を使わないとログアウトできないこ とがわかった。 そして、それがわかった当⽇の夜にその機能が実装され、無事解決。 仕様を決める人と開発する人に距離があると痛い目を見る 仕様チーム 開発チーム あとはよろしく できへんやん DevOpsDays Tokyo 2021 / Apr 15, 2021 33
© DENS O C ORPORATION All Rights Reserved. /00 ログインできたと思ったら今度はログアウトができない...
調べてみた結果、まだ実装されていないKeyCloakの機能を使わないとログアウトできないこ とがわかった。 そして、それがわかった当⽇の夜にその機能が実装され、無事解決。 仕様を決める人と開発する人に距離があると痛い目を見る 仕様チーム 開発チーム あとはよろしく できへんやん 仕様と開発は密に連携しよう DevOpsDays Tokyo 2021 / Apr 15, 2021 34
© DENS O C ORPORATION All Rights Reserved. /00 たまたまKeyCloak側の実装が間に合ったので解決したが
❖ 実現可能性の確認が取れていない状態で顧客にコミットするのはリスクがある ❖ ⾃分で動かすことが⼤事、知っているとできるとの間にはギャップがある ❖ 難易度が⾼い機能については特に技術的スパイクを適宜⾏う 技術検証してから開発進める DevOpsDays Tokyo 2021 / Apr 15, 2021 35
© DENS O C ORPORATION All Rights Reserved. /00 モブワークから学びを得たよという話
DevOpsDays Tokyo 2021 / Apr 15, 2021 これまでは単独プレイ、⾃分が⼀番の専⾨家 悩んだときに頼れるのは、ネットの情報と勘。 ⾃分がその道のパイオニアになるのだ! もしネットでも載ってないことだったらもう詰む。⼀⼈で泣くしかなかった。 新しい⽂化、モブワーク 同じ課題を複数⼈で頑張って対処するのは初めての体験。 VSCodeのLiveShareとか、Nowなツール、最⾼。 ⾊んな知⾒が集まると、⾊んな勘所が集まるので、結果的に早く課題を解決できる。 普段なら独り⾔で終わる疑問が、独り⾔にならない。 ⼀⼈で5分考えても分からないことは、きっともう分からない。みんなで考えれば、 きっといつかはアイデアが出てくる。 ⼀⼈で悩むな、みんなで悩め! 36
© DENS O C ORPORATION All Rights Reserved. /00 モブワークが機能するコツ
DevOpsDays Tokyo 2021 / Apr 15, 2021 モブワークに慣れたチームに⼈が⼊ってくる形は機能する 今回はモブワークに慣れたチームに新しいメンバーが⼊ってくる形だったのでうまく機能した。 でもモブワークに興味がない、理解がない状態から始めるのは難しかったと思う。 モブワークを始めるときに向いているタスク ❖ 障害調査 ❖ アイデア出し ❖ 構成図の作成とか技術的な話 コミュニケーションを取りながら進める必要があるものには適⽤しやすく、効果もわかりやすい モブワークに興味がある⼈でベースを作り広げていく 37
© DENS O C ORPORATION All Rights Reserved. /00 ❖
次の開発ではもう少し⼤きなチームでこの働き⽅を試してみる ➢ モブワークを徐々に取り⼊れてみる ❖ 技術者間の交流を活発に ➢ SRE室が開催しているテックトークへの招待 ❖ 学びを活かす ➢ 難易度が⾼い部分については、技術的スパイクを実施してからコミットする コラボレーションは続く DevOpsDays Tokyo 2021 / Apr 15, 2021 38
© DENS O C ORPORATION All Rights Reserved. /00 使用したツール群
コミュニケーションツール Slack , Amazon Chime 情報共有基盤 DocBase タスク管理 Miro 共同編集 Visual Studio Code Live Share DevOpsDays Tokyo 2021 / Apr 15, 2021 39
© DENS O C ORPORATION All Rights Reserved. /00 DevOpsDays
Tokyo 2021 / Apr 15, 2021 今⽇持ち帰って欲しいこと 1. ⼩さいチームから変えていこう 2. いきなり100点を⽬指さない⼀つ⼀つ変えていく 3. 同志を⾒つけよう 40
None