見出し画像

LAPRASの「R&Dの1日」と開発秘話

ITベンチャーのプロダクト開発って実際どうやってるの?そんな声にお応えするために、開発チームの裏側を探ります。LAPRASでは7月に「Skills & Wills Map」という新機能をリリースしました。

その開発に大きく関わった研究開発(R&D)プロダクト開発(Develpoment)の2つのチームの実態を探っていきます。

今回は、研究開発(R&D)チームの実態に迫ります。
LAPRASのR&Dの2人にインタビューしてみました。


LAPRASのR&Dメンバーの紹介

スクリーンショット 2022-09-12 12.53.12

森元:最先端情報工学専攻にて修士号を取得。情報科学研究科の博士後期課程を指導認定退学。自然言語処理学の研究に従事し国際学会にて成果を発表。2019年4月より新卒でLAPRASに入社。趣味はアニメ鑑賞と1人でできる系のゲーム。

スクリーンショット 2022-09-12 12.53.30

田嶋:フロントエンドからバックエンドまでこなすフルスタックエンジニア。ゲームや金融などさまざまな業界を経験した後、2020年9月にLAPRASに入社。日本語の研究が趣味。

AIの中でも特に自然言語処理(人間が日常的に用いる言語を機械で分析すること)が得意な2人です。

R&Dの仕事内容を教えてください。

森元:将来の新機能に用いたい技術において、実現可能であるかどうかを事前に検証しています。
また、将来使える技術開発のために、機械学習などを用いて、手作業で行っている業務の自動化の検証なども行っています。

田嶋:技術的な飛躍がある開発を目指しています。
スタートアップのR&Dなので、短期間でスピード感を持って仕事をしています。以前の職場でR&Dをやっていた時と比較して、LAPRASのR&Dはユーザーの方が使ってくれることを意識して開発している感覚があります。

1日の仕事の流れはどんな感じですか?

スクリーンショット 2022-09-09 16.34.35

田嶋:個人作業をする時間と、ペアプロ(2人のプログラマが画面を共有して共同でプログラムを書いていく開発スタイル)が1日2時間ほどあります。
また、本を用いた機械学習関連の勉強会論文読み会を週に1度、実施しています。
個人的にプロジェクトに関連する記事などが目に留まれば読んでいます。

最近読み合わせで使った論文はこちらです。

R&Dとプロダクト開発チームとの違いって何ですか?

森元:まず、開発にかけるスパン(期間)の違いがあります。開発チームはスクラムで動いているため、1〜2週間スパンで動いているのですが、R&Dチームは数ヶ月〜半年といったスパンでプロジェクトを進めることが多いです。
また、R&Dでは、試した施策が機能にはつながらないことが多いのも開発チームとの違いだと思います。

田嶋:何個か作ってみて、社内に共有してみたけどお蔵入りみたいなことがよくあります。
また、通常のプロダクト開発では運用環境に配置した後の保守・運用までしっかり考えた設計が好まれますが、研究開発では手をつけられるところからやってみる心持ちが大切です。R&Dは実験なので「まずはやってみよう」っていう姿勢が大事なんです。
「まずやってみる」姿勢は、森元さんが得意な部分ですね。僕は、アプリケーション開発者としての経験が長いゆえに、「もし今作っているプログラムが本番環境に出たら」ということをついつい考えてしまう傾向があります。

LAPRAS R&Dの2人

R&Dは社内でどんな存在ですか?

田嶋:LAPRASの強みの一つが僕たちの得意分野である自然言語処理(人間が日常的に用いる言語を機械で分析すること)なので「LAPRAS の技術の根幹を担っている存在」になれているかと思います。

また、先のことについて検証しているため、社内で関わる人が限られているので「何をやってるかよく分からない存在」かもしれません。
先日、社内の皆さんに私たちが何をしているかのお便りを「R&D チームだより」として出したら好評だったので今後もやっていきたいと思っています。

「R&D チームだより」の一部 ※モザイクをかけています

森元:仕事の一つに、「機械学習などを用いた手作業の自動化の検証」があると言いましたが、最近自動化したものでいうと「企業の方が書いてくれているスカウトメール内容のチェック」があります。
LAPRAS SCOUTでは企業の担当者の方が、エンジニア候補者の方にスカウトメールを送られているのですが、その文面がきちんと法令やガイドラインを遵守しているか担当者が手作業でチェックしていたものを自動化できないか検証しました。

田嶋:森元さんは特にそういう社内で困っている人の困りごとを解決するのが好きですよね。社内の手作業を自動化することが、研究開発につながることもあったりします。

仕事の辛いところはどんなところですか?

森元:いろいろと試した施策が結局機能にはつながらなかったということがそれなりにあることです。

田嶋:目標の実現に向けてアイデアを探す段階は辛いポイントです。しかし、辛い中に楽しさもあります。

森元:良いアイデアを探し出した時は楽しさ100%ですが、いい感じのものが見つからないとだんだん辛くなってきます(笑)

仕事でやりがいを感じるのはどんな時?

田嶋:実現可能性の検証をやっていて、素早く良い精度の結果がでたときに楽しさを感じます。
最近やったものでいうと、各企業と候補者の面談数の記録を自動化する仕事を任せてもらった時に、保守・運用のことを考えず、まずはできるかどうか検証してみる段階がすごく楽しかったです。

