見出し画像

データ分析や機械学習のエンジニアがプロダクトオーナーの横で学んだ「成功」に必要なこと

プレイドでは、さらなる事業成長のために新卒採用を強化しています。これまでに新卒入社したメンバーは、まだ十数人という段階です。完成していない環境に飛び込もうという方に向けて、実際に新卒で入社したメンバーを紹介します。

今回は、2022年にエンジニアとして入社し、データ分析や機械学習に取り組んできた小池智哉さんにインタビュー。なぜプレイドを選んだのか、入社からどのように仕事を進めたか、挑戦と失敗、働く中で学んだことや意識していることなどを聞きました。


ユーザの可能性を広げるようなプロダクトづくりを目指して

──まず、簡単な自己紹介と学生時代に何をやっていたのかを教えてください。

新規事業のためのプロダクトを開発するチームでソフトウェアエンジニアリングを中心に、プロダクトマネジメント寄りのタスクも担っています。入社してからの1年間は、「KARTE」におけるデータ統合などを担う「KARTE Datahub」の開発をしていました。

大学では、情報知能工学科に所属しながら、生理学や健康科学について勉強していました。というのも、中学、高校と「どうすればBestの自分を超えられるか」を考え、やる気があるときに無理をしてしまい、心身が疲れて、自分が望んでいない「頑張れない自分」になってしまうことを繰り返してしまっていて。「どこまで頑張ったら休むべきかを知りたい」と考えるようになりました。

大学在学中に「頑張るための心身管理」が最も自分の関心事であることに気づき、以来人生のテーマになっています。そのテーマに関する研究をしたいと修士に進学し、生体信号と機械学習について研究する日々を過ごし、修士論文では「心音異常検知を深層学習で頑健に行うアルゴリズムについて」をテーマにしました。

勉強や研究の傍ら、エンジニアとして複数社でアルバイトやインターンを経験しました。2年ほどデータ分析の受託開発会社で機械学習・深層学習の業務に従事したり、生体信号の処理やデータ分析について大学の研究員をしたり、ウェアラブルデバイスを開発する会社でデータ分析の業務に従事したりと、データ分析を軸にいろいろと経験を積んでいました。

──プレイドに関わるようになったきっかけは?

プレイドで働いている人の紹介で知りました。当時、機械学習エンジニアという職種で就職活動をしていたのですが、本当はソフトウェアエンジニアリングを数年経験した後に、プロダクト全体を見られるような人間になりたいと思っていました。プレイドのエンジニアインターンでは、強いソフトウェアエンジニアと一緒に働けると知り、開発力をつけたいと思って申し込みました。

インターンとして、5ヶ月間ほどプロジェクトに携わりました。そこでインターンに対する既成概念を壊されました。インターンというと、限定的な業務を任される印象だったのですが、プレイドでは本番環境で動いているプロダクトの開発をガンガン任されます。もちろん、社員のレビューを通りますが、それでも責任は重大だと感じたのを覚えています。

エンジニアのインターンは、メンターからざっくりとタスクを渡してもらい、何か分からないことがあれば聞いて認識合わせをするという進め方。タスクをどう進めるか、どう課題を解決するかを考えることも含めて任されることが驚きでした。

──プレイドへの入社を決めた要因は何でしたか?

自分が思い描くキャリア像と、会社の文化の2つの面で相性が良かったことです。

キャリア像については、インターン前から期待していた通り、強いソフトウェアエンジニアやプロダクトマネージャー、そしてそれらロールを必要とするチームがあることがよく分かりました。強いメンバーの近くで働く経験を通じて、ここでなら自分も彼らのように強くなれるのではと思いました。

会社の文化についてもインターンを通じて相性を確かめました。自分で取りにいけば、いくらでも仕事をつくることができますし、毎度承認が必要ということもなく、ある程度自分で思考して仕事を進めることができるという環境が自分と非常に相性がいいと感じました。

また基本的に、会社が人を信じる形で制度が設計されているので、煩雑な手続きが少ないのも惹かれた点です。組織が大きくなると、手続きなどのステップも増えるのが普通だと思います。プレイドは組織が成長しているにも関わらず、徹底して不必要な手続きやルールを増やさない方向で工夫を重ねてきていると感じました。

この環境を実現するためには、各メンバーが会社や制度の目的から逆算して独立して判断できるという前提が必要になるはず。その思想で組織を設計している点に共感しました。例えば、プレイドはチームごとの独立性を担保するために、定期的にプロダクト全体でチーム構成を見直しています。ビジネス的な臨機応変さと、チーム内の独立性を両立するやり方として上手いなと感じたことを覚えています。

