Slide 1

Slide 1 text

Presented by @makocchi 1 CloudNative Developers JP #13 Cloud Nativeチーム作りを目指す ぽい

Slide 2

Slide 2 text

Presented by @makocchi cndjp #13 2 今日のお話はちょっと技術から離れて チーム作りのお話です なお、ほとんどが個人的に思っていることなので 参考程度に聞いてください

Slide 3

Slide 3 text

Presented by @makocchi cndjp #13 3 Makoto Hasegawa Working at // AI Division, CyberAgent, Inc Currently // Develop and maintain private OpenStack cloud. Develop and maintain Kubernetes as a Service platform. CKA (Certified Kubernetes Administrator) CKA-1700-0150-0100 CKAD (Certified Kubernetes Application Developper) CKAD-1800-0005-0100 Job Title // Technical Lead Infrastructure Engineer WHO am I Twitter // @makocchi Facebook // makocchi0923 Hobby // Playing bass

Slide 4

Slide 4 text

Presented by @makocchi cndjp #13 4 TODAY’S AGENDA Cloud Nativeなチームとは 7つの行動指針 努力していること まとめ

Slide 5

Slide 5 text

Presented by @makocchi cndjp #13 5 Cloud Nativeなチームとは

Slide 6

Slide 6 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 6 Cloud Native なチームとは まずは "Cloud Native" とは何なのかおさらいしましょう CNCF Cloud Native Definition v1.0 より一部抜粋 スケーラブルなアプリケーションを構築および実行するための能力 回復性、管理力、および可観測性のある疎結合システム

Slide 7

Slide 7 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 7 Cloud Native なチームとは まずは "Cloud Native" とは何なのかおさらいしましょう CNCF Cloud Native Definition v1.0 より一部抜粋 スケーラブルなアプリケーションを構築および実行するための能力 回復性、管理力、および可観測性のある疎結合システム この考え方はチーム作りにも活かせるのでは?と思ったわけです

Slide 8

Slide 8 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 8 Cloud Native なチームとは スケーラブル、回復性 チームにおいて人数を増やせばそれだけチームのパフォーマンスが上がる 誰が作業してもクオリティが変わらない 特定の人に作業が偏らず、誰かが忙しい時でも誰かが代わりに作業することができる 結果として誰かが抜けてもチームとしてもパフォーマンスが下がりにくい 人材は流動するもの「できるだけ人が抜けないようにするよりは抜けてもパフォーマンスが下が らないチーム作り」が必要 疎結合 チームという言葉と相反することになるが、ここでは各自が自立できている状態と捉えてみる 自立できている = 自らやるべきことを探し、実践することができている状態

Slide 9

Slide 9 text

Presented by @makocchi cndjp #13 9 努力していること

Slide 10

Slide 10 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 10 努力していること (目指せ Cloud Native チーム) 自分の役割はチーム内の "テックリード" テックリードに求められることは何か? (自分なりに思っていること) チーム力の底上げ (先程のスケーラブル&疎結合なチームを作る!) 何かを選択しなかればならない時に迷った場合に、その背中をそっと押してあげる 技術の選定 チームメンバーが新しくチャレンジできる機会の創出 チームメンバーがエンジニアとしてのモチベーションを保つ為に、他社の事例や新しい技 術の情報などを定期的にチームにインプット 他社のエンジニアと交流する機会を作って刺激を与える

Slide 11

Slide 11 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 11 努力していること (目指せ Cloud Native チーム) 自分の役割はチーム内の "テックリード" テックリードに求められることは何か? (自分なりに思っていること) チーム力の底上げ (先程のスケーラブル&疎結合なチームを作る!) 何かを選択しなかればならない時に迷った場合に、その背中をそっと押してあげる 技術の選定 チームメンバーが新しくチャレンジできる機会の創出 チームメンバーがエンジニアとしてのモチベーションを保つ為に、他社の事例や新しい技 術の情報などを定期的にチームにインプット 他社のエンジニアと交流する機会を作って刺激を与える テックリードは大変だ

Slide 12

