読者です 読者をやめる 読者になる 読者になる

once upon a time,

Iris Tradをビール片手に聞くのが好きなエンジニアが、機械学習やRubyにまつわる話を書きます

転職しました

はじめての転職エントリです。 一部の方にはお伝えしましたが、先週からClouderaで働いています。

まとめ

  • Ruby大好きポエム
  • プロダクトエンジニアポエム
  • データ大好きポエム

お前だれよ?

kawasaki.rbやMachine Learning Casual Talks、Julia Tokyoなどのミートアップをやってます。 なお、今後もコミュニティ活動は続けていきたいと思います。

Rubyが好きでクックパッドに入った

仕事でまったくRailsを書いていない人だった*1のに、「Rubyが好きです!Rubyistなら一度は働いてみたいです!NLP機械学習はやってきたんですが、世の人の役に立つものを作って使ってもらいたいです」とミーハーな気持ちで挑んだのですが、なんとか拾ってもらえて2年8ヶ月働くことができました。

Rails書いたことないのに採用されて驚いた」と飲んだ時に話したら、同僚のLeo

「自分がわかるスキル持ってるかどうかだけで判断すると、多様性が失われて硬直するよね」

ということを言っていてなるほどー、と思いました。その考えのおかげで他のエンジニアとは違った成果を出すことができました。

入社して歓迎ランチに迎えに来てくれた赤い髪の人を見て「これが噂のWeb系か...」と思っていたら、青や緑の髪の人がいて*2、最初のうちはめっちゃビビってました。仕事し始めるとそんな彼らは暖かく指導してくれて、修行をさせていただきました。*3

前職での仕事を振り返って

同僚はキレッキレ*4で誠実な人が多く、特に現場が自分で考えて動いて進めていく人ばかりで、常に「お前はここで何がしたいの?貢献できるの?」というのが問われ続けていた環境でした。

自分が取り組んだ仕事はいくつかあるのですが、副菜提案のレコメンドをしたり、ディレクターと1から有料会員向けのトップページのリニューアルをしたり幅広い事をさせてもらいました。

でも、1社目で培ったSolrの脳内クエリビルダーや、NLP機械学習の知識を適切に活かせるようになったのは、1年位過ぎてからでした。 複雑なアルゴリズムで凄いことをするより、シンプルだけどユーザーの欲求を最短で満たせる方法を選ぶべきということに気づいてから、機械学習は手段であり、それより大事なプロダクトの本質について考えることに時間を割くようになりました。

優秀なエンジニアや情熱あふれるディレクターと仕事をするなかで、プロダクトを作ること、それを通じてユーザーの課題を解決することが好きだということに気づいていきました。 いわゆるプロダクトエンジニアっぽい感じでサービス開発をしていると、最先端の技術を使ったりミドルウェアをリリースしてないとダメなんじゃないかという、tksohishiさんも言っていた悩みにぶち当たることもありましたが、彼らとは興味が違うんだなという事に気づいてから楽になりました。

一時期、優秀なエンジニアがいれば何でもできると思ってた時があったのですが、一緒に仕事していたディレクターが、それこそ我々が技術書を買い漁るように、大学の頃からレシピ本を買い続けている、という人で、逆立ちしてもこの人の愛を持ったプロダクトにはかなわん、と思いながら一緒に仕事できたのもまたいい経験でした。

最後1年は、Tech Confでも話しましたが研究開発を加速するべく、データの学術公開やアカデミアとのリレーションシップの構築にも携わらせていただきました。特に、データ公開やハッカソンのおかげで、それまでバイトでRails書いてました!みたいな、プロの新卒がほとんどだったところに、データ系の能力を持った学生への門戸を開けたのは良かったと思っています。

あとは、終盤はJupyter notebookエバンジェリスト業を社内で勝手にやっていました。クックパッドに不本意ながらPythonを広めたのはワタシです。

振り返ると、機械学習がある程度わかり、Railsも書けて、プロダクトを作ることが好きというちょっと面白いエンジニアになっていました。 バランス感覚を持ったジェネラリストになれればいいなと思っています。

転職のきっかけ

段々と「Rubyで仕事をしたい」から「プロダクトを通じて価値を届けたい」「データをビジネスに変えたい」という方向に考え方がシフトしてきました。 DeepLearning以降、特にTensorFlowがリリースしてから、機械学習界隈の変化のスピードの加速とコモディティ化が激しくなってきて、身の振り方を考えないといけないなと思い始めました。

一方で、garyuさんの本を読んで「USに行きたいのなら日本法人に入るのが定石」というのを学んで頭の奥底に溜まっていました。

そんな中で、shiumachiさんの記事を読んで、「なるほど、英語で仕事をするという選択肢は自分のキャリアにとっても重要だな」という想いが強くなった時に、一緒に飲む機会があって誘われて面接を受けて入ることになりました。*5

前々からセールスエンジニアは、ユーザーに価値をどうやったら届けられるかを考える点で、BtoBにおけるプロダクトエンジニアだなとshiumachiさんの言葉を読んで感じていました。

今の上司がとても良い人で彼に惚れたというのも大きいです。 マネージャーだけど最新の技術に対しても常にキャッチアップをし続けて、かつ非ネイティブに対してもとても辛抱強く接してくれて、ここまで条件の良い上司はめったに出会えない(=自分に言い訳ができない)と思っています。 Hadoopを中心としたエコシステムにもう一度飛び込んで、データ基盤のインフラ周りについてもがっつり取り組みたいなと思っています。 色んなデータをみてどう価値を生み出すかを考えるのが好きなのですが、仕事をすることが、データを活かしてビジネスに変えることにつながるので、今からワクワクしています。

今の様子

今回もまた優秀な同僚に囲まれ、社内にある膨大な情報の中で泳ぎまくりたい衝動を抑えながら*6、久しぶりのHadoop周りを楽しんでキャッチアップしています。 グローバルではそれなりに人数がいる会社ですが、ソースコードは自由に見られるしMLの議論もオープンだし、風通しはとてもよいです。 英語もまだまだだけど、All Ears English PodcastとDMM英会話を使って必死に頑張っています。

会社が変わって、社内の機械学習チャットルームがなくなった分情報少なくなるかなと少し心配していたのですが、Data Science系のMLがあってそこを眺めてテンション上がっています。 自分の強みを活かしつつ、少しでも多くのデータが価値を生み出せるように貢献していきたいです。

ちなみに、1社目を転職するきっかけとなったApache Nutch, LuceneDoug Cutting*7が作っていたということを、今更ながら知り、なるほどこれは必然だったかという想いでいっぱいです。*8

*1:念のため補足すると、簡単なSolr検索のデモアプリをRails2系で書いて、後はSinatraAPIサーバー書いてたり、OSS活動はしてたけど、他の人からするとほぼ0レベルだった

*2:大体元ドワ勢

*3:本当にyoshioriさんとmakimotoさんには頭が上がらない

*4:人生N周目以降の強くてニューゲームっぽい人が多かった

*5:なお、昨年末から転職活動はしていたので、例の話とは関係ありません

*6:クックパッドの社内wikiのGroupadもたいがい時間泥棒だったけど、それを上回る時間泥棒っぷり

*7:Hadoopの生みの親。今はClouderaのChief Architectをしている

*8:1社目を出るきっかけがRubyとSolr,Nutch,Hadoopだったので、MatzとDougが僕の人生を変えたと言っても過言ではない