「絶対にやり遂げる」意思と「本当にできるか?」を慎重に検討する姿勢の両立

──入社後はどのように仕事を進めていったのでしょうか。

データ統合・利活用プラットフォーム「KARTE Datahub」のジョブフロー機能の基盤移行作業を担当することになりました。

ジョブフローは、データ連携を支援する機能です。KARTEで収集できるユーザの行動データと、例えば自社の商品データを統合して活用するためにジョブフロー機能を利用できます。この機能はそのままに、裏側のデータ連携基盤の刷新を行うプロジェクトを担当することになりました。

この移行を成功させることだけを意識し、「KARTE Datahubの中でももっと目立った機能にするぞ」「ジョブフロー機能単体でも契約できるような機能にしたい」とやる気がみなぎっていて前のめりで取り組んでいたのですが、結果としてこの機能はリリースできなかったんです。

──なぜ、リリースできなかったのでしょう?

もともと、難易度の高い開発とは想定していましたが、蓋を開けてみると想定以上にもともとの基盤が複雑な状態になっていました。また、新しい基盤にしたときの負荷も想定より大きく、簡易的な負荷試験で見つかったいくつかの課題の修正に想定よりも時間を使いました。検証環境で新システムを動かすところまではこぎつけたのですが、まだ不安定なものでした。それまで3分の2ほどは一人で開発していたこともあり、既に半年ぐらい時間を使っていました。ここから本番環境で必要な可用性・信頼性に耐えうるシステムに磨き上げるには、追加でさらに多くの工数がかかることが分かりました。

結果、CPOの柴山さんから「現状の完成度を踏まえて、本番に入れるのはさらに相当な工数がかかりそうだから、プロジェクトは一旦中止しようか。開発の難度はやる中で分かってきたことでもあるので、次に移行を考えるときに今回の開発は活かせる」と言われました。

個人の反省として、かかる時間や工数の見積もりをもっと正確にすべきだったと考えています。自分が正確に見積もって「これは時間がかかりそうだ」ということを早めに相談をしていれば、中止の意思決定もさらに早くできたはずでした。時間がかかりそうだから、ちゃんと見積もる時間を取らずに手を動かしてしまう。新たな問題が見つかると、焦ってまた考えずに手を動かしてしまう。そんな負のループに陥ってしまいました。

「完璧を目指しすぎない」ことも反省でした。既に稼働しているジョブフローを踏まえ、ユーザ側の作業を全く必要としない形で、完全に互換性をもたせた仕様で移行することにしていました。ユーザにとっては嬉しい反面、開発にとっては移行する基盤の仕様がとても複雑になり、難易度が格段に上がります。少し手を動かして解像度が上がったタイミングで、互換性をもたせずにクイックに作る、というオプションをもう少し具体的に検討しておくべきだった、と学びました。

この失敗からは、そもそも開発自体を継続するかどうか、どこまで完璧な仕様を実現するかという意思決定のレイヤーから、実際に手を動かして開発するならどう進めるかという具体のレイヤーまで、さまざまな学びが得られました。定めた目標にコミットしてやり遂げる意思は必須ですが、それに加えて不確実性を常に認識して、目標や仕様を調整する二つのモードを行き来しながら仕事に取り組むことが必要だと学びました。

社内では「手を動かすことで見えたことなので、失敗じゃないよ」と言ってもらってはいますが、入社から半年でこうした経験を積むことができたのは、失敗を許容するプレイドならではのカルチャーだと思います。

プロダクトオーナーの目線を学びながら幅広い業務を担当

──その失敗経験を経て、次はどのようなことにチャレンジするようになったのでしょうか。

CPOの柴山さんがプロダクトオーナーを務める新規事業チームにジョインすることになりました。そのチームは、柴山さんとエンジニア6名という、スタートアップ初期のような新規プロダクトの開発に全振りした体制になっています。

そこでは、開発以外のさまざまなタスクが柴山さんに集中しやすくなっていたため、開発以外で落ちるボールがあるときは自分が拾いつつ、チームとして開発の優先順位が高いときは開発に入る、という姿勢でチームに入りました。チームでの自分の仕事は幅広く、プロダクトマネジメントが3〜4割、エンジニアリングが5割、残り1割がチームマネジメントといった比率です。

具体の業務としては、プロダクトマネジメント関連ではユーザヒアリングやオンボーディング、エンジニアリング関連では機能の一つを開発をまるっと担当しています。直近ではLLM(Large Language Models/大規模言語モデル)をアプリ内で使用する機能を実装したのですが、機械学習エンジニアとしての経験が意外にもここで活きました。

