様GitLab国内最大手の通信キャリアとして知られるNTTドコモですが、その研究部門では通信技術以外にもさまざまな分野の研究が行われています。Enterpriseを導入しました。横須賀リサーチパーク(YRP)にあるドコモR&Dセンタでお話を伺いました。福島さんのグループについて教えてください。私はサービスイノベーション部のビッグデータを扱うグループに所属しています。そのグループの中に、大学の研究室のように異なる研究テーマを手がけるチームが複数あります。私たちのチームは、人工知能によって動画や画像を扱う研究を行っています。弊社の回線を使用していただいているお客さまのところに営業が赴いた際に、さまざまなご相談をお受けしますが、そのうちの動画や画像に関わる案件を我々のチームが引き受けています。具体的にはどのような研究をされていますか?例えば、畑の作物と雑草を区別して作物を踏まないように走行するロボットの画像認識エンジンや、スポーツの試合動画を解析してハイライト映像を自動作成するスポーツ動画センシング技術を開発しています。スーパーマーケットやコンビニエンスストアの商品棚を撮影すると、どのメーカーのどの商品が置かれているのかを特定してくれるアプリケーションのエンジンも手がけました。こちらのアプリケーションは、コンビニエンスストアの本部の方から、フランチャイズ店が適切に商品を配置しているかどうかを調べたいという声から作られました。以前は、逐一バーコードをスキャンしていましたが、このアプリによって写真を1枚撮るだけで済むようになりました。実際には、商品棚における自社製品の占有率を調べたいというメーカーさんからの引き合いもあるようで、双方に活用して頂いています。福島さんのチームでは、GitLabの機能をどのようにお使い頂いてますか?我々のチームで使っているのは、個人のプログラムのバージョン管理と、チームでのコードレビューがほぼすべてです。「写真を撮ると年齢と性別がわかる」ようなアプリがあったとして、ユーザが触るアプリ部分を作るのではなく、どうすれば高精度で年齢・性別を当てられるかのアルゴリズムを考案し、その精度を1%でも上げることが研究所での目的となります。そのため、「このプログラムのこのアルゴリズムをこう変えたら精度が変わった」というような記録を取ったり、知見をチーム内に共有する目的や、どの段階のプログラムをどのサービスに提供したかというログを取るために使っています。他のチームはどのようなバージョン管理のシステムを使っていますか?研究所内では、エンジニアの好みや研究の用途によって、さまざまなバージョン管理システムが使われています。指定がない場合は、管理部門が提供しているオンプレミス版の別製品を使っています。Enterpriseを選んだ背景をお聞かせください。我々のチームでは、もともと2015年にオープンソース版のGitLabを使い始めました。ソースコードを社外に置くのは問題があったため、SaaS版という選択肢はありませんでした。その後、先ほどお話した別製品に切り替えたのですが、GitLabのUIに慣れていたこともあり使いづらいという声が多く寄せられました。Notebook(機械学習用のツール)に対応していない(アドオンを入れる必要がある)などの問題がありました。LFS(大きなサイズのファイルを扱う仕組み)の従量課金制があったため、動画や大量の画像を扱う場合のコストがかさむことも悩みの種でした。Enterpriseを使ってみようということになりました。良かった点は、最初に無料で試すことができて、その後必要に応じてより高機能の有料版に切り替えることができるところですね。これが導入の一番大きな理由でした。クリエーションラインさんの質問への返信が早いことも助かりました。質問してから、レスポンスが返ってくるまで2、3日かかるようなところもありますので。Enterpriseの導入はスムーズでしたか?導入の際にチーム内でよくGitLabを使いそうなメンバーを集めて、勉強会を開催したことで、スムーズに行えました。Enterpriseの使い方に絞った内容の勉強会です。Enterpriseを導入し勉強会も行った結果、リポジトリの数が約5倍まで増えました。1年間でそれだけ増えることは考えにくいので、これまでは皆、共有せずに手元に置いていたものを、きちんとリポジトリに入れるようになったということですね。リポジトリが増えたことで情報が共有され、他のメンバーの仕事の内容が分かるようになりました。手元のフォルダーで管理していた頃には、「上書きしてしまい古いプログラムがない」ということもありましたが、今はそういうことも無くなりました。今後はCI/CDの活用もこれから活用していきたいGitLabの機能はありますか?今後、クリエーションラインさんから勉強会もご提案頂いている、CI/CDが今後活用すべき機能であると思っています。部内でもアプリ開発を担うチームでは活用しているという話を聞くのですが、我々は現在テストを自動化できておらず、作成したエンジンをサービスへ提供した際に手戻りが発生する場合があります。機能を使いきれていないので、今後はクリエーションラインさんのお力を借りて上手く活用していきたいと考えています。ありがとうございました。少数のチームでスタートし、機能も含めてスケールアップしていただけるモデルであると感じています。我々クリエーションラインもお客様がGitLabを有意義に活用できるよう、NTTドコモ様へ協力していきたいと思います。LABロゴ使用ガイドライン情報セキュリティ。