この段階では、ほぼ R&D チームだけで進められたので計画通りに進み、アウトプットがスピーディーにできあがりました。
機械学習を使って自動化したのですが、面談の記録を手作業でしている人がどのようなことを考えて作業しているのかを理解すればするほど、精度が良くなりました。良いモデルが出来上がっていく過程が面白かったです。

森元:今年の7月に公開したSkills & Wills Mapの中で、エンジニアさんの職務経歴書から「やりたいこと・できること」を職務経歴書から抽出するシステムを作ったのですが、その時に使用したライブラリOwlready2は、田嶋さんが見つけてきてくれました。すごく魅力的な技術で楽しかったです。

田嶋:ライブラリの設計が綺麗でユニークでセンスが良くて、触っていて面白かったですよね。知らない領域の体系的な学びや、技術に関しても先行研究に潜っていけるのはR&Dをしていて楽しい部分です

Skills & Wills Mapで苦労したことは?

森元:
ユーザーであるエンジニアさんの「やりたいこと・できること」を職務経歴書から自動でMapに表示させようとすると、開発当初に使用していた技術では、意図しないワードが多々入ってしまうことが問題でした。

田嶋:
この当時、「やりたいこと・できること」の言い換え表現を Wikipedia の記事などから自動的に得ることができないか試していました。

例えば「機械学習」に対し「machine learning」という言い換え表現を得ることができれば、「machine learning」という職務経歴書上の記述に対し「機械学習」を対応付けることができます。ただ、もし「機械学習」に対して全然関係のない単語が言い換え表現として得られてしまうと、その単語の記述に対して「機械学習」が意図せずして対応付いてしまいます。
その結果、技術カテゴリの中に関係ないワードが抽出されて、Map に表示されることなどがありました。

森元:
そこの精度があがるよう、1つずつルールを追加していって意図しないワードが入ってこないようにする作業を2ヶ月間行いましたが、なかなか精度が上がりきりませんでした。

少し精度は下がっても職務経歴書からできるだけ多くのワードをMapに表示させるか、少し表示できるワードは減っても精度高くMapに表示するか、この選択を迫られました。
エンドユーザーのエンジニアさんに満足してもらえるサービスを開発したい思いが根底にあるので、精度高くMapに表示する方法を選択しました。自分たちの2ヶ月の作業が水の泡になってしまうといえばそうなのですが、ユーザーさんにとっては何がいいかを考えるとあまり悩まずに、納得して次に進むことができました。

どんな思いを持ってお仕事をされていますか?

田嶋:
作りたい、検証したいと思っているものがエンジニアのユーザーの方にとって、あるとなぜ嬉しいのか、どうしてユーザーはその機能を使おうと思ってくれるのかを意識するようにしています。
また、なるべく早く問題領域について学んで成長できるチームを目指しているので、チームの課題があればその場で対応を考えて翌日から実施するようにしています。

LAPRAS でどんなものを新しく開発したいですか?

森元:自動的なマッチング部分にまだまだ課題はたくさんあると思っているので、今後の LAPRAS 上でのより良いマッチングにつながる根幹技術に取り組んでいきたいです。
個人的な興味としては対話形式が実現できるような技術開発にも取り組みたいです。チャットボットでマッチングに必要な情報をより多く引き出したいです。

田嶋:日本語が好きなのでこれからも自然言語処理に取り組みたいです。

研究開発をするにあたり参考にして良かったものは?

森元:基本的には本から得た知識を参考にすることが多いです。
機械開発系の本を読むことが多いですが、社内の手作業を機械学習を用いた自動化をしたい時には、業務知識系の本を読みます。例えばキャリアカウンセリングの中で機械学習を用いた自動化したいことがある時には、キャリアカウンセリングの本を読みます。

田嶋:僕個人としては新しい業務知識を勉強するときはその分野でバイブル的な本をまずは読みます。キャリアカウンセリングであれば、キャリアカウンセラーさんがみんな読んでいるであろうベストセラー的な本ですね。基礎とか原理をまずは知りたいタイプなので、古典的な本が好きです。そういうところから発展して、他の本を読んで知識を深めていく感じです。

最後に、おすすめの本を教えてください!

田嶋:R&Dチームの勉強会で読んでいるこの本がおすすめです!
Designing Machine Learning Systems 

=========
今回は、LAPRASのR&Dのお二人にお話を伺いました。
表にはなかなか出ない部分もありますが、将来に繋がる技術基盤を整えることで、LAPRASの新機能や未来のLAPRASを支えているR&Dチーム
この記事を通して、ITスタートアップのR&Dが何をしているか少しでも興味を持ってもらえたら嬉しいです。

次回は、プロダクト開発チームの裏側をご紹介します!

LAPRASでは現在、一緒に働くエンジニアメンバーを募集しています。興味を持っていただいた方はぜひお気軽にお声かけください。

=========
最後まで読んでいただき、ありがとうございます。
今後もLAPRAS BACKBONEで発信を続けていきますので、是非アカウントのフォローや記事への「いいね」をよろしくお願いします!

<この記事を読んだ方へのおすすめ記事>

<LAPRASのサービス紹介>