リモート共同開発の取り組み
こんにちは。メディアシステム開発部の曽根と申します。
今回は、medibaでのリモート共同開発の取り組みについて書かせていただきたたいと思います。
背景
今さら語るまでもないことですが、日本国内におけるIT人材は不足しています。
2015年の調査では、国内IT企業において人材が「大幅に不足している」「やや不足している」と答えた比率は 合わせて8割以上に登るという調査結果も公開されています※1。
数多くのサービス開発を抱えるmedibaでも、エンジニアのリソース確保に慢性的に苦労してる状態が続いているのが現状です。
ニアショア開発
そんな中、medibaで「ニアショア」というキーワードが出てきたのは2015年のことです。
ニアショア開発とは、簡単に言うと「オフショアに比べて近い地域に開発体制を持つんだぜ」ということになるかと思います※2 。
エンジニアの人材難、費用の高騰に対する施策として、一部の保守開発を地方パートナー企業に外注する検討を始めました。
数ヶ月を掛けてパートナーの選定、業務の引継ぎを実施し2015年10月より北海道のとある企業様に業務を委託しています。
この数ヶ月の間には様々な苦労もあったのですが※3今回は割愛します。
リモート共同開発
それ以降、より多くのサービス保守開発業務をニアショアパートナーに移管し続けているのですが、 medibaでのニアショア開発は一般的な外注開発とは異なる業務フローを採用しているところに特徴があります。
従来の外注開発

基本的には要件を伝え、設計からテスト、リリースまでをお任せする、いわゆる「請負外注」のスタイルです。 システム担当の役割としては、進捗管理や成果物の確認、レビューが中心となります。
medibaではこの形での開発も行っています。
リモート共同開発

社内エンジニアが外部リソースと「共同で」開発を行います。 内製開発と同じスタイルを遠隔で行う試みです。
メリットとして
- 要員の増減がしやすい
- 内製に近い体制を組むことで、案件対応のスピード感を保持できる
- 内製で培ったノウハウの流入 → 開発方式の変更や改善がしやすい
- チームとして複数案件を担当し、流動的にリソースを活用できる
などがあり、medibaではこれを「リモート共同開発」と名付け推進しています。
リモート共同開発の目指すところ
私は、リモート共同開発の目指すところを以下のように定義しています。
- 外部リソースを使いながらも内製開発に極力近づけること
- 品質、スピードを損なわない
- 人材の専門性・流動性を保つ
- 利用できる技術・プロセスは使う
- その上で、内製以上のメリットを出す
- 人員確保の優位性
- パートナーからの技術流入
基本的には内部で開発機能を持ち、高い品質でメディアをリードしていくのがmedibaのスタイルだと考えています。
パートナーのご協力をいただきつつ、内部のノウハウを上手く融合させクオリティを上げるべく努力しています※4。
今回はリモート開発の概要を説明させていただきました。
- 増えていくリモート体制を上手く回すためのプロセス整備
- パートナーを選ぶときに個人的に大事にしていること
など、課題や語りたいことはまだまだありますので、いずれ機会があれば続きを書きたいと思います。
ありがとうございました。
※1)IPA IT人材白書2016より
https://www.ipa.go.jp/jinzai/jigyou/about.html
こういうのを参考として出すとそれっぽくなるというテクニック。
※2)ニアショア開発とは
http://e-words.jp/w/ニアショア開発.html
「だぜ」とは勿論書いていない。
※3)古いシステムのドキュメントが存在しない問題、
出張に行くと遊びに行ってる扱いされる問題、
お土産代が馬鹿にならない問題、など。
※4)各方面に対するアピール。
