Gunosyで活躍中の id:skozawa を訪問 | はてな卒業生訪問企画 [#8]

こんにちは、CTOの id:motemen です。

Hatena Developer Blogの連載企画「卒業生訪問インタビュー」では、創業からはてなの開発に関わってきた取締役の id:onishi、CTOの id:motemen、エンジニアリングマネージャーの id:onkが、いま会いたい元はてなスタッフを訪問してお話を伺っていきます。

id:motemenが担当する第8回のゲストは、株式会社Gunosyのテクノロジー本部データサイエンス部で部長を務める id:skozawaさんこと、小澤俊介さんです。

2012年にはてなに新卒として入社後、「はてなブックマーク」「はてなブログ」などのプロダクトの開発を担当されてきました。2017年に株式会社Gunosyに転職して、「グノシー」「ニュースパス」「LUCRA」などの記事配信アルゴリズム開発に携わります。

2022年に「Gunosy Tech Lab(グノシーテックラボ)」のチームマネージャー、副室長となり、現在はデータサイエンス部の部長を務めるid:skozawaさんに、現在のGunosyでのご活躍や、マネジメント、はてなを離れてみての印象など、お話を伺いました。

小澤俊介さん(id:skozawa
2012年4月-2017年9月 はてな在籍
X: https://twitter.com/5kozawa
Blog: https://skozawa.hatenablog.com/
GitHub Pages: https://skozawa.github.io/

Gunosyのニュース配信アプリ「ニュースパス」「LUCRA」などでアルゴリズム開発に携わる

id:motemen(以下「id:motemen」) 今回のゲストは、株式会社Gunosyのskozawaさんです。skozawaさんと僕は同じ84年生まれなんですよね。はてな時代は他の84年生まれのエンジニアたちも含めて頻繁に飲みに行ったりしていました。今日はひさしぶりにお会いできてうれしいです。

id:skozawa(以下「id:skozawa」)84年生まれのSlackチャンネルとかもありましたよね。懐かしい。今日はよろしくお願いします。

id:skozawa こと、株式会社Gunosy 小澤俊介さん

id:motemen skozawaさんが2017年にはてなを退職して、Gunosyさんに転職してから6年くらいですね。「Gunosiru」の記事も拝見してきましたが、改めてご入社からこれまで、Gunosyさんでどういったことをされて来たのかお伺いしたいです。

gunosiru.gunosy.co.jp

id:skozawa 記事読んでいただいたんですね。ありがとうございます。

転職してから1か月くらいは、グノシー事業部でグノシーアプリの記事配信アルゴリズムの改善をしました。慣れてきたタイミングで、ニュース配信アプリ「ニュースパス」でパーソナライズのプロジェクトに参加することになり、半年くらいパーソナライズの仕組みを作っていた感じですね。

そのあとは「LUCRA」というトレンド情報アプリの開発プロジェクトチームに入って、機械学習(ML)のパーソナライズシステム開発やアルゴリズム改善、データ分析、サーバーサイド開発などに携わっていました。2023年2月にサービスは終了してるんですけど、当時は新規開発チームで人が少なかったので、基本的には何でもやっていました。

2019年2月に組織体制が変わり、「Gunosy Tech Lab(グノシーテックラボ)」というデータの利活用を促進する組織が新設され、その中の機械学習システムを開発するチームのマネージャーになりました。その後、2~3年くらいマネージャーを務め、副室長になり、現在はデータサイエンス部の部長をしています
 

id:motemen めちゃくちゃ目まぐるしく役割や部署が変わっていますね。skozawaさんが部長を務めるデータサイエンス部の、事業やプロダクトの関わりはどのような感じなんですか。

id:skozawa プロダクトチームには、企画とサーバーサイド、クライアントエンジニアがいるんですが、データサイエンス部はプロダクトチームには直接紐づかない横断部署となっています。データ分析や企画に関しても開発者や企画、編集の担当者と話し合いながら進めています。

企画側は、アルゴリズム面に関しては何をどうやっていいかわからないじゃないですか。だから、企画面の改善も含めて、基本的には全部提案していますね。

オンライン取材やはてな京都オフィスでの取材が続いた結果、
訪問企画8回目にして初のオフィス訪問が叶いました

エンジニアマネジメントのミッション、苦労って?

id:motemen データサイエンス部は何人くらいの部署なんですか?

id:skozawa 10人くらいで、全員エンジニアです。

id:motemen データに関わるエンジニアのミッションは、いかに良いニュースを届けられるかといったところなんでしょうか。

id:skozawa 機械学習システムを開発する人には、広告を担当している人とニュース配信を担当している人がいるのですが、広告は広告配信アルゴリズムの開発、ニュース配信は記事配信のアルゴリズムの開発がメインですね。BIチームでは、プロダクトの機能や施策の評価などを担当しています。サービスをリリースする際はABテストを実施し、再訪率や売上などをKPIとして定量的な評価をするとともに、定性面でもユーザーや広告主の体験改善に繋がるかを確認しています。

id:motemen マネジメントについても伺いたいです。

skozawaさんも僕も当時ははてなでエンジニアとして働いていたのに、いまはそれぞれマネージャーになっている。マネージャーとしての苦労や悩みについても話せるといいなと思って今日はやってきました。

id:skozawa 僕は部長なのでその下のマネージャー陣をマネジメントするのがメインですね。これはGunosyだけじゃないと思いますけど、マネージャー向けのオンボーディングって難しいじゃないですか。だから、部長になったときは、部長って何する人なのか、わかんなかったんですよね。ようやく何となくわかってきましたが。

id:motemen 本当にそうですね。僕もCTOになった時に、最初は新境地で割とずっと悩んでました。今も完全に分かったとは思ってないですけど。

自分が開発チームのマネージャーをやっていたときも、マネージャーとはなんぞやみたいなのが全然わかってなかったし。はてなの場合、マネージャーのありかたが、チームによってけっこう違うというのもあるかもしれません。

マネージャーの研修でディレクターの育成をするのは、誰かが責任持つとか、こういうプログラムを作ってやればうまくいきますみたいなものはないから、個別でやるしかないですよね。

一時期はてなでサービス開発チームのマネージャーをしていたことがありましたが、そのときも自分の仕事がなんなのか、というのがはっきり分かっていなかったように思います。今自分が職種組織として見ているエンジニアは、人数が多いぶん育成の話もしやすいんですが、マネージャーは数が少なくて、状況もバラバラだから、個別の話になりがちなんですよね。

部長としてマネージャー陣をマネジメントされているとのことですが、それも難しいですよね。何か工夫や取り組みなどされていることがあれば、ぜひ参考にしたいです。

id:skozawa まだ仕掛中ですけど、マネージャーのバリューズというのをちゃんと作ろうとしています。例えば、「マネージャーは盾になりましょう」みたいな話がありますが、全部防いでいくのがいいことなのか。人によって価値観が分かれちゃうと思うんですけど、本当はメンバーがしなくてはいけないこともあるので、それができるように後輩育成をしようという試みですね。役割定義であったり、マネージャーとしてのスタンスなどを考えています。

id:motemen マネージャーの仕事の仕方って個性が出るし、それが大切だとも思っていますが、組織としての行動原理を定めておくのはすごく良さそうな動きですね。データサイエンス部内の取り組みなんですか?それとも会社全体?

id:skozawa 今はテクノロジー本部でやっていますが、もともとコーポレートの部門の人たちが一部作っていたのでそれを参考にしました。

施策での自由度、事業への関りなどがやりがいにつながる

id:motemen skozawaさんがGunosyさんの事業やサービスが自分に合っている、いいところだと感じているところはどんなところですか?

id:skozawa 基本的には、ニュースの配信アルゴリズムは面白い領域だなと思っています。今はデータ分析、データを活用しているところもすごく面白くていいなという感じですね。

data.gunosy.io

大きい役割だったりチャレンジをさせてもらうのには、多少の期間は必要なのですが、はてなにいたことで信頼してもらって、仕事の幅や深さが広がっていっていることにも面白さを感じています。

id:motemen マネージャーはアルゴリズム作ったり、チューニングしたりする業務には関わっていないんじゃないかなと思うんですが、実際は関わっているんですか。

id:skozawa 意外とまだコード書いていますね。

id:motemen そうなんですね!それはぜひ参考にしたい(笑)

id:skozawa motemenさんは書いてないんですか?

id:motemen コードを書くことは大分減って、ほぼマネジメント業務中心ですが、最近一時的にチームに入って久々にコード書いたらめちゃくちゃ楽しくて(笑)。すぐリターンがかえってくるからわかりやすいし、そういう楽しさはありますね。

さきほどデータサイエンス部の事業への関わりについてお伺いしましたが、skozawaさんご自身の事業への関わりについてもう少し教えていただいてもいいでしょうか。

id:skozawa データサイエンス部は、ユーザーの再訪率を上げて、事業構造的に売上を上げることを役割を持っている部署でもあるので、それを達成するための企画や分析や改善に関わるさまざまなことに自由度高く関わっていってる感じです。

BIチームでは経営企画と一緒に予算を作ったりもしています。KPIの作成やそれを自分たちで達成するところにも関わっていたりもしますね。

id:motemen プロダクトの価値や事業の価値に直接関わっているんですね。自由度が高いというのも面白いです。

いわゆる企画職のプランナーが企画を考えることもあるし、データエンジニアのプランナーが企画から考えることもある感じなんですよね?

id:skozawa そうですね。

id:motemen それが素晴らしいですよね。そういう場合って、企画がコンフリクトしたりするケースがあったりするものなのでしょうか。

id:skozawa 施策の優先順位は売上や数字への貢献度で決まります。そこで不満になることはないですね。

id:motemen そこは「数字は神よりも正しい」をモットーにしているGunosyさんらしいです。

id:skozawa 最近では「Gunosy Way」から「Gunosy Pride」へと行動指針が変わり、「数字は神より正しい」という言葉は誤解を招きうるので、「サイエンスで機会をつくる」という表現に変更になりましたが、数字を大事にする文化は残っていると思います。

Gunosyとはてな、開発で重視することやカルチャーの違い

はてな京都オフィスでプレゼン中の id:skozawaさん(2014年)

id:motemen skozawaさんが感じるGunosyさんとはてなの違いみたいな話も聞いてみたいです。

id:skozawa はてなは最近はtoBがメインになってきているとは思うんですけど、toCを伸ばしていくためのスタンスが結構違うのかなと思っています。

Gunosyに入ってから、初めてPMF(プロダクトマーケットフィット)ということを知ったんです。PMFで、そこにフィットしたものに投資して売上を伸ばしていくという考え方やプロジェクトのやり方などが違うと感じていました。

id:motemen たしかに、はてなのtoCサービスは、面白いものを作って、それが当たったら伸ばしていくみたいなことがメインでしたよね。伸ばすために先に投資するみたいなことは、当時はあまりできていませんでした。

文化や環境、例えば社風みたいな違いはどんなところですか?

id:skozawa やっぱり数字を重視するというのが、違う文化なんだという感じがしますね。はてなは、数字以上に「これはユーザーが喜ぶから作ろう」という開発の雰囲気が大きい。Gunosyでも、もちろんそういう流れで機能を作ることもあるんですけど、基本的にはKPIを達成するための機能開発が中心です。

この機能を作ったらこういうふうにユーザーが動いてくれて、KPIが達成できるんじゃないかという発想で変更するので、入口が違います。あとは他社の動きも見ていて、競合がこういう機能を作ったから、うちでも取り入れようみたいな。そういう動きも結構違うなという感じですね。

id:motemen ユーザーのためにというのは、はてなのいいところではあると思うんだけど、収益を上げていくための施策や投資もより考えていきたいところです。

id:skozawa あと、他の卒業生もよく言っていることだと思うのですが、テキスト文化ははてなのいいところだったなと思います。大変なボリュームのドキュメントがストックされたり、日々流れてきたりするのも良かったです。

業務と関係のない、プライベートなことや、最近考えてることなども投稿される場があったのも、はてならしさですよね。

id:motemen skozawaさんが居た頃は、いま以上に仕事以外の情報も多く書かれていましたから。最近ちょっと減ってきたかな。僕も書きたいと思いつつ、色々考えてしまって...(笑)

Gunosyさんでは、テキスト情報のストックには何を使ってるんですか?

id:skozawa Confluenceです。個人的なことを書くかというと、そうじゃないので。はてなのあの雰囲気は懐かしいなと思います。

はてなでのエンジニアスキルやマネジメント経験が活きている

id:motemen skozawaさんは、はてなの在籍の5年半で「はてなブログ」、任天堂さんとの「Miiverse」、「はてなスペース」「Mackerel」「はてなブックマーク」「BrandSafe はてな」、ソニーさんとの「家電会議」、社内の広告システム、KDDIさん・ナターシャさんとの「Pinga」と、自社・共同開発含めてさまざまなサービスに関わりつつ、シニアエンジニアとしても活躍いただきました。その経験はいまどのように活かしていらっしゃいますか。

id:skozawa 今に活きていると思うのは、エンジニアスキルを積み重ねられたことですね。「はてなブックマーク」や「BrandSafe はてな」でのコアな経験がいまもすごく活きていて、Gunosyに入ってからもすぐに活躍できたことの土台になってたと思います。

あとはシニアエンジニア制度(メンターとしてエンジニアと1on1する制度)で、マネジメントのさわりみたいなところも少し経験させてもらったので、Gunosyに入って1年半後にマネージャーをやり始めても、全く何やっていいかわからないということはなかったです。

id:motemen あの頃はチームメンバーだけじゃなく、他のチームの人と1on1と評価をしましょうという試みもやっていましたね。今はエンジニアの組織が大きくなりすぎて、他チームの人をメンタリングするのは難しくなってきて、チームの中でメンタリングしています。

skozawaさんがいた頃は、エンジニアが50人ぐらいで、他チームが何をやっているかぎりぎりわかったからできたのかもしれません。

id:skozawa 他チームのエンジニアなので、細かいコンテキストまで把握してるわけではないから解決まではできないけど、コーチングに近いサポートができるぐらいの感じでしたね。細かい話を知らない相手だからこそ相談できることとかもあったのかもしれない。

id:skozawaさんとid:onishi(2015年)

id:motemen そういうのもあったかもしれませんね。今もシニアエンジニア制度を運用していて、これからマネージャーやテックリードをやっていきたい人の前段パートとして活用しています。

Gunosyさんでは、エンジニア組織のマネジメントは、どのようになっているんですか?

id:skozawa エンジニアリングマネージャー(EM)がいて、その上が部長、本部長みたいな感じになっていきます。大体がマネージャーで、リードエンジニアがあまりいないというところが、はてなと違うかもしれないですね。

id:motemen はてなでも1年くらい前にようやくエンジニアリングマネージャー職を作りました。はてなは昔からディレクターが何でもやってたじゃないですか。そうすると本業のプロダクトマネジメントが手薄になってきてしまうといった問題があったので、テックリードという役割を作りました。

ただ、エンジニアを育てる前提でタスクのアサインやケアをして、目標達成を上げることをやるのは、エンジニアのバックグラウンドがある人じゃないと難しい面があります。そこで、エンジニアリングマネージャーを増やそうと思って。育成などにも注力しています。ただ、そっちのキャリアを選択したいみたいなエンジニアが割と少ない気がしていて。育成は難しいなと悩んでるところです。

id:skozawa Gunosyの場合は、チームに1人はEMを置いてるので、エンジニアの次のステップとして、EMになってもらうというのが自然と受け入れられていると思います。

あと、採用の時点から、技術特化した人というよりはプロダクトの課題解決を優先し、技術は課題解決の手段だという考え方をきちんとしてくれるエンジニアを採用しているので、その影響もあるかもしれませんね。
テックリード的な役割より、EMでより大きな課題解決に関われるのは良いこと、という感じだと思います。

id:motemen そうなると、エンジニアの思考や振る舞いなどにもGunosyさんとはてなで違いはありそうですよね。

id:skozawa そんな気はしますね。はてなは、僕がいた頃の印象でいくと、いい意味でも悪い意味でもエンジニアは事業と距離があったと思うんです。そうなると、技術に集中しやすい半面、集中しすぎた結果、事業開発からは、若干離れていくんじゃないかなと。

id:motemen 心当たりがないわけでもないですね。自分がチーフエンジニアとして採用に関わりだしたころは、技術力以外を重視できていなかったなと思っているので。最近は技術を極めるだけではなく、プロダクト志向やチームをまとめ上げられるソフトスキルも重要だと思っています。

id:skozawa Gunosyの場合、評価のグレードを上げていくためには、ソフトスキルを求める傾向はあるので、技術力があってもソフトスキルがついてないと、グレードが上がらないというケースは全然あります。

id:motemen はてなも最近はそうなっていますね。エンジニアとしての評価にも技術力だけでなく行動の観点も入れています。それは別に悪くはないと思って、今はそうしています。評価は5項目あって、1つは技術、あとはプロダクト志向やコラボレーションとしています。

developer.hatenastaff.com

一方で、最近は会社の規模が大きくなり、若手エンジニアがプロダクトの重みというのを感じづらいという課題意識もあります。skozawaさんが居た頃は、エンジニアが少人数でプロダクトの大部分を背負わないといけなかったじゃないですか。システムもいまほど安定してなかったですし。エンジニアがイチから作ったり、作ったものを自分たちで運用するみたいなことが、わりと普通だったと思うんですよね。

今は自分が壊しちゃうかもしれないというプロダクトの重みを感じながらコード書いたり、自分が書いたコードでみんなに迷惑をかけるといったことが少なくなってきました。僕もそういう経験がすごく自分の成長につながったと思っているので、エンジニアとしての引き出しを増やすためにも、そういう機会を増やしてあげたいなと思っています。もちろん、ユーザーさんやクライアントさんにご迷惑をかけないようにすることは大前提ですけども、そのなかでうまく経験を積んでほしいなと思って。

id:skozawa エンジニアにも、マネージャーにも、どう失敗を経験してもらえるかは、とても大事ですよね。僕らもそれに対して何かうまくアプローチできてるわけではないと思います。

基本はOJTなので、マネージャーとして目標設定することと、このひとにはこうしたタスクで育成しようといったところで考えたりします。Gunosyに「失敗させて育てる」みたいな文化があるわけではなく、僕の心がけとして、失敗するかもと思いつつ、様子を確認しながらサポートするようにしています。

エンジニアリングで障害を起こしたり、手戻り発生したりみたいなことが起こった場面では、あまり過剰にサポートやフォローをしすぎると身につかないので、自身で解決してやってもらうといった感じですね。

いまのはてなはどう見える?

id:motemen 最近のはてなについて、skozawaさんからどう見えているかというのをお聞かせいただきたいです。

id:skozawa 僕は卒業してから6年経っているので、チームやプロダクトが大きくなって安定してきたなっていうのをすごく感じます。

id:motemen そうですよね。以前ってもっと安定してなかったと思う。一方で、エンジニアが自然と学ぶ機会は減ってきたのかなとも思います。

技術的な環境が整っていないなかで自分たちでやるしかなかった状況がエンジニアを育ててきたところもあると思うんですよね。環境が整ってきて、いい選択肢もどんどん増えてきている中で、そこからどうやって選び取ることを学んでいくのかが難しい。skozawaさんのお話にもあったように、いい失敗から学んでもらうのが大事だなと思います。

id:skozawa IRとか見ていると、マンガビューワなどのtoBが伸びていて、すごいなと思っています。toCサービスは業界的にも売り上げを伸ばしにくくなっているので当然かなと思いつつ、今後toC、toBそれぞれをはてなはどういう位置づけでやっていくのかなというのが聞いてみたかったです。

id:motemen はてなの原点でもあるので、toCやUGCのサービスはやっていきたいと思っています。事業的には、toBであるテクノロジーソリューションサービスを着実に伸ばしながら、投資をしていこうとしています。だから久々にはてなにも新規チームみたいなのができて、めっちゃくちゃ頑張っています。

それがこれから事業としてどうなるかは、また別のファクターがあると思うんだけど。新規サービスの開発の様子は見ていますが、以前は勘と経験でやっていたところにちゃんと仮説検証を高速に回していて、はてなのやり方もいい意味でアップデートされてきたなと感じてます。

id:skozawa はてなのサービスがもっと増えたらいいなと、個人的には思っているので、期待しています!

id:skozawaさん、ありがとうございました!


id:skozawaさんこと小澤さん、ご協力ありがとうございました。次回の「はてな卒業生訪問企画」は2024年4月頃更新予定、担当はid:onkです。