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
Infiniteloop
August 17, 2023
Technology
0
96
複数拠点における開発効率の維持・向上
複数拠点における開発効率の維持・向上
Infiniteloop
August 17, 2023
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
0
380
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
470
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
640
詫び石の裏側
infiniteloop_inc
0
510
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
7
29k
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
170
ADRという考えを取り入れてみて
infiniteloop_inc
0
170
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
130
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
infiniteloop_inc
0
110
Other Decks in Technology
See All in Technology
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.9k
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
350
What's new in Go 1.24?
ciarana
1
110
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
12
4.4k
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
510
データモデルYANGの処理系を再発明した話
tjmtrhs
0
200
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
280
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
110
OPENLOGI Company Profile
hr01
0
60k
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
120
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
The Pragmatic Product Professional
lauravandoore
32
6.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
BBQ
matthewcrist
87
9.5k
How GitHub (no longer) Works
holman
314
140k
Unsuck your backbone
ammeep
669
57k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Producing Creativity
orderedlist
PRO
344
40k
Transcript
複数拠点における 開発効率の維持・向上 株式会社インフィニットループ仙台支社 中野 明
もくじ 1. 自己紹介 2. 会社紹介 3. 開発条件 4. 開発環境 5.
開発スタイル 開発編 6. 開発スタイル リモートフォロー編 7. 開発スタイル アラート編 8. まとめ
1. 自己紹介 名前 : 中野 明 現在 所属 : インフィニットループ仙台支社
(4 カ月 ) 業務 : スマホゲーのサーバ開発 過去 業務 : ゲーム開発 (10 年 ) コンシューマ・スマホ・ガラケー 趣味 お菓子づくり、レザークラフト
2. 会社紹介 インフィニットループ仙台支社 プログラマの会社です(社内勉強会の様子)
3. 開発条件 開発内容 ・ それなりの規模のスマホゲーム 複数拠点 ・ 札幌 (IL) サーバサイド開発・運用
・ 仙台 (IL) サーバサイド開発 ・ 東京 ( 他社様 ) 企画 / クライアントサイド開発 リリース ・ ほぼ毎月 特徴 ・ 遠隔多拠点での開発
4. 開発環境 ツール紹介
4. 開発環境 ツール紹介 SonarQube: 静的解析 ( 複雑度・規約違反等 )
4. 開発環境 ツール紹介 Knowledge: 流動的な情報 (Tips 等 ) の共有
5. 開発スタイル 開発編 あるプロジェクトの場合 札幌 (IL) ・ サーバサイド開発 : 10-20 人ぐらい
・ 運用 ( 含インフラ ): <3 人ぐらい ・ テスター : <5 人ぐらい 仙台 (IL) ・ サーバサイド開発 : 6 人 ( 立ち上げ半年 ) 東京 ( 他社様 ) ・ クライアントサイド開発 : <10 人ぐらい ・ ゲーム設計、企画運営 :<5 人ぐらい 職種・スキルレベル・関与期間・拠点規模が違う
5. 開発スタイル 開発編 拠点ではなく、敢えて個人単位でタスクを受けもつ ・ 担当で区切ることで必要な情報量を削減 ・ 個人単位なのでリソース管理がしやすい 小さく区切って小さく回す
5. 開発スタイル 開発編 仕様共有 ・ コントラクトで API の入出力を定義 ・ 定義に従ってクライアント・サーバアプリを実装 ・
レビューは仕様書とコントラクトの二点から実施
5. 開発スタイル 開発編 情報共有 ChatWork ・ 情報種別 / 目的ごとにチャンネルを設定 ・ 実装相談、企画、調査、インフラ…
・ 窓口という概念はなく、担当が直接やり取り ・ 個人チャンネルでのやりとりは行わない メンバーが見えるところでやり取りを行うため、話が複数 人の目に留まる。また、フォローに入りやすい。
6. 開発スタイル リモートフォロー編 個人単位の仕事においてチームメンバーは何をするか? ・ 担当が弱い部分のサポート ( 相談等 ) ・ PullRequest
によるコードレビュー ・ ノウハウや Tips の展開 ・ 教育 ・ 雑談相手 ( 結構重要 ) メンバーは、個人のフォローを行う
6. 開発スタイル リモートフォロー編 リモートフォローと情報共有の壁 ・ 物理的な距離があるので気軽に会話できない ・ 場所ごとによって溜まっている情報が違う ・ 顔色がわからない 解決策
・ Skype ビデオチャットの常時接続 常につなぐことによって隣にいる気分 ・ Slack による分報 普通の会話に近い環境 雑談・相談・つぶやき、何でもあり
6. 開発スタイル リモートフォロー編 Skype ビデオチャットの常時接続
6. 開発スタイル リモートフォロー編 窓口型 Head と Remote にはコミュニケーション格差がある 同じ情報量で仕事を行うことができない
6. 開発スタイル リモートフォロー編 チャンネル共有型 同じ箇所で会話するため、必要情報だけになりがち 通常の会話と異なる状態
6. 開発スタイル リモートフォロー編 Slack による分報 個々にチャンネルを作ることにより 通常の会話と同じ経路網を作り上げる
6. 開発スタイル リモートフォロー編 Slack による分報
7. 開発スタイル アラート編 アラートは、チームどころか会社で共有する事態 担当者へ飛ぶアラートメールだけでは弱い その場にいる全員が即座に反応できる仕組み ‘◦◦ のサーバが沈黙しまし た。各員戦闘配置について ください。’
8. まとめ 規模感や職種の差が大きい拠点間で 効率的な開発を行う一つの方法として ◆ 個人に重点を置いた開発にする ◆ 必要な情報量を少なくする ◆ 情報経路を絞る
◆ 可能な限りコミュニケーション格差を平準化 ・ 格差をなくすことはできない ・ 口頭の会話も可能な限り分報で
9. WE’RE HIRING! インフィニットループ仙台支社ではプログラマを募集してい ます。ぜひお声がけください!