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
マピオン社における GitHub Enterprise 活用事例
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
One compath
October 17, 2016
Programming
610
1
Share
マピオン社における GitHub Enterprise 活用事例
8/25 Enterprise Development Conference
One compath
October 17, 2016
More Decks by One compath
See All by One compath
社内の制度を使って新規事業を⽴ち上げてみた話 OCEM#3
mapion
0
210
新規事業のアプリ、Flutterで作ってます〜U-ROUTEのポイ活対応編〜 OCEM#3
mapion
0
240
ウォーキングアプリ「aruku&」ってどうやって作ってるの? OCEM#3
mapion
0
230
ONE COMPATH/ワンコンパス Company Deck For Engineer(会社紹介資料)
mapion
0
8.5k
ONE COMPATHの地図の開発技術~入門編~ OCEM #2
mapion
0
240
脱レガシー! Aurora PostgreSQLに移行してみた OCEM #2
mapion
1
1k
エンジニアなので「技術」で仕事を効率化してみた ~Slack連携でチームの生産性が向上~ OCEM#2
mapion
0
230
20221112_FOSS4G2022Online.pdf
mapion
0
1.8k
ONE COMPATH/ワンコンパス Company Deck(会社資料)
mapion
0
400
Other Decks in Programming
See All in Programming
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
210
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
590
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
24
13k
サーバーレスで作る、動画データ管理基盤
oyasumipants
0
230
inferと仲良くなる10分間
ryokatsuse
1
130
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
1k
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
290
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
3
450
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
0
150
サークル参加から学ぶ、小さな事業の回し方
yuzneri
0
210
継続的な負荷検証を目指して
pyama86
3
1.2k
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
430
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
200
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
280
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
The Spectacular Lies of Maps
axbom
PRO
1
750
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
180
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Scaling GitHub
holman
464
140k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Transcript
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオン社における GitHub Enterprise 活用事例
株式会社マピオン 中村 浩士・須藤 宏典
Copyright(c) Mapion Co.,Ltd. All rights reserved. 発表者 自己紹介 2 中村
浩士(なかむら こうじ) • アプリケーションエンジニア • Git歴 = GitHub歴 6年 須藤 宏典(すとう ひろのり) • インフラエンジニア • Git歴 6年、GitHub歴 4年
Copyright(c) Mapion Co.,Ltd. All rights reserved. アジェンダ 3 1. マピオンの紹介とGHEの利用状況
2. アプリケーションエンジニアから見た GitHub Enterprise のいいところ 3. インフラエンジニアから見た GitHub Enterprise のいいところ 4. まとめ
1. マピオンの紹介とGHEの利用状況
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオンのご紹介 5 1996年に日本初の地図インターネットサービスを開始
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオンのご紹介 6 名称 :株式会社マピオン 設立 :1997年
1月 20日 資本金 :6億円 代表者 :代表取締役社長 中尾 光宏 従業員数 :92名 (2016年 3月現在) ⇒ 約半数がエンジニア 株主 :凸版印刷 (100%) スローガン:「ココロも、カラダも、動かす マピオン」
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオンの事業概要 7
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオンのスマートフォンアプリ 8 地図マピオン 国盗り合戦
日の出日の入 おでかけアルバム キョリ測 マピオンまとめ 超ピンポイント 天気 ちんあなご 恵方マピオン ドコデトッター ココデトッター
Copyright(c) Mapion Co.,Ltd. All rights reserved. GitHub Enterprise の利用状況 9
• 利用開始は 2012年 3月〜 • 2016年 8月現在 60+ Active Users 20+ Organizations 450+ Repositories Java(113), Ruby(61), JavaScript(58), HTML(36), Python(31), Shell(30), Objective-C(16), PHP(13), Scala(11), etc... ※ GitHub の自動識別による言語別のリポジトリ数であり、 モジュール化が推進されているものは単純に多い傾向にある
2. アプリケーションエンジニアから見た GitHub Enterprise の良いところ
Copyright(c) Mapion Co.,Ltd. All rights reserved. GitHub Enterprise を活用して変化したこと 11
• コードベースに対するアクティビティ可視化 トピックブランチによる対応中案件の表現など • Pull Request によるコードレビューの定着 相互レビューによるコード品質の向上、ナレッジ共有の促進 • Webアプリケーションの開発ワークフロー CI やデプロイの統合・一本化 • スマートフォンアプリの開発ワークフロー ビルド配信の自動化による開発サイクルの高速化
Copyright(c) Mapion Co.,Ltd. All rights reserved. 改善前のスマホアプリ開発ワークフロー 12 ② ④
⑤ ① Commit / Merge ② ローカル開発環境でのビルド ③ 検証端末へのインストール ④ プロダクトオーナーによるテスト ⑤ 開発チームへのフィードバック ① ③
Copyright(c) Mapion Co.,Ltd. All rights reserved. 自動化された領域 改善後のスマホアプリ開発ワークフロー 13 ①
② ③ ④ ④ ⑤ ⑥ ⑧ ⑦ ① Push / Pull Request / Merge ② Merge による Webhook 通知 ③ CI サーバーでの自動テストとビルド ④ ビルドのアップロードとメール通知 ⑤ 自動テストとビルド結果を Slack へ通知 ⑥ 検証端末へのインストール (OTA配信) ⑦ プロダクトオーナーおよびテスターによるテスト ⑧ 開発チームへのフィードバック
Copyright(c) Mapion Co.,Ltd. All rights reserved. スマホアプリ開発ワークフローの主な改善点 14 • 手作業
(ビルド、インストール) の自動化 Merge を行うと OTA 配信準備まで一気通貫で行われる テスト実施者も URL にアクセスするだけでインストール可能 • ビルド環境の差異による作業ミス撲滅 環境変数でのデバッグ切替で過去に一度失敗していた • CI との統合 自動テストの定期的な実行および結果の通知 実装〜フィードバックのサイクル短縮による アプリケーション品質の向上に大きく寄与!
Copyright(c) Mapion Co.,Ltd. All rights reserved. Pull Request によるコードレビューの風景 15
Copyright(c) Mapion Co.,Ltd. All rights reserved. GitHub Enterprise を活用するメリット 16
• コードベースがワークフローの中心となる アクティビティの可視化、コードレビュー、ビルドトリガ エンジニアが開発フェーズで行うことが集約される • エンジニアのコミュニケーション活性化 Pull Request によるコードレビュー Issues でのディスカッションや、Wiki による情報共有 • 開発ワークフローを改善する「梃」になる Webhooks による他ツールとの統合・自動化 組み合わせのアイデア次第で様々な課題が解決できる
3. インフラエンジニアから見た GitHub Enterprise の良いところ
Copyright(c) Mapion Co.,Ltd. All rights reserved. なぜGitHub Enterpriseか 18 •
GitHub 有料版 VS GitHubEnterprise Codeを社内環境にもてること →社内のソース管理のSecurityPolicyに抵触し づらい →Local IPアドレスにおくことでセキュリティ の設計が楽になる
Copyright(c) Mapion Co.,Ltd. All rights reserved. AWS + GitHub Enterprise
19 • AWS上にGHEインスタンスで構築 • アクセスは内部ネットワーク VPC peering VPC 01 OtherVPC DirectConnect (専用線) OtherVPC 別データセンター
Copyright(c) Mapion Co.,Ltd. All rights reserved. AWS + GitHub Enterprise
20 • GHEの進化は早い • 保守的思考=バージョンアップをしないで安定 を志向すると効率に影響が • アグレッシブにバージョンアップすることと安 定性を保つことの両立をいかに図るかの視点が 大事 クラウドと相性がよかった GHEのAmazon Web Service版
Copyright(c) Mapion Co.,Ltd. All rights reserved. マピオンでの運用方法 21 • GHEのAWS版
• イメージを起動してGUIで設定するだけ デイリー Backup
Copyright(c) Mapion Co.,Ltd. All rights reserved. バージョンアップ運用 22 新バージョン 旧バージョン
Dump Restore
Copyright(c) Mapion Co.,Ltd. All rights reserved. バージョンアップ運用 23 新バージョン 旧バージョン
DNS向き先
Copyright(c) Mapion Co.,Ltd. All rights reserved. バージョンアップ運用 24 新バージョン 旧バージョン
DNS向き先 停止状態へ…
Copyright(c) Mapion Co.,Ltd. All rights reserved. バージョンアップ運用 25 • 1.新バージョンの検証期間 (2週程度)
• 2.旧バージョンをいつでも再開できる状態で新 バージョンを稼働開始 • 3.比較的短時間でバージョンアップができる 標準のバージョンアップ機能をあえて使わ ないことで、いつでも簡単に完全に切り戻 せる状態をつくっている
4. まとめ
Copyright(c) Mapion Co.,Ltd. All rights reserved. GitHub Enterprise をうまく活用するコツ 27
ツールの導入だけでここまでの変化や改善が発生し たわけではない。 ツールを活用する文化・気質が重要! 以下のようなエンジニアがチームに一人以上いると うまく作用するのでは? • ワークフロー改善に関心が強い • 良い開発プラクティスを導入して広めるのが得意 • なにより GitHub での開発が楽しい! 該当するエンジニアがいれば啓蒙担当に任命する、 いなければ誰かにそうなってもらうよう働きかけを 組織として行うことをしたほうがよい。
Copyright(c) Mapion Co.,Ltd. All rights reserved. GHE の啓蒙活動 28 GithubはGithub
fowを含めて、若干敷居 が高い。新しく入ってくる従業員、派遣の 方などにも啓蒙し続けたい。 講師の方を招いて(マクニカネットワークス さん)Githubの習熟度が低いエンジニア・新 卒エンジニアむけの講習会を開く。 →Github fowの技術共有(ボトムアップ)
Copyright(c) Mapion Co.,Ltd. All rights reserved. まとめ 29 • GitHub
Enterprise は開発ワークフローをより 良く変化させるための「梃」となりうるツール • マピオン社ではその梃をうまく活用して、ワー クフローの改善ができていると感じている • まだまだ活用できる部分もあるので、多くの企 業で導入され、様々な活用事例が共有されてい くことを期待しています