Slide 12 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 12 努力していること (目指せ Cloud Native チーム) 自分の役割はチーム内の "テックリード" テックリードに求められることは何か? (自分なりに思っていること) チーム力の底上げ (先程のスケーラブル&疎結合なチームを作る!) 何かを選択しなかればならない時に迷った場合に、その背中をそっと押してあげる 技術の選定 チームメンバーが新しくチャレンジできる機会の創出 チームメンバーがエンジニアとしてのモチベーションを保つ為に、他社の事例や新しい技 術の情報などを定期的にチームにインプット 他社のエンジニアと交流する機会を作って刺激を与える でもこれは自分で決めたことなので 突き進むしかない

Slide 13

Slide 13 text

Presented by @makocchi cndjp #13 13 具体的な施策その1 定期的なチーム内勉強会の開催 目指せ Cloud Native チーム

Slide 14

Slide 14 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 14 努力していること (目指せ Cloud Native チーム) 定期的なチーム内勉強会の開催 フリーなテーマで毎週 or 隔週でチーム内で発表する時間を作る 初めは自ら発表して勉強会の文化を根付かせていく 毎回違うテーマで発表するのはなかなか大変・・・ でも自分の為にもなるので頑張ってやる Linux早押しクイズ 各種参加イベントの Recap Systemd 勉強会 Consul 入門 Prometheus 入門 などなど・・

Slide 15

Slide 15 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 15 努力していること (目指せ Cloud Native チーム) 定期的なチーム内勉強会の開催 慣れてきたらチーム内で発表者を募り、発表してもらうようにする 「なんか発表してよ」って頼んでも現実的には「発表できるのない」って言われることが ほとんどだと思われるけど、根気よくやっていく 時には一緒に発表テーマを考える 知識をアウトプットすることで整理され、より理解が深まる "発表すること" と "資料を作ること"に慣れてもらう そうすることで社外での登壇に対する心理的なハードルを下げてもらう 最終的には社外での登壇をどんどんやってもらいたい

Slide 16

Slide 16 text

Presented by @makocchi cndjp #13 16 具体的な施策その2 人間カオスエンジニアリング 目指せ Cloud Native チーム

Slide 17

Slide 17 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 17 努力していること (目指せ Cloud Native チーム) 人間カオスエンジニアリング 質問に返事する時に 100% の答えを返さずに、ヒントのみ与えることで質問してきた人の 成長を促していく、なんてことはよくやられていることですが・・ "あえて" 困っている人を放置したり、質問に対する答えをすぐに返事しないようにする テックリードという立場上、頼られることが多いことになるが心を鬼にしてみる チームメンバーが困っている時に他のチームメンバーがサポートすることができる状態へ 導いていく

Slide 18

Slide 18 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 18 努力していること (目指せ Cloud Native チーム) 人間カオスエンジニアリング 質問に返事する時に 100% の答えを返さずに、ヒントのみ与えることで質問してきた人の 成長を促していく、なんてことはよくやられていることですが・・ "あえて" 困っている人を放置したり、質問に対する答えをすぐに返事しないようにする テックリードという立場上、頼られることが多いことになるが心を鬼にしてみる チームメンバーが困っている時に外のチームメンバーがサポートすることができる状態へ 導いていく やりすぎ注意! やりすぎると信頼されなくなるぞ 容量・用法を守って正しく放置してください Caution!!

Slide 19

Slide 19 text

Presented by @makocchi cndjp #13 19 7つの行動指針

Slide 20

Slide 20 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 20 7つの行動指針 (目指せ Cloud Native チーム) 行動指針とは? いろいろな解釈があるけども、個人的には「エンジニアとしてこういうことを念頭に置い て行動していれば、いつかいい感じのエンジニアになれる!」というもの 企業として行動指針を出しているケースが多いけども、自分が考えたのは企業に拘らずに 個人的にどう成長していけばいいのか?を言葉にしたもの チームが成長する為の手助けになればいいな 企業の行動指針で有名なものとしては AWS 「Our Leadership Principles」 Google「Ten things we know to be true」 Microsoft 「10 Behaviors for Inclusion」

