研究者からエンジニアに転生して1年経ちました

Yusuke Uchida
8 min readJan 22, 2018

--

昨年の1月にDeNAに転職し、研究者からエンジニアに転生してから1年経ちましたので、色々振り返ってみたいと思います。ついでにMediumとやらを始めてみました。書いていて気持ち良いです。

前置き

転職前は、KDDI研究所にて10年ほど画像検索・画像認識の研究をしていました。その間に、Stanford Research Instituteに共同研究で半年間滞在させてもらったり、事業部でスマホの企画開発やったり、同時期に博士課程に進学したり、育児休職を取ったりしました。その辺りについては下記に書きました。

育児休職から復帰して研究所に戻ったのですが、自分のキャリアに危機感のようなものはずっとあって、たまたまTwitterに端的にそれを表現したツイートがあったので引用してみます。

私が思っていたのは、企業かどうかというよりは、研究者とエンジニアを比較した際に、エンジニアのほうがどんどん新しい技術にトライしていっているのではないかということでした。

勿論、研究者でめちゃくちゃコードが書ける人もいますし、エンジニアで最新技術をキャッチアップできている人も一部なのでしょう(TwitterのTLを見ていると世の中そういう人ばかりに見えますが)。ただ、自分自身として、研究者のバックグラウンドを持ちながら、実際のサービスに素早く最新技術を適用していけるエンジニアになりたいという思いが元々あり、DeNAにそのような環境を期待して転職しました(35歳エンジニア定年を前に)。

現在は、全社に対して分析基盤の提供をしたり、各事業部と一緒にAI技術を活用した新たな価値創造を行う機能を持ったAIシステム部に所属し、主にコンピュータビジョンに関する研究開発をしています。

以下で、転職後の変化について振り返ってみます。

コードをいっぱい書くようになった

エンジニアなので当然ですが、転職前は2年くらい事業部の企画・開発部署にいて、その後育児休職(+博論執筆)からの研究所に復帰したてだったので、必要最低限のコードしか書いていませんでした。ちなみに一番長かった開発環境は、Windows/Visual Studio/C++で、研究所復帰後はCLion/C++と、PyCharm/Pythonでした。Matlabは忘れました。

入社後はすっかりMacユーザになって、Pythonばっかり書いてます。GitHubのプライベートリポジトリでもドキドキしながらコードを公開してみましたが、段々慣れてきてきました。スターを貰えると嬉しいですね。次はもうちょっとアプリケーションよりの何かを作っていきたいと思っています。

ということで、エンジニアになるという目標は何となく達成できたのではないかと思っています。

論文を書かず技術記事を書くようになった

元々、論文はもう書かないつもりで入社したので、代わりのOutputとしてQiitaに技術記事を書くようになりました。

合わせて勉強会でサーベイっぽい発表することが増えました。

一見色々Outputしているようですが、実は私の所属しているAIシステム部では毎週持ち回りで技術紹介を行う定例があり、そこで自分が発表した内容を勉強会で発表したり、逆にQiitaで書いた記事を社内で発表したりとうまく使いまわしています。

論文を書かなくなったと言いましたが、せっかく上記のようなサーベイをしたのだからということで、サーベイ論文を書いて研究会で発表したりもしました。

AWSのヘビーユーザーになった

前職ではデスクトップPCを横に置いて研究開発していたのですが、現職はAWS/GCPがスタンダードで、EC2は勿論、Aurora/S3/Batch/SQSといったサービスを利用するようになりました。インフラの構築自体は専門のチームがやってくれるので、私はそれらを使ってシステムを作ったりしていくだけですが、全く使ったことがなかったので色々勉強になります。そろそろBigQueryを触ることになりそうです。

イベント企画とかした

元ネトゲ廃人としては最も苦手な部類の行動なのですが、技術交流の機会の創出やプレゼンス向上のため、色々イベントの企画や運営をしました。実は人の顔が全然覚えられないのでこういうのは大変(というか苦手)なのですが、やっていったら改善したりしないかな!と思いながらやっています。

ちなみに司会をしたり発表したりするのは大好きです。

んで何やってるの?

1つメインのプロジェクトに主にコミットしているのと、他にも色々足を突っ込んでいます。新規案件ばっかりなので、なかなかオープンにならないので、知り合いにはTwitterばっかりやってるなと言われます(合ってる)。

今後

ひたすら学ぶことが多かった1年でしたが、色々課題も感じています。まずはちゃんと事業に貢献し、いずれやってくるAI失望期に備えたいと思います。

高まる論文欲:もう論文は書かないと決めて転職したのですが、自身のモチベーションとしても、会社としての技術力を示すためにもやはり論文を書きたいという気持ちが戻ってきました。色々ネタはあるものの、色々手を出しすぎて(言い訳)、トップカンファレンスまでに仕上げるのは難しいなぁと体感しています。この辺は、それこそエンジニアがいっぱいいるのだから、システマチックにチームで連携して成果を出していくような仕組みができないかなと思っています。

専門性 vs. なんでも屋:実際どう思われているのか分からないですが、私自身は、専門性に加えて、案件とかタスクとかを取り敢えず何でも食べちゃうところも自分自身の価値を出せる部分だと思っています。ただ、その結果として他のメンバーにアサインした他のタスクを全部やるみたいなことをやってしまったり、急にプロジェクトが大きくなったのでPM的な役割が求められたりしてしまい、そこだけ見たらいくらでも自分よりできる人はいるはずで、やっぱり良くないかなぁと思ったりしています。

これは、使命感というよりは純粋に自分自身が何でもやってみたい(一度経験したい)みたいな意識があるらしいです。ちなみに下記のように、自分があまり知らなくて周りに専門家がいるケースは、一気にキャッチアップできる機会だと思ってしまうところがあります。

普通のエンジニアがこの先生きのこるには:さて、Google等によってどんどんAIが民主化されてきています。ハイパーな研究者ではないエンジニアがこの先生きのこるにはどういう道があるのでしょうか。この辺りは個別にポエムを書いてみたいです。

そういえば昔研究者時代にTwitterで見て、そうだよなぁと思ったのが、アルゴリズムを考案する一流セキュリティ研究者は一握りで良いが、それを実際に適用・運用していくセキュリティエンジニアはいくらでも必要、みたいな話です。

とりあえずどれだけAPIやライブラリが整備されても、ビジネス側がやりたいことを具体的に問題へ落としていくところや、どうやってデータを集めてどのように加工する(正解を定義しアノテーションする)かを設計するみたいなのはなくならないので、逆にその後のモデルの最適化とかをよろしくやってくれるようになると考えると、逆に色々できる範囲が増えると考えることもできますね。

個人的にはコンピュータビジョンを少し離れてデータ分析系もやってみたいとかも思っているのですが、お呼びではない感もあるので、まずはお勉強からですね。

--

--