──開発以外の仕事に関わることに抵抗はなかったですか?

ずっとサッカーをやっていて、そこで染み付いていた考え方が活きました。チームスポーツでスタメンを獲得するためには好き勝手にプレーしていてはダメで、全体の編成を考えて、欠けている部分を自分の能力で埋めて貢献することが重要。プロダクトの目標へ最短で向かうために埋めるべきピースがなにかを考えました。自分なりに試行錯誤しながらバリューを出していく、その時にこれまでのロールに縛られず、自分のロールを変えていくことに抵抗はありませんでした。

将来的には自分で事業を作りたいと考えているので、さまざまな経験ができる環境はプラスになるとも考えています。

──実際に新しいプロジェクトが動き出してからは、どんなことを意識していましたか。

自分が最も意識していたのは、何よりプロダクトを成功させることです。プロダクトオーナーが考えていることの理解を深める会話をしたり、ユーザに積極的に話を聞きに行ったり、自分自身がユーザになったりして、自分なりに考えて動けるようにしました。

また、チームのメンバー同士が話しかけやすい雰囲気になっていることは、早めに課題を発見し、解決するために大切なことです。自分はM-1グランプリの予選に出たことがあるくらいのお笑い好きで、チームでも一番若手ということもあってボケやすい状況もあって、この要素を活かすしかないと。意識的に楽しい雰囲気をつくろうとしています。

どんなプロダクトにしていくかを考えながら競合調査を進めるなかで、他社プロダクトとの明確な差分が見出せずに自信がなくなり、悩んだ時期もありました。「これはプロダクト開発の撤退自体も視野に入れたほうがいいのでは」と考え、柴山さんに相談してみたこともあります。

返ってきた言葉は、「最初からプロダクトの機能に大きな差分があるわけじゃない。プロダクトをリリースしてから、事業として、チームとしてラーニングし、差分を発見して修正する前提で考えればいい。」というものでした。このとき、自分の視座がプロダクトレベルで留まっていたことに気づかされたんです。以降は、事業としてチームとしてどうプロダクトをつくり、成功に向かっていくのか、視座を高く持つように意識しています。

目的から逆算してやるべきことを優先順位の高いものから何でもこなす動きはできていましたが、そもそも目的がズレていたらやるべきことが正しくなくなってしまいます。プロダクトオーナーが考える目的の解像度や時間幅の長さと自分の認識を合致させることを意識して、いろいろな試行錯誤をしながらプロダクト初期フェーズの仕事の進め方を幅広く学ぶことができた経験でした。

中長期でプロダクトの未来を見据えられる人材になるために

──今後挑戦したいことはありますか?

プロダクトオーナーの横で仕事をする経験を通じて、自分も起業を視野に入れるなら、長い射程でプロダクトのビジョンや成長ストーリーを描く能力を身につけなくはいけないと思うようになりました。今のチームでプロダクト開発に必要なことを推進しながら、中長期的な視野を持てるようになれたらと思っています。

今年の春に、同僚とイスラエルを旅行する機会がありました。イスラエルはスタートアップエコシステムが盛り上がっており、実際に現地のスタートアップの方々と話すこともできました。もともと、20代のうちに自分の事業を立ち上げたいと思っていたのですが、今回の旅を通じて、より一層自分で創業し、プロダクトを作りたい気持ちが強まりました。

そのためにも、まずは現在のチームで自分なりにやりきり、プロジェクトを次のフェーズに持っていきたい。その過程で力を十分につけ、次なる挑戦に向かっていきたいです。

──最後に、プレイドの環境やカルチャーについてもお伺いしたいです。実際に小池さんが働かれているなかで感じるプレイドの特徴や推しポイントはどこですか。

プレイドには常にさまざまな仕事があります。会社にとってプラスになるなら、手を挙げればいくらでもその仕事を担当できます。つまり、エネルギーがある人にとっては、いくらでも挑戦できる環境がある。

一方、積極的に行動し、かつ学習を継続できる人でなければこの環境を生かすのは難しいかもしれません。対面にせよSlackにせよ、とにかく話を聞きに行ったり、自分の意見をぶつけたり、とりあえず行動してみる。

それらの行動によって得られる経験、周囲からのフィードバックを踏まえての学習サイクルを回し続けられる人にとっては、これほど成長の機会に溢れている環境はないのではと思います。

■ プレイドの新卒採用ページはこちら

■ 関連の新卒入社メンバーのインタビュー記事