Slide 21

Slide 21 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 21 APPENDIX - AWS Our Leadership Principles • Customer Obsession • Ownership • Invent and Simplify • Are Right, A Lot • Learn and Be Curious • Hire and Develop The Best • Insist on the Highest Standards • Think Big • Bias for Action • Frugality • Earn Trust • Dive Deep • Have Backbone; Disagree and Commit • Deliver Results https://aws.amazon.com/jp/careers/culture/

Slide 22

Slide 22 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 22 APPENDIX - Ten things we know to be true • Focus on the user and all else will follow. • It’s best to do one thing really, really well. • Fast is better than slow. • Democracy on the web works. • You don’t need to be at your desk to need an answer. • You can make money without doing evil. • There’s always more information out there. • The need for information crosses all borders. • You can be serious without a suit. • Great just isn’t good enough. https://www.google.com/intl/ja/about/philosophy.html

Slide 23

Slide 23 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 23 APPENDIX - Microsoft 10 Behaviors for Inclusion • Include and seek input from people across a wide variety of backgrounds • Listen carefully to the person speaking until they feel understood • Make a habit of asking questions • If you have a strong reaction to someone, ask yourself why • Address misunderstandings and resolve disagreements • Act to reduce stressful situations • Understand each person’s contribution • Examine your assumptions • Ensure all voices are heard • Be brave https://cloudblogs.microsoft.com/industry-blog/en-gb/cross-industry/2019/05/14/10-inclusive-behaviours/

Slide 24

Slide 24 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 24 7つの行動指針 (目指せ Cloud Native チーム) AWS とか Google とか Microsoft とか行動指針があってカッコいい! なんか自分も作ってみたい! ってなりますよね?

Slide 25

Slide 25 text

Presented by @makocchi cndjp #13 25 それでは makocchi 的行動指針発表します

Slide 26

Slide 26 text

Presented by @makocchi cndjp #13 26 7つの行動指針 #1 技術の循環 Circulation of Technologies

Slide 27

Slide 27 text

Presented by @makocchi cndjp #13 27 7つの行動指針 (目指せ Cloud Native チーム) #1 技術の循環 過去に得た技術は未来で手にする技術の基本となる。 未来で新しい技術を手に入れる為に、過去に得た技術を活かしていく。 また、自らの技術を周りに循環させることでチームの力を上げる。 「技術は他の人に教えることができて初めて技術と言える」が自分のモットー。 Circulation of Technologies

Slide 28

Slide 28 text

Presented by @makocchi cndjp #13 28 7つの行動指針 #2 広く深く Stay broad, Stay deep

Slide 29

Slide 29 text

Presented by @makocchi cndjp #13 29 7つの行動指針 (目指せ Cloud Native チーム) #2 広く深く 知識は広く浅くではなく、狭く深くでもなく、広く深くを目指す。 エキスパート領域を増やす。 (Jobs の名言「Stay hungry, Stay foolish」を拝借しました。) Stay broad, Stay deep

Slide 30

Slide 30 text

Presented by @makocchi cndjp #13 30 7つの行動指針 #3 期待を超える Do more than is expected

Slide 31

Slide 31 text

Presented by @makocchi cndjp #13 31 7つの行動指針 (目指せ Cloud Native チーム) #3 期待を超える 期待されていることをあと一歩超えてみよう。 そうすることで信頼感がグッとあがり、次の機会につなげることができる。 Do more than is expected

Slide 32

Slide 32 text

Presented by @makocchi cndjp #13 32 7つの行動指針 #4 常に信頼される Always gain the trust

Slide 33

Slide 33 text

Presented by @makocchi cndjp #13 33 7つの行動指針 (目指せ Cloud Native チーム) #4 常に信頼される みんなから頼られる存在になる。 そうすることで自分の価値を上げていく。 Always gain the trust

Slide 34

Slide 34 text

Presented by @makocchi cndjp #13 34 7つの行動指針 #5 自分で前に進む Go advance by oneself

