進化を先取る現場から

第3回 Preferred Networks 久保田展行―研究とエンジニアリングの両輪で開発を進める現場

この記事を読むのに必要な時間:およそ 3.5 分

知見を共有し,基礎体力を付ける

─⁠─僕の印象なのですが,研究というと1人で進めて成果を出すというイメージがあるので,研究のチームというのは意外な感じがします。

久保田:もちろん個人プロジェクトもありますが,まず前提として失敗するかもしれない課題に挑戦しているので,プロジェクトメンバーの心理的負担は大きいんですね。もし失敗したときに,個人プロジェクトだとその人に責任が集中してしまいます。そうなると自由に活動しづらくなるので,少なくとも方法論や進め方に関してアドバイスができる人が必要だと思うんですよ。先輩の研究者の中には過去に似たような問題を解いた人もいるので,そうしたメンターみたいな人と一緒にアルゴリズムに対しても議論できるようにしながら,過去の知見をうまく共有できる体制を必ず持つようにしています。だいたいのプロジェクトについて,フルで関わらないまでも,少なくとも3人はサポートする人がいるようになっていますね。

─⁠─メインでプロジェクトを進める人に加えて,サポートする人が必ず入る。

久保田:そうですね。たとえば,とあるプロジェクトについて,メインで携わっている人がお客さんに説明する予定だったのが,突然直前になって別の人が代わりに行くことになってとても困っていたということがありました。でも,このような体制のおかげでその代わりの人がきちんと発表できた。この体制はうまく回っていると思います。

─⁠─チーム内での知見の共有のためのしくみとしては,サポートで入ること以外にはどうされているんでしょうか。属人性と専門性は近いものだと思うんですが,チームでやる場合には,あまりに属人的になると知見の共有が問題になると考えていて,そこをどう解消されているのかなと。

久保田:できる限り属人性をなくすためには,研究の基礎体力を継続的に付けていくしかないのかなと思いますね。研究の分野は一個一個がものすごく深くて,全体を深くカバーしている人はいないんですよ。ただ,基礎体力が強くて別分野のキャッチアップが速い人というのはいます。たとえばうちの会社は数学畑から来ている人も何人かいるんですが,そういう人って理論を追うのがものすごく速いんです。分野が変わってもすぐに追い付ける。うちではおもしろい論文を発表する会を定期的に開いていて,自分の分野だけではなくほかの人がやっている研究内容もきちんと理解していけるようにしています。これがプロジェクトの切り替えとか人の再配置が起きたときもスムーズにできることにつながっているのだと考えています。

─⁠─全員が同じ専門知識を持つのではなく,別分野についてもいかに速くキャッチアップできるようにするかということですね。

久保田:属人性をなくす話としてはほかにも,チームとして似たようなタスクが出てきたときにほかの人がいかにそれをうまく行なえるかということで,できる限り共通のフレームワークを使って作業するようにしています。たとえばディープラーニングは全部Chainerというフレームワークを使って書いているんですが,そうすることによって共通化されていない部分が最小になるんですよね。そのおかげでほかの人のコードについて自分の知らない部分だけを読めば何やっているかを把握できます。⁠まずコードを書いて研究する」というのが前提にあるので,そのコードの部分にできるだけ共通化されたものを使う。また,みんながSlackなどのチャットベースで頻繁に,継続的にコミュニケーションを取り続けているため,逆にあらためて共有したり明文化したりしないと共有できないことは減っている気がしますね。

普段はアメリカでお仕事をされている久保田さん。今回は帰国のタイミングに合わせ,PreferredNetworks とPreferred Infrastructureの両社が入るオフィスでお話を伺いました

普段はアメリカでお仕事をされている久保田さん。今回は帰国のタイミングに合わせ,PreferredNetworks とPreferred Infrastructureの両社が入るオフィスでお話を伺いました

良いチームとは

─⁠─最後になりますが,久保田さんが考えられる良いチームとは?

久保田:良いチームというのは,⁠自分たちがチームであるとは認識していないが,にもかかわらずうまく連携できる人の集まり」だと思っています。結果としてチームワークがうまくいっている,というか。1つの目標に向かってみんなでとてもうまく動けるが,それをチームとしては強く意識していない。そういう考えが常識になりすぎて自分たちがチームであることを忘れるくらい同じ方向を目指している塊ができると強いのかなと思います。

─⁠─いいですね。チームであることを忘れる状態。

久保田:あとは,複数のチームがあったときにチームごとに責任が分かれるのはいいんですが,⁠これは自分のチームとは関係ないから手を出さなくていいや」とか「向こうのチームが困っているけど別にいいや」といった感じにならないこと。チームを超えて,さらにお互いをカバーでき合えるようなチームのチームというような組織ができると理想だと思いますね。

─⁠─理想的ですね。

久保田:けっこう昔から感じているところではあって,チームと言ってしまうとそこで責任だけでなく関心までなくなってしまうことがあるんですよ。僕はそこがあまり好きではなくて,チームとしては分かれつつ,ほかの人がやっていることにも当事者意識が持てるような組織にしたいなと思っています。

─⁠─いい形ですよね。そのためには先ほどおっしゃっていた論文発表会のような,チームを超えてゆるくつながる取り組みが大事なんですね。本日はありがとうございました。
WEB+DB PRESS

本誌最新号をチェック!
WEB+DB PRESS Vol.113

2019年10月24日発売
B5判/160ページ
定価(本体1,480円+税)
ISBN978-4-297-10905-9

  • 特集1
    接続エラー,性能低下,権限エラー,クラウド障害
    AWSトラブル解決
    原因調査・対応・予防のノウハウ
  • 特集2
    Ruby書き方ドリル
    要点解説と例題で身に付く!
  • 特集3
    体験
    ドメイン駆動設計
    モデリングから実装までを一気に制覇
  • 一般記事
    FigmaによるUIデザイン
    デザイナーとエンジニアがオンラインで協業できる!
  • 一般記事
    入門
    SwooleによるPHP非同期処理
    高速化のための並列実行はどのように書くのか

著者プロフィール

海野弘成(うみのひろしげ)

京都大学工学部にて情報工学を専攻。在学中にはてなやGoogleにてソフトウェアエンジニアとしてインターン,アルバイトを経験。iOSアプリ開発などを担当する。2011年,友人2人と作ったプログラマーのための技術情報共有サービス『Qiita』を公開。大学卒業後の12年2月,Increments株式会社を設立し,代表取締役に就任。主なサービスに,『Qiita』のほか,チーム内情報共有ツール『Qiita:Team』がある。

Qiita:http://qiita.com/yaotti