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
piyonakajima
April 16, 2025
Technology
2
350
組織のソースコードを共有しよう!インナーソース最初の一歩〜実践者達と歌を作った結果、社内でインナーソース文化が育ち始めた〜 / innersource man
https://confengine.com/conferences/devopsdays-tokyo-2025/proposal/21592
piyonakajima
April 16, 2025
Tweet
Share
More Decks by piyonakajima
See All by piyonakajima
日報にたちカエル〜自分のためのYWT日報をはじめたら苦手だった日報が楽しくなって仕事にもつながった話〜 / lets try ywt
piyonakajima
2
1.9k
AIがチームのふりかえりをサポート!KAGが提供するツール「anycommu」〜AIスクラムマスター Fearless Changeモードのご紹介〜 / Introduce the retrospective tool powered by generative AI anycommu
piyonakajima
0
190
[ナイトセッション] これが私の生きる道組織の中で自分らしさを貫くアジャイル実践者たちの物語piyonakajimaの場合 / This is my way
piyonakajima
0
3.3k
たった一人で始めた音楽制作が気がついたら会社公認の部活動になっていた話〜組織の垣根を超えるコラボレーションを実現するには〜 / On-KAG-bu
piyonakajima
0
680
リフレッシュ!お楽しみ企画 / Reflesh! The Fun Project - InnerSource Gathering Tokyo 2024
piyonakajima
2
890
ぶっちゃけて話すための場作り / Creating an Environment for Open and Honest Communication
piyonakajima
10
58k
3大クラウドLLMバトル! The Big Three Cloud LLM Battle
piyonakajima
1
2.3k
Changing Teams with Music A Retrospective on a Year of Adding Music to Company and Team Journey
piyonakajima
0
760
開発チームだけじゃない!マーケティングチームも毎日Fun Done Learnを半年以上実践している秘訣
piyonakajima
1
730
Other Decks in Technology
See All in Technology
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
160
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
250
United™️ Airlines®️ Customer®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedguide
0
260
20250705 Headlamp: 專注可擴展性的 Kubernetes 用戶界面
pichuang
0
280
ゼロからはじめる採用広報
yutadayo
3
980
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
2
200
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
240
ネットワーク保護はどう変わるのか?re:Inforce 2025最新アップデート解説
tokushun
0
210
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
1
230
MUITにおける開発プロセスモダナイズの取り組みと開発生産性可視化の取り組みについて / Modernize the Development Process and Visualize Development Productivity at MUIT
muit
2
17k
Reach American Airlines®️ Instantly: 19 Calling Methods for Fast Support in the USA
flyamerican
1
180
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
53
7.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Visualization
eitanlees
146
16k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Cult of Friendly URLs
andyhume
79
6.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Designing for humans not robots
tammielis
253
25k
Building an army of robots
kneath
306
45k
Designing for Performance
lara
610
69k
Transcript
2025/04/16 DevOpsDays Tokyo 2025 組織のソースコードを共有しよう! インナーソース最初の一歩 〜実践者達と歌を作った結果、社内でインナーソース文化が育ち始めた〜 KDDI アジャイル開発センター 中島智弘 下川真弘
1
2
Learning Outcome インナーソースについて知れる インナーソースを実践する第一歩がわかる Target Audience 車輪の再発明や、組織のサイロに悩む人、インナーソースを始めてみたいけど一緒に 取り組む仲間が見つからない人 3
注意 今回の登壇内容は事実に基づいて作りましたが、私の解釈が含まれています。私が分 かったこと、感じたことに価値があると信じてお話します。 4
インナーソースとは インナーソース (InnerSource) は、オープンソースソフトウェア開発におけるベストプラクテ ィスを活用し、非オープンソースやプロプライエタリソフトウェアを開発する組織内にオープン ソースの手法を取り入れることである (Wikipediaより) 5
インナーソースとは インナーソース (InnerSource) は、オープンソースソフトウェア開発におけるベストプラクテ ィスを活用し、非オープンソースやプロプライエタリソフトウェアを開発する組織内にオープン ソースの手法を取り入れることである (Wikipediaより) 「オープンソースっぽいことを社内でやろうぜ」 (中島意訳) 6
7
私が感じていた課題① ソースコードのコラボレーション 社員は100名弱→200名超まで増加!! アーキテクチャは各プロジェクト毎に決めている 但しセキュリティの関係もあり、ソースコードは社内でも限定公開 各自今の仕事以外でそれぞれスキルアップしたい技術領域がある...(と思っている) 8
私が感じていた課題① 一方でKAGは社内横断施策が活発 毎週金曜1730-1830は全社OST@オンライン 社外の人も巻き込んだコミュニティイベントも多数企画 ソフトウェアエンジニアのコラボ機会少ない...? エンジニアなんだからコード書いて共有する場がもっ とあればいいのに…! 9
私が感じていた課題② anycommu Fun Done Learnなどふりかえりを 気軽に楽しく実施できるツール 業務の合間でKDDI本体のメンバー で中島中心に作っていた 10
私が感じていた課題② anycommu Fun Done Learnなどふりかえりを気軽に楽しく実施できるツール 業務の合間でKDDI本体のメンバーで中島中心に作っていた 歌を作って宣伝した結果、社内外100チーム近くに使ってもらえるツールになった 色々あってKAGに移管をしたのだが、開発が止まってしまった... (皆使っているのに...) 11
RSGT2024にて 私が登壇 Fun Done Learnのうた を作った話 英語でシドロモドロ この時GitHubJapanの服部さんが 来ていた 「インナーソースの人だ!!!」 →廊下で質問責め
別の勉強会で再会 「インナーソースの曲つくりま しょうw」 この時は冗談だと思ってた 12
InnerSource Gathering運営への参加 インナーソースについて 「初心者向けのわかりやすいコンテ ンツがない」 という課題があった 13
インナーソースとは(再掲) インナーソース (InnerSource) は、オープンソースソフトウェア開発におけるベストプラクテ ィスを活用し、非オープンソースやプロプライエタリソフトウェアを開発する組織内にオープン ソースの手法を取り入れることである (Wikipediaより) 「オープンソースっぽいことを社内でやろうぜ」 (中島意訳) 確かに難しい…イメージしにくいしどこからどうすれば…
14
「インナーソースの価値基準を考え る会」 楽曲作りを前提に実施した三回のワークショップ 第一回 miroに書き出して終わる 第二回 Niftyさんのオフィスにて。インナーソース の大切にしている言葉を発散させる 15
「インナーソースの価値 基準を考える会」 ワークショップの様子 dot投票で多数あったもの 助ける助かる 開かれたドア positiveなシャドウ 16
試しに生成AIで作って みた 早く失敗しよう ふせんをChatGPTに流して歌 詞を作りSunoAIでいっぱい作 る でも俺の心に何にも響かない 良いところを並べただけでは何 も伝わらない 17
何故響かない? 18
何故響かない? 国内実践者のインナーソース導入の動機は深い組織課題から来ていた 組織のサイロ化、車輪の再発明を防ぐ、組織の硬直化、etc.etc. 19
何故響かない? 国内実践者のインナーソース導入の動機は深い組織課題から来ていた 組織のサイロ化、車輪の再発明を防ぐ、組織の硬直化、etc.etc. 良い所並べても課題の深刻さが伝わっていない どんな課題をどう解決するのか?再整理することになった。 20
ペルソナを決めよう 21
ペルソナを決めよう 30代男性リーダーポジション、プレイングマネージャー的立ち回り。 会社の組織課題を解決する曲に 22
ペルソナを決めよう 30代男性リーダーポジション、プレイングマネージャー的立ち回り。 会社の組織課題を解決する曲に 戦隊モノだ!! 23
ペルソナを決めよう 30代男性リーダーポジション、プ レイングマネージャー的立ち回り。 会社の組織課題を解決する曲に 戦隊モノだ!! 歌詞は暫定で曲だけ先に作る ペルソナから90-00年代 バンドサウンドにシンセサイザ ーのソロが入る曲 24
第三回 価値基準を考える会 KDDI DIGITAL GATEにて 25
第三回 価値基準を考える会 ペルソナ:30代男性リーダーポジション、プレイングマネージャー的立ち回り 26
第三回 価値基準を考える会 ペルソナ:30代男性リーダーポジション、プレイングマネージャー的立ち回り この人はどういうシチュエーションでインナーソースを広げる? 27
第三回 価値基準を考える会 ペルソナ:30代男性リーダーポジション、プレイングマネージャー的立ち回り この人はどういうシチュエーションでインナーソースを広げる? O:起こっていること: 作ったコードはある。しかし、面倒なので積極的に誰か に見せていない 28
第三回 価値基準を考える会 ペルソナ:30代男性リーダーポジション、プレイングマネージャー的立ち回り この人はどういうシチュエーションでインナーソースを広げる? O:起こっていること: 作ったコードはある。しかし、面倒なので積極的に誰か に見せていない N:望んでいること: 同じものを二度作りたくない。俺が作ったことを褒められ たい 29
第三回 価値基準を考える会 ペルソナ:30代男性リーダーポジション、プレイングマネージャー的立ち回り この人はどういうシチュエーションでインナーソースを広げる? O:起こっていること: 作ったコードはある。しかし、面倒なので積極的に誰か に見せていない N:望んでいること: 同じものを二度作りたくない。俺が作ったことを褒められ たい Y:やってみること:
インナーソースの導入!! 30
QA (1)(中島の解釈意訳含む) Q.インナーソースを導入するには何を最初にする必要があるの? 31
QA (1)(中島の解釈意訳含む) Q.インナーソースを導入するには何を最初にする必要があるの? 作ったコードやドキュメントを勇気を持って社内に公開すること そして、社内で別の社員に貢献して欲しいことを伝えること コードがどのようなコードで、他社が貢献できることを表明する 具体的にはREADME.mdとCONTRIBUTING.mdの整備 32
InnerSource Patterns Webにてインナーソースのパターンランゲ ージが掲載されている Standard base documentation README.mdやCONTRIBUTING.mdを提 供することで、新しいコントリビューター に見つけてもらえる
33
QA (2) (中島の解釈意訳含む) Q. インナーソースってなぜ続くの?組織に広げられるの? 34
QA (2) (中島の解釈意訳含む) Q. インナーソースってなぜ続くの?組織に広げられるの? フィードバックが嬉しい。 プログラムを使ったことへの感謝から始まる。 「ありがとう」がほしい。ある種の承認欲求もあるかもしれない。 でももらっ たら嬉しい。
別にPull Requestだけじゃない。使ってもらった。likeをもらえた。Issueが来 た。すべて大事なフィードバック。 35
作詞は夜10時にまで及んだ 36
できた曲 「共創未来インナーソースマン」 InnerSource Gathering Tokyo 2024にて発表 37
歌詞解説 38
オレはオレの書いたコードのメンテナー のうのうと生きていたら俺は企業のサイロに閉じ込められてしまった このままでは来年の新入社員もサイロに閉じ込められてしまう 共創未来 インナーソースマン!! オレの作ったレポジトリ みんな使ったらいいのに 色々言われるの嫌だから誰にも言わずに置いとこう だけど隣のチームが同じものをつくる予定らしい これじゃまるで車輪の再発明(思い切って社内に公開してみよう)
39
README.md 分かりやすくしたら 「何のコードかがよく分かった」 CONTRIBUTING.md ちゃんと用意したら 「コードに触れても良いと知った」 Starがもらえた! Issueが来た! PR(プルリク)もらえた! 助ける助かる 開かれたドア
Feedbackがうれしい (みんなで作って 進化させていこう) この歌の提供は InnerSource Commons コミュニティと KDDIアジャイル開発センターの提供でお送りしました 40
KAGの社員で完成 「Feedbackがうれしい」の連鎖で 曲の完成度が上がっていった 詳細はXP祭りをみてください https://speakerdeck.com/pi yonakajima/on-kag-bu- 468185e4-ffc7-457f-ad67- 7eb334ba84c7 これも一つのインナーソースだった 41
翌日「俺の作ったレポジトリ」に初めてPRが来た!! 42
翌日「俺の作ったレポジトリ」に初めてPRが来た!! 私が作ったSlack botがあった 43
翌日「俺の作ったレポジトリ」に初めてPRが来た!! 私が作ったSlack botがあった ちょっとした業務課題解決で約半分の社員が使っている 軽微な不便なちょっとした不具合があった 44
翌日「俺の作ったレポジトリ」に初めてPRが来た!! 私が作ったSlack botがあった ちょっとした業務課題解決で約半分の社員が使っている 軽微な不便なちょっとした不具合があった 翌日作詞エピソードをSlackに共有→PRがきた CONTRIBUTING.mdは書いてなかった 45
なぜPRが飛んできたのか? 46
なぜPRが飛んできたのか? Yやったこと: インナーソースの価値基準を考える会で学んだことをSlackに共有し た 47
なぜPRが飛んできたのか? Yやったこと: インナーソースの価値基準を考える会で学んだことをSlackに共有し た Oおこったこと: Pull Requestが飛んできた 48
なぜPRが飛んできたのか? Yやったこと: インナーソースの価値基準を考える会で学んだことをSlackに共有し た Oおこったこと: Pull Requestが飛んできた Wわかったこと: 私が、貢献を歓迎するという意思表示をしたから。 49
なぜPRが飛んできたのか? Yやったこと: インナーソースの価値基準を考える会で学んだことをSlackに共有し た Oおこったこと: Pull Requestが飛んできた Wわかったこと: 私が、貢献を歓迎するという意思表示をしたから。 そして、フィードバックがとてつもなく嬉しかった
自分が書いたコードで作ったものを使ってくれていた それを大切に思ってくれていた 50
なぜPRが飛んできたのか? Yやったこと: インナーソースの価値基準を考える会で学んだことをSlackに共有し た Oおこったこと: Pull Requestが飛んできた Wわかったこと: 私が、貢献を歓迎するという意思表示をしたから。 そして、フィードバックがとてつもなく嬉しかった
自分が書いたコードで作ったものを使ってくれていた それを大切に思ってくれていた こうして最初のインナーソース実践事例が生まれた 51
実践する前に思っていた一歩と実践した後の一歩の違 い 実践する前の第一歩(想像) ルールづくりが先。誰かが公開して誰かがPull Requestを送る仕組みが必要。ト ップダウンの理解が最初に必要。 実践した後の第一歩(実際) 自分がレポジトリを作って公開する。それを使った人からのフィードバックを募 集していることを自分が発信する。 組織文化であり、自発的にやるもので自分が実践することが大事。
52
二次利用が進む CEDECにてバンダイナムコの八重樫さんご紹介 三菱電機の追立さんご紹介 社内イベントにてインナーソースマンを流す イベントにてNifty芦川さんご紹介 InnerSource Summit 2024 開幕の挨拶にて各国の取組紹介で日本のインナーソー スマンを紹介 & Heros of
Monthを受賞する JAWS KAG名古屋オフィス高谷さんご紹介(編曲担当) そして札幌オフィス下川さん...!!! (PFE部) 53
ここからバトンタッチ 54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
まとめ インナーソースを始めるには「自分が公開すること」 「自分がフィードバックを求め ていることを発信すること」が重要 具体的にはREADME.md/CONTRIBUTING.mdの整備。社内で自分が貢献を求めて いると宣伝することが重要 組織にインナーソースマンを流してインナーソースを始めよう KAGではまだまだ浸透や定着度は低い 巻き込んで広げていきたい 74
おまけ 75
76
77
78
79