Slide 35

Slide 35 text

Presented by @makocchi cndjp #13 35 7つの行動指針 (目指せ Cloud Native チーム) #5 自分で前に進む やるべきことを自分で考え、自分で進む。 自分だけで進めていくというわけでは無い。 まわりをうまく巻き込んでリーダーシップを持って物事を進めていく。 Go advance by oneself

Slide 36

Slide 36 text

Presented by @makocchi cndjp #13 36 7つの行動指針 #6 楽しむを忘れない No work without fun

Slide 37

Slide 37 text

Presented by @makocchi cndjp #13 37 7つの行動指針 (目指せ Cloud Native チーム) #6 楽しむを忘れない たまには遊んだっていいじゃない。 息抜きに試してみたり、遊んでみたりした事が新しい発想のネタになることもある。 困難な状況も解決する楽しさの方に重点を置いて考えてみよう。 息抜きの一貫として、過去には普段聞いているミュージシャンについて、他人がどう思おうが関 係なくドヤる音楽LT大会を業務時間後にやったり。 No work without fun

Slide 38

Slide 38 text

Presented by @makocchi cndjp #13 38 7つの行動指針 #7 他人を楽にする Make someone happy

Slide 39

Slide 39 text

Presented by @makocchi cndjp #13 39 7つの行動指針 (目指せ Cloud Native チーム) #7 他人を楽にする 他の人が楽になる施策や仕組みを作ることで、チームの生産性を上げていく。 Make someone happy

Slide 40

Slide 40 text

Presented by @makocchi cndjp #13 40 7つの行動指針 (目指せ Cloud Native チーム) 7つの行動指針のまとめ Circulation of Technologies Stay broad, Stay deep Do more than is expected Always gain the trust Go advance by oneself No work without fun Make someone happy 技術の循環 広く深く 期待を超える 常に信頼される 自分で前に進む 楽しむを忘れない 他人を楽にする

Slide 41

Slide 41 text

Presented by @makocchi cndjp #13 41 7つの行動指針 (目指せ Cloud Native チーム) 補足 実はこの行動指針ですが、1 つ増やそうかなと思ってます 最近聞いた話でなるほどなーと思ったのが「正解より別解」という言葉 確かに正解を求めることは大切ですが、そこで終わりにせずに「実は他のもっといい正解が あるんじゃないか?」を考えることがとても大切なのではと思いました 「正解より別解 Find another better way」

Slide 42

Slide 42 text

Presented by @makocchi cndjp #13 ͘Β͏ͲͶ͍ͯ͌Ϳ 42 7つの行動指針 (目指せ Cloud Native チーム) 行動指針を根付かせる為にはどうするべきか? まさに今現在悩んでいる問題 行動指針はあくまで行動指針に過ぎないので、強制力は無い 打ち合わせや雑談時にちょこちょこ行動指針を引用したりしてアピールしたりするのがいい のだろうか?(ちょっとウザいかも?) いっそのことポスターにして貼り付けるとか (恥ずかしい) 月次や年次で「この人のこんな行動が素晴らしかったで賞」みたいなのを作るか? いろいろ考え中

Slide 43

Slide 43 text

Presented by @makocchi cndjp #13 43 みなさんの行動指針 是非教えてください!

Slide 44

Slide 44 text

Presented by @makocchi cndjp #13 44 まとめ

Slide 45

Slide 45 text

Presented by @makocchi cndjp #13 45 まとめ Cloud Nativeなチームとはスケーラブルで各メンバーが自立(疎結 合)し、メンバーお互いでサポートができる回復性のあるチーム Cloud Nativeなチームを目指して様々な施策にチャレンジしてい る • チーム内勉強会 • 人間カオスエンジニアリング • 7 つの行動指針 重要なのはテックリード自ら行動すること (偉そうなこと書いたけど、絶賛試行錯誤中)

Slide 46

Slide 46 text

Presented by @makocchi 46 CloudNative Developers JP #13 Cloud Nativeチーム作りを目指す ぽい Thank You For Your kind Attention