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
外注が主な企業でどのように内製開発を立ち上げ・進化させているのか? / how we star...
Search
iwashi
November 29, 2022
Technology
2
32k
外注が主な企業でどのように内製開発を立ち上げ・進化させているのか? / how we start in-house developement in enterprise?
Developers Summit 2016【19-D-3】の登壇資料です。
http://event.shoeisha.jp/devsumi/20160218/session/1047/
iwashi
November 29, 2022
Tweet
Share
More Decks by iwashi
See All by iwashi
エンジニアリングが好きな私たちのためのエンジニアリングマネジャー入門 / Engineering management for the rest of us
iwashi86
22
5k
エレガントパズル 30分 ダイジェスト版/ Elegant Puzzle 30min Digest
iwashi86
5
470
エレガントパズル エンジニアのマネジメントという難問にあなたはどう立ち向かうのか / Elegant Puzzle
iwashi86
18
3.8k
ベロシティを高く保つ仕事のすすめ方 / Maintaining a High Velocity as Productivity Hacks
iwashi86
54
19k
マネージャー&リーダー向け 社内トレーニング / Training of management and leadership for Stockmark
iwashi86
64
31k
30分でわかる「エンジニアのためのドキュメントライティング」- インフラエンジニアBooks / Docs for Developers within 30 minutes
iwashi86
9
2.4k
エンジニアのためのドキュメントライティング / Docs for Developers
iwashi86
34
21k
なぜ変化を起こすのが難しいのか? - 数年以上にわたって難しさに向き合い・考え取り組んできたこと / The reason why changing organization is so hard - What I thought and faced for more than several years
iwashi86
59
86k
2015年 第4四半期の WebRTC 標準化 アップデート / 2015 update of WebRTC Standards
iwashi86
0
210
Other Decks in Technology
See All in Technology
.NET 9 のパフォーマンス改善
nenonaninu
0
360
CustomCopを使ってMongoidのコーディングルールを整えてみた
jinoketani
0
220
Amazon SageMaker Unified Studio(Preview)、Lakehouse と Amazon S3 Tables
ishikawa_satoru
0
150
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.1k
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
160
Turing × atmaCup #18 - 1st Place Solution
hakubishin3
0
470
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
podman_update_2024-12
orimanabu
1
260
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
370
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
160
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
It's Worth the Effort
3n
183
28k
The Cost Of JavaScript in 2023
addyosmani
45
7k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Designing for humans not robots
tammielis
250
25k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
The Cult of Friendly URLs
andyhume
78
6.1k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
How GitHub (no longer) Works
holman
311
140k
Facilitating Awesome Meetings
lara
50
6.1k
Six Lessons from altMBA
skipperchong
27
3.5k
Transcript
Copyright © NTT Communications Corporation. All right reserved. 外注が主な企業でどのように 内製開発を⽴ち上げ・進化させているのか?
@Developers Summit 2016 NTTコミュニケーションズ株式会社 技術開発部 岩瀬 義昌 2016年2⽉19⽇ 【19-D-3】
Copyright © NTT Communications Corporation. All right reserved. 外注が主な企業でどのように 内製開発を⽴ち上げ・進化させているのか?
@Developers Summit 2016 NTTコミュニケーションズ株式会社 技術開発部 岩瀬 義昌 2016年2⽉19⽇ 【19-D-3】
Copyright © NTT Communications Corporation. All right reserved. 3 ⾃⼰紹介
▪名前 岩瀬 義昌 / @iwashi86 ▪仕事 NTTコミュニケーションズ 技術開発部 Webコア Technology Unit “WebRTC”プラットフォームである “SkyWay”のTech Lead ▪コミュニティ活動 ・WebRTC Meetup Japan/Tokyo主催 ・July Tech Festa登壇 など
Copyright © NTT Communications Corporation. All right reserved. 4 ⾃⼰紹介
▪名前 岩瀬 義昌 / @iwashi86 ▪仕事 NTTコミュニケーションズ 技術開発部 Webコア Technology Unit “WebRTC”プラットフォームである “SkyWay”のTech Lead 注 今⽇の話は、会社全体の話ではありません 所属するチームの話です ▪コミュニティ活動 ・WebRTC Meetup Japan/Tokyo主催 ・July Tech Festa登壇 など
Copyright © NTT Communications Corporation. All right reserved. 5
Copyright © NTT Communications Corporation. All right reserved. 6
Copyright © NTT Communications Corporation. All right reserved. 7
Copyright © NTT Communications Corporation. All right reserved. 8
9 Copyright © NTT Communications Corporation. All right reserved. デモ
10 Copyright © NTT Communications Corporation. All right reserved. 10
https://www.flickr.com/photos/quinnanya/5725134193/in/photolist-9HUNWe-b8jHcK-rSwrzt-atwgwq-b pPfNY-bApGtz-ecmxMj-9EGJHX-5 28Fwg-8dUZxf-4U C2WQ-6g9N7Y-9gBdk- aJHuGn-Liot-ecfS8F-fxRKP-aJHzkc-2GjZ4-4eW4uF-aPeYT2-6g5B7n-4Z8NVd-c5ajMb-9XczhB-9Wr ZtQ-b8jGWK-9 YPUbX-mtwiS-9sbqhu-dKXwcs-bpPfk7-sL7JUy-pnYnKK-4Z4x ZF- 4Z8Nbq-89sth7-2nMrHh-dLkS1Z-4Z4yD8-4Z4yGv-4Z4yyx -4WFtU8-bk4C1 S-b8jFHM-aEba pg-92 VG51-aFSRzH-8hpoTY-e5 KL4o WebRTCを⽣でさわるのは結構⼤変 (⼀部、サーバサイドの⽤意などが必要) 10 そこで、少しでも簡単に開発者の皆様が使えるように…
Copyright © NTT Communications Corporation. All right reserved. 11 SkyWay
= WebRTCプラットフォーム (WebRTC向けのSDKやサーバ機能を提供) SkyWayを利⽤するとWebRTCアプリが無料で簡単に作れます。
12 Copyright © NTT Communications Corporation. All right reserved. 本題
Copyright © NTT Communications Corporation. All right reserved. http://www.slideshare.net/Ryuzee/devsumia https://www.flickr.com/photos/open_hardware_summit/5022739550/in/photolist-8DQ
RtL-aUh4TP-myfDP2-tgjJZe -2XuJbH-2mxsf8-A5mN-5g835L-aUhb ZM-a1HgAW -6y5fwC-yPnDF9-BjKXny-b XT54q-7Ldom1-aEZH17-5aDmt9-6Wjja7-pEtq K-aUhhjR-aUhbig-8wu S6c-2tfSt1-7 KmnEc- 6s2qrs-ofPE2-aUh5DK-5D9pAA-oLmndn-ymjQA8-642vMz-p1gMzR-nromLM-515Q9D-xW1hjb-tFGP CV-6Y 79Ee-aUhae6-eP6 i1J-wHsdZq -oGqWN8-tFGN7Z-8uoTx u-7gMb w1-ATeDD V-5pE VeN-tFyc6w-tYhqQP-tXNooG-8x 9uc6 私は3年前のデブサミに聴衆として参加 当時もっともインパクトを受けたセッションが…
Copyright © NTT Communications Corporation. All right reserved. http://www.slideshare.net/Ryuzee/devsumia
Copyright © NTT Communications Corporation. All right reserved. 15 https://www.flickr.com/photos/84744710@N06/7997288513/in/photolist-d
bGcfH-4ZydmF-8KRTbS-gYGNed-5S8UHL-4mmgEr-5eeufN-q KfJ7t-adEL4 -5Ru5mw -bYy4DQ-6Fkwxd -bHi2Fg-ekof5s-a3oQpv-foYgj3-dKmWT5-uu2s2J-r RyiiV-a3DUbb-7LXRvK-otgg7A-dNXYM2 -89Esw2- qJTubL-7kiEk1-pNqauh-dbbV7K-8d3Bnh-cXrjcs-qsYhgg-qJNfYn-7fDEPY-qGF2Us-7iEZ8u -cJYpef-4p77 SJ-qsvPzx-bEQwVQ -8xa29n-8 pqbNA-epYU CM-qsRRsb-foYs6s-r7eT7j-7aJdf-b ZkUE5-9AzrrQ-6H1xpw-769EGa 当時の衝撃 プレゼンの中で⾔われていたのが…
Copyright © NTT Communications Corporation. All right reserved. 16 当時の衝撃
https://www.flickr.com/photos/84744710@N06/7997288513/in/photolist-d bGcfH-4ZydmF-8KRTbS-gYGNed-5S8UHL-4mmgEr-5eeufN-q KfJ7t-adEL4 -5Ru5mw -bYy4DQ-6Fkwxd -bHi2Fg-ekof5s-a3oQpv-foYgj3-dKmWT5-uu2s2J-r RyiiV-a3DUbb-7LXRvK-otgg7A-dNXYM2 -89Esw2- qJTubL-7kiEk1-pNqauh-dbbV7K-8d3Bnh-cXrjcs-qsYhgg-qJNfYn-7fDEPY-qGF2Us-7iEZ8u -cJYpef-4p77 SJ-qsvPzx-bEQwVQ -8xa29n-8 pqbNA-epYU CM-qsRRsb-foYs6s-r7eT7j-7aJdf-b ZkUE5-9AzrrQ-6H1xpw-769EGa 「1⽇10回デプロイ」
Copyright © NTT Communications Corporation. All right reserved. 17 誤記じゃないの?
https://www.flickr.com/photos/84744710@N06/7997288513/in/photolist-d bGcfH-4ZydmF-8KRTbS-gYGNed-5S8UHL-4mmgEr-5eeufN-q KfJ7t-adEL4 -5Ru5mw -bYy4DQ-6Fkwxd -bHi2Fg-ekof5s-a3oQpv-foYgj3-dKmWT5-uu2s2J-r RyiiV-a3DUbb-7LXRvK-otgg7A-dNXYM2 -89Esw2- qJTubL-7kiEk1-pNqauh-dbbV7K-8d3Bnh-cXrjcs-qsYhgg-qJNfYn-7fDEPY-qGF2Us-7iEZ8u -cJYpef-4p77 SJ-qsvPzx-bEQwVQ -8xa29n-8 pqbNA-epYU CM-qsRRsb-foYs6s-r7eT7j-7aJdf-b ZkUE5-9AzrrQ-6H1xpw-769EGa 「1⽇10回デプロイ」 10ヶ⽉に1回デプロイ 当時の私の常識とはだいぶ違っていました
Copyright © NTT Communications Corporation. All right reserved. 18 それから3年
聴講から登壇する側へ https://www.flickr.com/photos/dgoomany/4976873174/in/photolist-8zMM1b-8V9ehf-duXNn7-57mr6F-kc7WT-4xBsMT-e2pZrM-5uDPns-71jap-8NPfGS-p3KzAA-aJh7uD-nvBRCq- z75or5-9pZZVn-fMrcKa-89X6da-CD9j-7k5Dsf-9LzggW-5rbtCP-sn5ecN-46YU7g-gxoMCB-dY3Cyx-68giiZ-6SkM1-9c9xPc-wQNQD-oUrYYB-D2gWBt-CFqVVz-LzGU1-ewJe9D-DnKE- 7UTmVK-oKY1zF-kCFz-3nTR3N-8MdVtb-5uDp8U-qQYXdQ-e8WXNZ-s77Yd5-aJh6Qn-9x3XDe-PGqgb-9bqUfZ-ibYoB-3c7kyY
Copyright © NTT Communications Corporation. All right reserved. 19 https://www.flickr.com/photos/image-catalog/17094809777/in/photolist-s3Bn
nB-5ecVsc-rZLekL-8NV2G2 -fMpcwj-p8P32y-9Q JM29-p qm3VC-9Mzzyb-pogscj-CcwwE3-4reFUA-6ivkko-d2P T1b-7P3Gqd -8nebru -paTFdQ-p8P Khj-pq2e5 Z-6mZ4 Vw-8Gg4 Jc-8mqEGe-JWyHL-pq2fBg- p8P8h3-7fzsGM-cHeGWS-a15TX-6H2pUy-m2sbkz-yFCXvb-8dynz3-dBi5Cb-pecTz-krjgVc-fANQqR-krjB9x -kriU24-krjzZD-krm8 S5-krm8ou -krjroF-krjm2D-krkUKd-krjk5 Z-krjjtt-krjikr-k rkRPU-kriuSt-kr iuq6 実際の経験ベースの ストーリーを共有
Copyright © NTT Communications Corporation. All right reserved. 20 ⼤事な疑問
そもそも…
Copyright © NTT Communications Corporation. All right reserved. 21 なぜ内製?
外注じゃダメ? https://www.flickr.com/photos/mdpettitt/8671901426/in/photolist-ediLaQ-KGgU8-9SScHJ-5JE9tz-iXRZgo-9o5yon -5UnDmk-rrtnoF-6egx SJ-sQzvg-hcEYDX-7 ZiTg V-9v3xhu -6CrL7s-snRpm3 -do8JVU-do8Bez-oqtM3G -7Co7Fm-qD9 gxe-8uoSqU-2RF5eT-xsZh8-s29nxg-h nZzLf-dnav81- g2Q3N-v2dmxU-p9e9F3-bEVLmS-9nLGVj-7UNsX4-v2Ze9e-dV8sXM-8uoTxu-aD3ZhE -9uZpk3 -dVR5Cb -r3rY5 M-7URGdJ-ni4p7x -uZot4q -u5RNwp -vYncn5-3 X9Dcm-e5A9GJ-3 4av4j-xUCpDT-ynUaY6-La ARx
Copyright © NTT Communications Corporation. All right reserved. 22 外注が悪いわけではない
• 内製も外注も⽬的達成のための⼿段
Copyright © NTT Communications Corporation. All right reserved. 23 •
内製も外注も⽬的達成のための⼿段 • リソースが無い場合は外注しかない 外注が悪いわけではない
Copyright © NTT Communications Corporation. All right reserved. 24 •
内製も外注も⽬的達成のための⼿段 • リソースが無い場合は外注しかない • 1つのリスクヘッジの⼿段でもある (ex. 瑕疵…) 外注が悪いわけではない
Copyright © NTT Communications Corporation. All right reserved. 25 外注で認識して
おくべきこと しかし、外注利⽤時に強く認識したほうが良いことがあります。それは…
Copyright © NTT Communications Corporation. All right reserved. 26 NDA
NDAからはじまる⻑い⻑い旅路です。
Copyright © NTT Communications Corporation. All right reserved. 27 NDA
RFP
Copyright © NTT Communications Corporation. All right reserved. 28 NDA
RFP 決裁
Copyright © NTT Communications Corporation. All right reserved. 29 NDA
RFP 決裁 契約
Copyright © NTT Communications Corporation. All right reserved. 30 NDA
RFP 決裁 契約 検収
Copyright © NTT Communications Corporation. All right reserved. 31 NDA
RFP 決裁 契約 検収 エンプラで検収といえばもちろんコレです。
Copyright © NTT Communications Corporation. All right reserved. 32 経験ありますよね?
Copyright © NTT Communications Corporation. All right reserved. 33 Excel
x スクショ = エビデンス https://www.flickr.com/photos/pegwinn/3470095624/in/photolist-6 hD9wU-88bnA9-8886bz-8 883xz-887kd8 -aPLhxp-rKH4 R9-71y 19d-r ZdK34 -9dHbir -9Ah VnH-4ZzAxk-9dHcqB-9dLfzL-6hD9zd-6p9Ant -UmZfT-889pDz- aUmQav-6hD9Ad-e2EV4q-a5WTjH-88aHw9-5eF2ZL-5eACT4-a5ZJeY-5XUgbM-d VWa8s-aW8C58-jCacyr-y CMfd-58 irwU-aPL966-a5W RBp -9Ah Vwa-eabGEB-88cwes-889aaV-8892vv-8 88YDg-888 VCD-88c4ny-888PjH-888LUP- 888JLr-888Gzc-88bRuj-88bPqm-88bLWW-88bJjA
Copyright © NTT Communications Corporation. All right reserved. 34 こんなはずじゃなかった
このように考えるエンジニアもいると思います
Copyright © NTT Communications Corporation. All right reserved. 35 その⼀⽅で…
Copyright © NTT Communications Corporation. All right reserved. 36 http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
1⽇10回デプロイしている企業も しかも2009年時点で… http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
Copyright © NTT Communications Corporation. All right reserved. 37 その結果
• IT企業にとって強⼒の源泉である 技術⼒に差がついていく 外注企業の 技術⼒ 内製企業の 技術⼒ 技術⼒の差だけではなく、先ほどの⻑い道のりから⽣まれる…
Copyright © NTT Communications Corporation. All right reserved. 38 その結果
• IT企業にとって強⼒の源泉である 技術⼒に差がついていく • 外注のオーバヘッド分の速度の遅れ (ビジネス上のスピードの遅れ) ⼀⽅で、内製とは…
Copyright © NTT Communications Corporation. All right reserved. 39 https://www.flickr.com/photos/derekskey/5249580870/in/photolist-8ZTtv1-bLaY2
K-Ax VrV-oMs8Kf-cXjaew-6 ZrEUq-pHrRH8 -pHrLp2-KG Knb-7m CHh3-6u BgKM -8ZQnrT -bxVhwo -AGGtNs-nYJQh8-8 4SHgx-td Ke9W-eSqaV-bxgfhw -oFsmuf-nHNcF-aUaAkV-6bwPeq-5UgdqV-mbNCv- 7mCHa1-hxwnFA-aE7SpH-6CoiGa-dddE57-dddD74-89 Vtxi-jvjCRB-cUDNSd-bLPXiV-BAZBea-cqSKA-fovfW8-q 3iXaw -tkVGYF-6FPvHt-6hQ2 hR-adDQPN-fhpM pR-g 9vsj3-i9Z8oT -m5mNwr-gsxZ2J-cqTX7-ak KH6D 内製とは… ⽣き残り・勝ち抜くための⼿段 朗報もあります!
Copyright © NTT Communications Corporation. All right reserved. 40 幸いにもソフトウェア開発が容易に
例えば、インスタグラムという有名なアプリ・サービスがあります。 Instagram
Copyright © NTT Communications Corporation. All right reserved. Instagram 41
幸いにもソフトウェア開発が容易に http://jp.techcrunch.com/2011/06/14/20110613instagram-five-million-users/ 社員4⼈で500万⼈に サービス提供[2011年時点] (AWSなどのAPIをフル活⽤)
Copyright © NTT Communications Corporation. All right reserved. 42 SkyWayは、なぜ内製メイン?
・WebRTCという技術進化に追従するため WebRTCは技術進化が本当に早いです。特に厄介なのが…
Copyright © NTT Communications Corporation. All right reserved. 43 SkyWayは、なぜ内製メイン?
・WebRTCという技術進化に追従するため 1〜1.5ヶ⽉で⼤幅アップデート https://commons.wikimedia.org/wiki/File:Google_Chrome_icon_and_wordmark_(2011).svg https://en.wikipedia.org/wiki/Firefox#/media/File:Mozilla_Firefox_logo_2013.svg Chrome/Firefoxのようなブラウザの進化の早さです。
Copyright © NTT Communications Corporation. All right reserved. 44 SkyWayは、なぜ内製メイン?
・WebRTCという技術進化に追従するため ・内製で[開発⇒リリース]を ⾼速で回転させ、競争⼒を保持するため 内製はまた、⾼速なサイクルに向いています。結果的にSkyWayは…
Copyright © NTT Communications Corporation. All right reserved. 45 (⾃称ですが)
SkyWayは⽇本で最もメジャーな WebRTCプラットフォーム 本⽇はそのようなSkyWayを開発した経験をベースに、皆様が次の状態になることをゴールとします。
Copyright © NTT Communications Corporation. All right reserved. 46 今⽇のゴール
内製を始める気になる ⇒ ⾏動する (そのための私が知るノウハウは本⽇、全て共有します) https://www.flickr.com/photos/andrewrennie/4472877398/in/photolist-7PfEBQ-5px JLr-5PbsGo-81L4B2 -9cDmTe-83PVUn-5ycqEA-6E5mwe-kYQ RQG-8qVpqN-pU1YS-5zW1JQ -xpcC-AYaHeS-dVqiY4-7xrZkS-bgLYCP -mUegg6-kfWGGF-4BYPHM-a9 iUAG-av9EvZ-96Jeo X-bz76rh-9 StUXb- 9StW6E-sBT1G-pBStcN-ptDpPw-7QCia5-apLjca-9ogohE-8RKCvB-6 A6nxy-9sLrvz-9yPcYk-4rUuRj-9sLrrM -bK3EL X-h3b6h C-Di8iy-db 8GGs-4qydtJ-aQxVkx -nZwcve-bHfVNF-yn KYR3 -7BnpmJ-3Vyqq 9-9W8TYc 終わった頃には、内製をはじめる勇気が出てきます!
Copyright © NTT Communications Corporation. All right reserved. 47 以降のアジェンダ
1. 内製開発の種をまく ・⽂化の話 2. 内製開発を開花させる ・技術の話 ・⽂化の話
Copyright © NTT Communications Corporation. All right reserved. 48 以降のアジェンダ
1. 内製開発の種をまく ・⽂化の話 2. 内製開発を開花させる ・技術の話 ・⽂化の話
Copyright © NTT Communications Corporation. All right reserved. 49 https://www.flickr.com/photos/31031835@N08/6004532099/in/photolist-a9
ANcv-oLhuEa-8Jvb KB-o CA9 7k-j8rSxH-b XWTiW-fxxug g-eDR8Gv-eD X7mf-eDR13t -eaNMBz-qYp Kd-d7scXo-7ojmH3-eDR3zX-6tJKx9-wkYqU7-ftgoYx -4SyTGJ-oEgAu i-9JzJpF -nJH1vy-72v CyX-75Y1r R-M9u7c- 8nrj6Z-8nrjNg-eDR1qF-7u8mzu-nKfsD7-darVER-qgabey-fqyL3U-7ofsjn-8nrjbK-4egJb r-7Dq9ar-dGZGrG-5 Rcjci-7ofs36-nz6em3-88qgtB-t 47kUC-oWxGME -9sWco-Jtj9e-rrGuKu -7oftgk-6k8Yu h-6TXe 6e SkyWayのはじまり?
Copyright © NTT Communications Corporation. All right reserved. 50 Date
Event 2012/8 ・⼤津⾕⽒/⼩松⽒と2⼈体制でスタート 2013/4 ・SkyWayのアイデア誕⽣ 2013/7-9 ・SkyWayのプロ⼘タイプ開発 (この時点では外注100%に近い) ・サーバ構築&軽微な修正を内製で対応 2013/12 ・トライアル公開 ・⼿作業のオペレーションも多い 2014/4- ・Web(フロントエンド/サーバサイド)を内製開発 ・継続的インテグレーションなど導⼊開始 経緯 最初は外注がほとんどでしたが将来的な内製移⾏を⾒据えて開発をはじめました。ですが…
Copyright © NTT Communications Corporation. All right reserved. 51 ▪外注⽂化だと⼈も環境も無い
・だが、誰かが進めないと何も始まらない いきなり内製は難しい
Copyright © NTT Communications Corporation. All right reserved. 52 ▪外注⽂化だと⼈も環境も無い
・だが、誰かが進めないと何も始まらない ・そこで内製の範囲を絞って始める ⇒ ⽐較的、取組みやすいところから ⇒ その後、徐々に技術コアへ広げる いきなり内製は難しい さきほどの経緯の表を振り返ってみるとポイントは…
Copyright © NTT Communications Corporation. All right reserved. 53 Date
Event 2012/8 ・⼤津⾕⽒/⼩松⽒と2⼈体制でスタート 2013/4 ・SkyWayのアイデア誕⽣ 2013/7-9 ・SkyWayのプロ⼘タイプ開発 (この時点では外注100%に近い) ・サーバ構築&軽微な修正を内製で対応 2013/12 ・トライアル公開 ・⼿作業のオペレーションも多い 2014/4- ・Web(ダッシュボード)を内製開発 ・継続的インテグレーションなど導⼊開始 振り返るとポイントはココ 簡単なところから内製を開始した点でした。
Copyright © NTT Communications Corporation. All right reserved. 54 Date
Event 2012/8 ・⼤津⾕⽒/⼩松⽒と2⼈体制でスタート 2013/4 ・SkyWayのアイデア誕⽣ 2013/7-9 ・SkyWayのプロ⼘タイプ開発 (この時点では外注100%に近い) ・サーバ構築&軽微な修正を内製で対応 2013/12 ・トライアル公開 ・⼿作業のオペレーションも多い 2014/4- ・Web(ダッシュボード)を内製開発 ・継続的インテグレーションなど導⼊開始 そして徐々に広げる 徐々に難易度の⾼い部分に着⼿します。そんな内製を始めるための…
55 Copyright © NTT Communications Corporation. All right reserved. 55
内製を始める際の⼼構え いくつか⼼構え、持つべきメンタルをお伝えします。1つ⽬は…
Copyright © NTT Communications Corporation. All right reserved. 56 https://rotsuya.github.io/slides/enterprise-hacks-201512/#54
⼤⾵呂敷をひろげないこと! 同様の良い格⾔・引⽤もいくつかあります…
Copyright © NTT Communications Corporation. All right reserved. 許可を求めるより 寛容に期待しよう
(TeamGeek より) ⼤企業では全てにおいて、許可をとると時間がかかりすぎて前に進めません。
Copyright © NTT Communications Corporation. All right reserved. あらゆる⽂化は⼩さな種から育つ。 またたったひとつの決定で
⽂化ができるわけでもない。 (マイクロソフトを辞めて、オフィスのない会社で働いてみた より) 寛容を期待して始めれば、徐々に⽂化ができてきます… そして⽂化と同時に…
Copyright © NTT Communications Corporation. All right reserved. 59 https://www.flickr.com/photos/40385177@N07/7033303711/in/photolist-bHvwa6
-9KTcrc-84bv SR-84bZAz-84buba-4R1f77-2xDarY-84eaUq-dWP JZt-7k3tGh -7Cepfo-cYMyHu -96jQLa-uXUPj-6mS3yx-b uFhEt-eEUS1J-61xVAq-4q CECx -6owpWW-8 iUbjR-vgHFQD-6j8UzJ-scDupb- dEsoXU-7sRCyT-8iXzxS-84c63v-acYE3M-9GbLwU-5F1y42-4M9pmY-5CJZRY-Z9P S-fArgmu -A2 R7zs-brJ5LA-65P KAV-KnML-4zFxPG-cDfz49-8EYiN7-zjZwr-fQPY2h-8 dv8TV-qe5K3b -84bXCR-84eQJG-84e CP1-8 4eatu 仲間を増やす ⼈員追加にはいくつか気をつける点があります。徹底的に…
Copyright © NTT Communications Corporation. All right reserved. 60 良い⼈材を集める(⼤企業だと難しいが)
・あらゆるチャネルを使う
Copyright © NTT Communications Corporation. All right reserved. 61 ・あらゆるチャネルを使う
・業務委託(⼀流の⼈と) html5j ファウンダー ⽩⽯⽒ Google Developer Expert 吉川⽒ 良い⼈材を集める(⼤企業だと難しいが) ⽩⽯さん・吉川さんは同じロケで⼀緒に働いていただき、⾊々とノウハウを共有いただきました。
Copyright © NTT Communications Corporation. All right reserved. 62 ・あらゆるチャネルを使う
・業務委託(⼀流の⼈と) ・異動(社内公募) 良い⼈材を集める(⼤企業だと難しいが) 単なる⼈事異動でなく、社内公募のような制度があれば積極活⽤します。
Copyright © NTT Communications Corporation. All right reserved. 63 ・あらゆるチャネルを使う
・業務委託(⼀流の⼈と) ・異動(社内公募) ・新卒 / インターン / 中途 良い⼈材を集める(⼤企業だと難しいが) なぜ、ここまでこだわる必要があるのでしょうか?それは…
Copyright © NTT Communications Corporation. All right reserved. 君の周りにいる⼈たちが 君⾃⾝のパフォーマンスに影響する。
仲間は慎重に選べ。 (情熱プログラマー より)
Copyright © NTT Communications Corporation. All right reserved. 65 単なるメンバ増はアンチパターン
・⼈が増えたからといって ⽣産能⼒は劇的に向上しない ・むしろチーム全体としての ⽣産性が下がることも…
Copyright © NTT Communications Corporation. All right reserved. 66 ではメンバ追加のベストプラクティスは?
Copyright © NTT Communications Corporation. All right reserved. 67 ・⾃分より優秀だと思う⼈を⼊れる
・その際、⾃分の⼈事評価が 下がるなどと考えないこと ではメンバ追加のベストプラクティスは?
Copyright © NTT Communications Corporation. All right reserved. 68 ・⾃分より優秀だと思う⼈を⼊れる
・その際、⾃分の⼈事評価が 下がるなどと考えないこと ・むしろ、最⾼の⼈と働いた経験、 そこで得たスキルが残りの⼈⽣に それ以上のメリットをもたらす! ではメンバ追加のベストプラクティスは? まだまだ仕事⼈⽣は⻑いです。後から全部回収できますし、お釣りが返ってきます。
Copyright © NTT Communications Corporation. All right reserved. 69 ベストプラクティスは?
・⾃分より優秀だと思う⼈を⼊れる ・その際、⾃分の⼈事評価が 下がるなどと考えないこと ・むしろ、最⾼の⼈と働いた経験、 得たスキルが残りの⼈⽣に それ以上のメリットをもたらす https://www.flickr.com/photos/usdagov/14464606763/in/photolist-o3bTDM-q JLHrS-dReF B-7SCmub-pe 3MZ4 -6DBbu4 -sMtT5m-dJARfG- 8PgRbq-9simtU-N86ze-83PGfF-aqbLwt-vBSHSL-3NT8qR-aso3sD-7Y7Skt-wS74at-p7Fnh i-cfQSy7-54tXnU-8TbNfH-eRKa A-7FUJFN- rDXWR2-ds4PRF-7NqdCd-7HxPc3-axmQA5-jxeDir-99dCeD-99dBe6 -2Z92 Rr-9t BWZa-5SGJ45 -mdNDj-dB92wY-4SuLwZ-2jGCCA-6BKk7- 6iSKgo-pCE7i7-5K8iK1-Ba4qux-5qkTcj-5u7zq7-o9aj57-vG CQWq-66W1W B-56 X2go ここまでで メンバが徐々に増え チームが芽吹き始める
Copyright © NTT Communications Corporation. All right reserved. 70 アジェンダ
1. 内製開発の種をまく ・⽂化の話 2. 内製開発を開花させる ・技術の話 ・⽂化の話
Copyright © NTT Communications Corporation. All right reserved. 71 SkyWayを⽀える開発技術
https://www.flickr.com/photos/36302473@N03/13834653335/in/photolist-n5wdrM-n5waV4-mZ6q6Y-gCTzTQ-ekfXSv-gCQuZB-sbVz7H-gCPXAU-mZ6tzG-boqwzC-mZ4H9D-4J6MGa-mZ2w6c-gQiEma-cMKB2w-mZ6rRw-BCerys-e4RBVD- mZZhwM-gqLgZM-mZ2wzg-reYN2J-gQhSBN-9zHArx-mZ6u61-7JwRBS-onaMDY-gqKxig-gqKTAP-9w7bSJ-rXZ4Z7-4Jizbj-FCB3A-naxcNS-N2Gh-netjUS-btBM6T-bBk3PK-9ujvK1-e85i2z-zRdM7x-mZ4kuY-mZ4Erg-81v4SH-mZZnik-brQnR3- 4JaZdC-7JwTQJ-4J6LDn-5pPJUd 内製をはじめた結果、どのような技術を使っているかといった現時点のスナップショットを をお伝えします。今回は技術説明のセッションではないので、概要だけお話いたします。
Copyright © NTT Communications Corporation. All right reserved. Application (任意のアプリケーション)
Orchestration アプリへの動的な設定値注⼊など Configuration ミドルウェア、DBの設定など Bootstrapping IaaSを利⽤したVM構築など 72 Provisioning Toolchain + App ・以降では、以下のレイヤで個別に説明 ・基本⽅針は、コードに起こして全て⾃動化
Copyright © NTT Communications Corporation. All right reserved. Application (任意のアプリケーション)
Orchestration アプリへの動的な設定値注⼊など Configuration ミドルウェア、DBの設定など Bootstrapping IaaSを利⽤したVM構築など 73 Provisioning Toolchain + App
Copyright © NTT Communications Corporation. All right reserved. 74 Bootstrapping
/ インフラ ・Infrastructure as Code(IaC)で 宣⾔的に記述 ・ローカル開発環境: ・Vagrant(VM構築) ・Packer(イメージ作成)
Copyright © NTT Communications Corporation. All right reserved. 75 続:Bootstrapping
/ インフラ ・クラウド環境も同様にIaC ・利⽤クラウド クラウドには向き不向きがあるので使い分けます。 Cloudnは通信事業者が提供するクラウドであり、通信量に応じて費⽤が発⽣しません。
Copyright © NTT Communications Corporation. All right reserved. 76 続:Bootstrapping
/ インフラ ・クラウド環境も同様にIaC ・利⽤クラウド ⇒ 構築⽅法: 内製の簡易 Cloudformation ⇒ ⇒ & Terraform Cloudformation 構築は宣⾔的な記述に落として、⾃動で構築します。VMのみならず…
Copyright © NTT Communications Corporation. All right reserved. 77 続:Bootstrapping
/ インフラ ・AWSのユーザ管理もTerraform lb というユーザを、/system/というパス配下に作成する例: ユーザ作成作業も、コードに落としてExcel等を利⽤しません。具体的な運⽤フローは…
Copyright © NTT Communications Corporation. All right reserved. 78 修正分(ユーザ追加など)のPR作成
・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request GHE メンバ 追加したい
Copyright © NTT Communications Corporation. All right reserved. 79 GHEからCI起動
・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request ②Webhook Drone CI GHE
Copyright © NTT Communications Corporation. All right reserved. 80 Dry-Runして変更内容を作成
・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request ②Webhook Drone CI ③terraform plan GHE
Copyright © NTT Communications Corporation. All right reserved. 81 内容をレビュー
⇒ OKならマージ ・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request ②Webhook Drone CI ④⼈の⽬でレビュー &PRマージ GHE ③terraform plan
Copyright © NTT Communications Corporation. All right reserved. 82 マージ契機でCI起動
・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request ②Webhook ⑤Webhook Drone CI ③terraform plan ④⼈の⽬でレビュー &PRマージ GHE
Copyright © NTT Communications Corporation. All right reserved. 83 実際にAWSへ変更を反映
・AWSのユーザ管理もTerraform ・Pull Request Drivenで運⽤ ①Pull Request ②Webhook ⑤Webhook Drone CI ③terraform plan ⑥terraform apply ④⼈の⽬でレビュー &PRマージ GHE
Copyright © NTT Communications Corporation. All right reserved. Application (任意のアプリケーション)
Orchestration アプリへの動的な設定値注⼊など Configuration ミドルウェア、DBの設定など Bootstrapping IaaSを利⽤したVM構築など 84 Provisioning Toolchain + App
Copyright © NTT Communications Corporation. All right reserved. 85 Configuration
・ミドルウェアの導⼊などには Ansibleを利⽤ ・導⼊後の正常性確認、 およびリファクタ向けのテストは Serverspecを利⽤ (開発フローはPRベースで先ほど同様なので割愛)
Copyright © NTT Communications Corporation. All right reserved. Application (任意のアプリケーション)
Orchestration アプリへの動的な設定値注⼊など Configuration ミドルウェア、DBの設定など Bootstrapping IaaSを利⽤したVM構築など 86 Provisioning Toolchain + App
Copyright © NTT Communications Corporation. All right reserved. 87 Orchestration
・アプリケーションデプロイには Configuration同様にAnsible ・環境ごとの動的に変わる依存性注⼊、 およびルートの動的変更向けに Serf & Consulを利⽤
Copyright © NTT Communications Corporation. All right reserved. Application 任意のアプリケーション
(JavaScriptベースのアプリを例を紹介) Orchestration アプリへの動的な設定値注⼊など Configuration ミドルウェア、DBの設定など Bootstrapping IaaSを利⽤したVM構築など 88 Provisioning Toolchain + App
Copyright © NTT Communications Corporation. All right reserved. 89 Application
Development ・サーバサイドおよびフロントエンドで JavaScript / Node を利⽤ Webに強いチームなので、クライアントもサーバもJSを利⽤しています。
Copyright © NTT Communications Corporation. All right reserved. 90 Application
Development ・サーバサイドおよびフロントエンドで JavaScript / Node を利⽤ ・どちらもES6スタイルで記述し、 初期設計からテストを⾃動化(TDD含む) 【参考】利⽤モジュール例: - Gulp: タスクランナー - Babel: ES5へトランスパイル - Mocha: テストフレームワーク - Power-Assert: ⾼機能アサーション - Sinon: スタブ、モックライブラリ - Karma: 実ブラウザ向けのテストランナー 特に最初からテストを⾃動化するようにしていて、様々なライブラリにお世話になってます。
Copyright © NTT Communications Corporation. All right reserved. 91 Application開発フロー
・スクラムを採⽤しバックログをカンバン管理 そんなアプリ開発はアジャイルの⼿法であるスクラムをよく利⽤します。
Copyright © NTT Communications Corporation. All right reserved. 92 Application開発フロー
・スクラムを採⽤しバックログをカンバン管理 ・カンバンは開発メンバの物理ロケ分散を考慮し Huboard(GitHub issueのWrapper) を利⽤してonline管理
Copyright © NTT Communications Corporation. All right reserved. 93 Application開発フロー
・スクラムを採⽤しバックログをカンバン管理 ・カンバンは開発メンバの物理ロケ分散を考慮し Huboard(GitHub issueのWrapper) を利⽤してonline管理 ・個々のタスクは全てのメンバが拾うようにし、 できるだけ多技能⼯を⽬指す ⇒ SPOFを開発プロセスの中で撲滅 多技能⼯を⽬指しペアプロなども併⽤し、SPOFを減らしにかかります。
Copyright © NTT Communications Corporation. All right reserved. 94 Application開発フロー
・スクラムを採⽤しバックログをカンバン管理 ・カンバンは開発メンバの物理ロケ分散を考慮し Huboard(GitHub issueのWrapper) を利⽤してonline管理 ・個々のタスクは全てのメンバが拾うようにし、 できるだけ多技能⼯を⽬指す ⇒ SPOFを開発プロセスの中で撲滅 ・その際の初期の⽣産性の低下は許容 (どうせ後から回収できる) 最初は⽣産性が落ちます。マネージャは許してあげてください。
Copyright © NTT Communications Corporation. All right reserved. 95 続:Application開発フロー
①Pull Request ②Webhook ⑤Webhook Drone CI※ ③dockerコンテナ上で 任意のテスト実⾏ ⑥Cloudn ObjectStorage やAWS S3へ保存 ④コードレビュー &PRマージ GHE ・ベースは先ほど説明のフローと同様 ※ ⼀部のCIは、Droneの代わりにJenkinsも併⽤ Terraform時とほとんど同様なので、詳細は割愛しますが、ポイントは…
Copyright © NTT Communications Corporation. All right reserved. 96 Point1:
④のコードレビュー ①Pull Request ②Webhook ⑤Webhook Drone CI※ ③dockerコンテナ上で 任意のテスト実⾏ ⑥Cloudn ObjectStorage やAWS S3へ保存 ④コードレビュー &PRマージ GHE ・ベースは先ほど説明のフローと同様 ※ ⼀部のCIは、Droneの代わりにJenkinsも併⽤ コードレビューの重要視です。コードレビューには様々なメリットがあります。それは…
Copyright © NTT Communications Corporation. All right reserved. 97 ④コードレビュー
・コードレビューは有⽤ ・ソフトウェアの品質向上 ・チームメンバのスキル向上 ・情報共有によるSPOFの撲滅 良い点がたくさんあります。ですが、実際に簡単に組み込めているわけではなく…
Copyright © NTT Communications Corporation. All right reserved. 98 ④コードレビュー
・コードレビューは有⽤ ・ソフトウェアの品質向上 ・チームメンバのスキル向上 ・情報共有によるSPOFの撲滅 ・⼀⽅でコードレビューは 油断するとスキップされうるプロセス (実際、当初は上⼿くできていなかった) 最初は難しかったです。じゃあ、どうやって組み込んでいったのかというと…
Copyright © NTT Communications Corporation. All right reserved. 99 続:④コードレビュー
・そこで、チームの技術指針に組込み 何度も話をするなどして、徐々に浸透させる コードレビューに他で、アプリケーション開発で重要視しているのが…
Copyright © NTT Communications Corporation. All right reserved. 100 Point2:
⑥でもサクッと動く設計が重要 ①Pull Request ②Webhook ⑤Webhook Drone CI※ ③dockerコンテナ上で 任意のテスト実⾏ ⑥Cloudn ObjectStorage やAWS S3へ保存 ④コードレビュー &PRマージ GHE ・ベースは先ほど説明のフローと同様 クラウドでのデプロイに適した設計です。それは定番の指針があります。それは…
Copyright © NTT Communications Corporation. All right reserved. 101 12
Factor App な設計へ http://12factor.net/ja/
Copyright © NTT Communications Corporation. All right reserved. 102 アジェンダ
1. 内製開発の種をまく ・⽂化の話 2. 内製開発を開花させる ・技術の話(おまけ) ・⽂化の話 ここまではエンジニアらしい技術を紹介してきました。 ちなみに、今回のデブサミのテーマってご存知ですか?
Copyright © NTT Communications Corporation. All right reserved. RealをHackする、ということです。ならば、エンプラのエンジニアらしく…
Copyright © NTT Communications Corporation. All right reserved. エンタープライズ系業務も エンジニアらしくHack!
エンプラで仕事で使うソフトと⾔えば…
Copyright © NTT Communications Corporation. All right reserved. 105 Officeとは友達ですよね!?
・プロジェクト企画/計画書、営業資料 etc… ・Officeはビジネス職のメンバとの 最強の共通プロトコル エンジニアがビジネス職の皆様と会話できる最強のプロトコルがOfficeです
Copyright © NTT Communications Corporation. All right reserved. 106 •
提案資料.pptx オフィスあるある まずファイルを作ります。で修正を加えたら…
Copyright © NTT Communications Corporation. All right reserved. 107 •
提案資料.pptx • 提案資料_20160219.pptx ⽇付を追加して更新 さらに…
Copyright © NTT Communications Corporation. All right reserved. 108 •
提案資料.pptx • 提案資料_20160219.pptx • 提案資料_20160219r2.pptx ちょっとした修正なのでr2へ ちょっとした修正をしました。そんな中、世の中には親切な⽅がいます…
Copyright © NTT Communications Corporation. All right reserved. 109 •
提案資料.pptx • 提案資料_20160219.pptx • 提案資料_20160219r2.pptx • 提案資料_20160219(最終).pptx なんと親切なファイル名 これは⾮常にわかりやすい! ですが、現実は⽢くないです…
Copyright © NTT Communications Corporation. All right reserved. 110 •
提案資料.pptx • 提案資料_20160219.pptx • 提案資料_20160219r2.pptx • 提案資料_20160219(最終).pptx • 提案資料_20160219(最終2).pptx もう誰も信じられない
Copyright © NTT Communications Corporation. All right reserved. 111 •
提案資料.pptx + 修正履歴/理由 • 提案資料_20160219.pptx • 提案資料_20160219r2.pptx • 提案資料_20160219(最終).pptx • 提案資料_20160219(最終2).pptx 本来必要なもの
Copyright © NTT Communications Corporation. All right reserved. 112 •
提案資料.pptx + 修正履歴/理由 • 提案資料_20160219.pptx • 提案資料_20160219r2.pptx • 提案資料_20160219(最終).pptx • 提案資料_20160219(最終2).pptx それはまさにバージョン管理が得意なところ ⇒ GitHubで管理すればいいのでは?
Copyright © NTT Communications Corporation. All right reserved. 113 だが弱点がある
= 差分が⾒れない GitHubって、バイナリの差分は⾒れません。ですが…
Copyright © NTT Communications Corporation. All right reserved. 114 GitHubの事実
https://help.github.com/articles/rendering-and-diffing-images/ • 画像ならバイナリでも差分確認可能 画像は差分が⾒れます。ならば、これを活⽤しましょう!
115 Copyright © NTT Communications Corporation. All right reserved. 115
ということで、 パワポ修正&レビューをCI likeに 業務プロセスへ導⼊してみた
Push & Pull Request Webhook PPTからJPG変換 JPGを`git add`して、 GitHubへPush git
push 差分を確認 CIサーバ パワポのCIフロー パワポをPush、CIがフックして画像を⽣成、それをGitHubへ再Pushします。すると…
117 パワポの差分レビューが簡単に! ⾚⾊点線枠のところが差分で、GitHubでビジネス業務⽂書もレビューできるようになりました!
Copyright © NTT Communications Corporation. All right reserved. 118 アジェンダ
1. 内製開発の種をまく ・⽂化の話 2. 内製開発を開花させる ・技術の話 ・⽂化の話(Tipsを紹介) 最後に、チームが成⻑するために良かったTipsをいくつか紹介します。
119 Copyright © NTT Communications Corporation. All right reserved. Tips
1: モチベーションの向上
Copyright © NTT Communications Corporation. All right reserved. 120 個々のモチベーションを⾼める
https://rotsuya.github.io/slides/enterprise-hacks-201512/#35 これを補⾜するTEDのトークがあり、同様のことが⾔われています…
Copyright © NTT Communications Corporation. All right reserved. 「20世紀的な報酬、 ビジネスで当然のものだと
みんなが考える動機付けは機能はするが 驚くほど狭い範囲の状況にしか合いません」 ー ダニエル・ピンク 121 知的労働に対して、⾦銭的な報酬ではダメということです。では何が必要かというと…
Copyright © NTT Communications Corporation. All right reserved. 122 モチベーションの3要素
⾃律性 熟達 ⽬的 ・⾃由 ・セルフコントロール ・何かを極める ・意義を感じられる
Copyright © NTT Communications Corporation. All right reserved. 123 モチベーションの3要素
⾃律性 熟達 ⽬的 ・⾃由 ・セルフコントロール ・何かを極める ・意義を感じられる
Copyright © NTT Communications Corporation. All right reserved. 124 ⾃由とセルフコントロール
・勤務制度 ・リモートワーク ・フレックス ・開発合宿/ハッカソン
Copyright © NTT Communications Corporation. All right reserved. 125 ⾃由とセルフコントロール
・勤務制度 ・リモートワーク ・フレックス ・開発合宿/ハッカソン ・現チームでは3ヶ⽉に1回、 開発合宿/ハッカソンを開催 (⼤企業で20%ルールは、兼務・割り込みが多く難しい) ちなみに先ほどの パワポ x GitHub x CI も1泊2⽇の開発合宿で⽣まれたものです。
Copyright © NTT Communications Corporation. All right reserved. 126 続:⾃由とセルフコントロール
・環境 ・開発マシン(Mac) ・⼤きいディスプレイ ・⾃由なネットワーク エンプラ系の開発環境で重要なのがNWです。Slideshareなどをすぐに⾒れますか?
Copyright © NTT Communications Corporation. All right reserved. 127 プロキシをくぐり抜けてませんか?
Copyright © NTT Communications Corporation. All right reserved. 128 プロキシをくぐり抜けてませんか?
無駄な部分にリソース消費してますよね。やはりエンジニアに必要なのは…
Copyright © NTT Communications Corporation. All right reserved. 129 https://www.flickr.com/photos/kalyan02/4741751904/in/photolist-8e1HDb-u
ZuS1 9-s8rMuD-6NBiXW-dWjASX-4sSHP1-7gyTGx-p3JgM V-xD7BBS-9o VL1S-7 uFkF1-3d45en -uYHRkF-34 RGLp-pNL5v5-qw RFHX-f5EY ST-srX6Dn-48qqS9 -BcR8 if-vd5CVT-B9z5JF-9Du5nJ-asnhrX-9 3QiHW- 9VPysp-8B1zEg-bHPDvZ-6ZvBPc-7nV9sL-eZFf6T-fSvizn-4EeJjv-pMzoj2-AK5m R-5qT nBV-dmt8q-5MznQ1-dssvLL-e3w3aZ-3eNZ7s-4fpeSy-4fkfYP-bTRXJn-tq Vje-7Sm7h B-5oXSza-6vTZw J-du BgR8 -9DxVo ⾃由に使える開発向けネットワークを
Copyright © NTT Communications Corporation. All right reserved. 130 続:⾃由とセルフコントロール
・環境 ・開発マシン(Mac) ・⼤きいディスプレイ ・⾃由なネットワーク ・ツール ・Slack、GitHub ・任意のIDE など
Copyright © NTT Communications Corporation. All right reserved. 131 Slack
= エンジニア向けチャット ・APIが公開されており簡単にHack可能 131 SlackはAPIが公開されており、ボットを中に参加できます…1例として…
Copyright © NTT Communications Corporation. All right reserved. 132 愛⽤されるボット
・メンバは作業中の情報を ボット(⾃動応答プログラム)を利⽤しつつ 常時アウトプット ⇒ 作業の⾒える化 ToDo管理の例 132 作業の⾒える化を狙ったTODOボットを利⽤しています。
Copyright © NTT Communications Corporation. All right reserved. 133 続続:⾃由とセルフコントロール
・社「外」勉強会への参加の推奨 133 社外勉強会での発表は許可などが必要かと思いますが、積極的に送り出してください。
Copyright © NTT Communications Corporation. All right reserved. 134 続続:⾃由とセルフコントロール
・社「外」勉強会への参加の推奨 ・特にアウトプットを推奨 ・コアとなるノウハウは隠蔽すべき、 だが実際にはそれほど多くは無い 134 本当のノウハウは隠せばいいですが、周辺技術は特に出しても問題ないものも多いです。
Copyright © NTT Communications Corporation. All right reserved. 135 続続:⾃由とセルフコントロール
・社「外」勉強会への参加の推奨 ・特にアウトプットを推奨 ・コアとなるノウハウは隠蔽すべき、 だが実際にはそれほど多くは無い ・「講演する ⇔ 詳細に調査する」x N回 を繰り返すと、「熟達」につながる 135 講演を繰り返すと、良いフィードバックループが周りモチベーション向上につながります。
Copyright © NTT Communications Corporation. All right reserved. 136 再掲:モチベーションの3要素
熟達 ⽬的 ・⾃由 ・セルフコントロール ・何かを極める ・意義を感じられる ⾃律性
Copyright © NTT Communications Corporation. All right reserved. 137 熟達:何かを極める
・その道のエキスパートになる 137 勉強会で多く発表して、Expertになった良い⼈物が弊社にいます…
Copyright © NTT Communications Corporation. All right reserved. 138 熟達:何かを極める
・その道のエキスパートになる ・例: NTTコミュニケーションズ Webアプリケーション エバンジェリスト Google Developer Expert ⼩松 健作 ⽒ 138 現在はUSベイエリアで活躍中です!
Copyright © NTT Communications Corporation. All right reserved. 139 再掲:モチベーションの3要素
⾃律性 熟達 ⽬的 ・⾃由 ・セルフコントロール ・何かを極める ・意義を感じられる 139 最後の要素は⽬的です。これは⾮常に難しいですが…
Copyright © NTT Communications Corporation. All right reserved. 140 共感できるビジョンを⽰す
https://rotsuya.github.io/slides/enterprise-hacks- 201512/#45
Copyright © NTT Communications Corporation. All right reserved. 141 SkyWayのミッションステートメント
142 Copyright © NTT Communications Corporation. All right reserved. Tips
2: ⽂化の醸成
Copyright © NTT Communications Corporation. All right reserved. 143 ・チームの⽂化を作る
・変化や逆境に強い組織 ⽂化を作る 143 ⼤企業では、他の施策などから様々な余波がチームを襲ってきますが強いチームなら耐えられます
Copyright © NTT Communications Corporation. All right reserved. 144 ・チームの⽂化を作る
・変化や逆境に強い組織 ・⾏動指針を作って合意を形成し 徐々に浸透させる ・新規メンバのチーム参加時に説明 ・既存メンバ含め継続的に浸透 ⽂化を作る 144 強いチームを作るために、⾏動指針などを規定して浸透させます。指針とは例えば…
Copyright © NTT Communications Corporation. All right reserved. 145 チームのガイド・ポリシーの規定例
Copyright © NTT Communications Corporation. All right reserved. 146 チームのガイド・ポリシーの規定例
146 情報発信・共有は特に重要視しています。具体的にはたとえば…
Copyright © NTT Communications Corporation. All right reserved. 147 情報共有について
・原則、情報はURL付きで チーム内に全て公開して⾒える化
Copyright © NTT Communications Corporation. All right reserved. 148 情報共有について
・原則、情報はURL付きで チーム内に全て公開して⾒える化 なぜ、徹底して こだわるのか?
Copyright © NTT Communications Corporation. All right reserved. 149 情報共有が必要な理由
・共有されていない情報は、 そのままチームのSPOFになる
Copyright © NTT Communications Corporation. All right reserved. 150 情報共有が必要な理由
・共有されていない情報は、 そのままチームのSPOFになる ・情報の隠蔽は不要な権⼒を⽣み出す
Copyright © NTT Communications Corporation. All right reserved. 151 情報共有が必要な理由
・共有されていない情報は、 そのままチームのSPOFになる ・情報の隠蔽は不要な権⼒を⽣み出す ・プロジェクトの範囲が⾒えないと、 個々のメンバの裁量も⽣まれない ・例:Aさんがやってる可能性があるから ⾃分がやっていいのか判断できない
Copyright © NTT Communications Corporation. All right reserved. 152 情報発信を促すTips
・全体ミーティングなどで 情報発信が必要な意義を理解してもらう
Copyright © NTT Communications Corporation. All right reserved. 153 情報発信を促すTips
・全体ミーティングなどで 情報発信が必要な意義を理解してもらう ・⾔い出しっぺが⾃ら書きまくる姿を⾒せる (⼼が折れそうでも、そこは頑張る!)
Copyright © NTT Communications Corporation. All right reserved. 154 情報発信を促すTips
・全体ミーティングなどで 情報発信が必要な意義を理解してもらう ・⾔い出しっぺが⾃ら書きまくる姿を⾒せる (⼼が折れそうでも、そこは頑張る!) https://speakerdeck.com/naoya/qing-bao-gong-you-shi-bai-aruaru
Copyright © NTT Communications Corporation. All right reserved. 155 情報発信を促すTips
・誰かが記事などを書いてくれたら、 全⼒で「 」!
Copyright © NTT Communications Corporation. All right reserved. 156 実際にはこのぐらいのノリで
・誰かが記事などを書いてくれたら、 全⼒で「 」!
157 Copyright © NTT Communications Corporation. All right reserved. 157
Tips 3: ⽣産性の向上を強く意識 エンプラ企業であまり意識されていないことかもしれませんが、⽣産性向上のためには…
Copyright © NTT Communications Corporation. All right reserved. 158 集中することに集中する
Copyright © NTT Communications Corporation. All right reserved. 159 続:集中することに集中する
Copyright © NTT Communications Corporation. All right reserved. 机の前に何時間座っていたかは どうでもいいことで、
全神経を集中して 仕事に取り組んだ時間が重要なのだ (ピープルウェア より)
161 Copyright © NTT Communications Corporation. All right reserved. Tips
4: 継続的チーム改善
Copyright © NTT Communications Corporation. All right reserved. 162 KPTでの振り返り
・定期的にチーム全体で改善会議 ・実施⽅式はKPT(Keep, Problem, Try)
Copyright © NTT Communications Corporation. All right reserved. 163 ポイントは担当者アサイン
・定期的にチーム全体で改善会議 ・実施⽅式はKPT(Keep, Problem, Try) 次回の改善事項の期⽇を決め 担当者をアサインし 次回の会議でTryを振り返り 163 当たり前かもしれませんが、特に担当者を決めるのが重要です。というのも…
Copyright © NTT Communications Corporation. All right reserved. “私達”というのは結局やらない (Developerʼs
Codeより) 164 「私達」は責任・責務をあいまいにする⾮常に便利な⾔葉です。
Copyright © NTT Communications Corporation. All right reserved. 165 https://www.flickr.com/photos/matianming/11622156285/in/photolist-iH1A9V-dpgEPq-dpgyJi-4nACsY-MdAxR-3YxJ3M-5sVma5-6zY6TJ-MdBVW-PHMHg-iH5z9m-4nwxkn-aDJe7-iH1xgv-dpgJKU-cpnz4-dpgFjG-5fMjk-
9sm6N6-wSJSXt-MdsaQ-fSEFmT-atS39L-fSEFnK-4nABrL-bt6mbS-aDJ63-PHcBj-6Bsn5y-MdBFc-fSFiD3-iH1yLK-aJn3R-pRR1j3-4eq7nv-5Lumw-DX7xAt-52brFk-7Q6Yj8-7SD1LL-4nADHE-2bKJG-93TZN5-fSBUpt-6ZwEVH- 7SzFYB-7cNAiP-fEE2hu-7Q6WAg-fSFihm 私達も まだまだ道半ば 165 改善に終わりはありません。だまだ出来ていないこともあります。例えば…
Copyright © NTT Communications Corporation. All right reserved. 166 こういうスケジュールになってませんか?
会議などで 埋まっている カレンダーの図 166 これを引き起こす要因でメジャーなものが…
Copyright © NTT Communications Corporation. All right reserved. 167 (管理層の考える)
兼務の魔法 +業務A(50%) +業務B(30%) +業務C(20%) = 100%
Copyright © NTT Communications Corporation. All right reserved. 168 これ⼤嘘です
+業務A(50%) +業務B(30%) +業務C(20%) = 100% 168 168 これは間違ってます。理由は…
Copyright © NTT Communications Corporation. All right reserved. 169 コンテキストスイッチのコストを忘れずに
脳内2次記憶 (HDD/SSD) 脳内1時記憶 (RAM) 業務A 業務B 業務C 業務A Swap-in Swap-out 169 169 スワップイン・アウトのコストは無視できないレベルで⼤きいです。そのためには…
Copyright © NTT Communications Corporation. All right reserved. 170 コンテキストスイッチのコストを忘れずに
脳内2次記憶 (HDD/SSD) 脳内1時記憶 (RAM) 業務A 業務B 業務C 業務A Swap-in Swap-out 兼務は可能な限り解消すべき! (まだ道半ば)
171 Copyright © NTT Communications Corporation. All right reserved. まとめ
171
Copyright © NTT Communications Corporation. All right reserved. 172 本⽇、お聞きいただいたこと
• 内製開発の必要性 • 内製開発の種をまく ・⽂化の話 • 内製開発を開花させる ・技術の話 ・⽂化の話
Copyright © NTT Communications Corporation. All right reserved. 173 今⽇のゴール
内製を始める気になる ⇒ ⾏動する https://www.flickr.com/photos/andrewrennie/4472877398/in/photolist-7PfEBQ-5px JLr-5PbsGo-81L4B2 -9cDmTe-83PVUn-5ycqEA-6E5mwe-kYQ RQG-8qVpqN-pU1YS-5zW1JQ -xpcC-AYaHeS-dVqiY4-7xrZkS-bgLYCP -mUegg6-kfWGGF-4BYPHM-a9 iUAG-av9EvZ-96Jeo X-bz76rh-9 StUXb- 9StW6E-sBT1G-pBStcN-ptDpPw-7QCia5-apLjca-9ogohE-8RKCvB-6 A6nxy-9sLrvz-9yPcYk-4rUuRj-9sLrrM -bK3EL X-h3b6h C-Di8iy-db 8GGs-4qydtJ-aQxVkx -nZwcve-bHfVNF-yn KYR3 -7BnpmJ-3Vyqq 9-9W8TYc
Copyright © NTT Communications Corporation. All right reserved. 174 今⽇のゴール
内製を始める気になる ⇒ ⾏動する https://www.flickr.com/photos/andrewrennie/4472877398/in/photolist-7PfEBQ-5px JLr-5PbsGo-81L4B2 -9cDmTe-83PVUn-5ycqEA-6E5mwe-kYQ RQG-8qVpqN-pU1YS-5zW1JQ -xpcC-AYaHeS-dVqiY4-7xrZkS-bgLYCP -mUegg6-kfWGGF-4BYPHM-a9 iUAG-av9EvZ-96Jeo X-bz76rh-9 StUXb- 9StW6E-sBT1G-pBStcN-ptDpPw-7QCia5-apLjca-9ogohE-8RKCvB-6 A6nxy-9sLrvz-9yPcYk-4rUuRj-9sLrrM -bK3EL X-h3b6h C-Di8iy-db 8GGs-4qydtJ-aQxVkx -nZwcve-bHfVNF-yn KYR3 -7BnpmJ-3Vyqq 9-9W8TYc NTT Comのような外注が多い企業でも イマドキの内製は実現できるのだから あなたの会社でも絶対にできる!
Copyright © NTT Communications Corporation. All right reserved. 175 今⽇のゴール
内製を始める気になる ⇒ ⾏動する https://www.flickr.com/photos/andrewrennie/4472877398/in/photolist-7PfEBQ-5px JLr-5PbsGo-81L4B2 -9cDmTe-83PVUn-5ycqEA-6E5mwe-kYQ RQG-8qVpqN-pU1YS-5zW1JQ -xpcC-AYaHeS-dVqiY4-7xrZkS-bgLYCP -mUegg6-kfWGGF-4BYPHM-a9 iUAG-av9EvZ-96Jeo X-bz76rh-9 StUXb- 9StW6E-sBT1G-pBStcN-ptDpPw-7QCia5-apLjca-9ogohE-8RKCvB-6 A6nxy-9sLrvz-9yPcYk-4rUuRj-9sLrrM -bK3EL X-h3b6h C-Di8iy-db 8GGs-4qydtJ-aQxVkx -nZwcve-bHfVNF-yn KYR3 -7BnpmJ-3Vyqq 9-9W8TYc NTT Comのような外注が多い企業でも イマドキの内製は実現できるのだから あなたの会社でも絶対にできる! あとは⾏動するのみ!!! ご清聴ありがとうございました!