見出し画像

【INTERVIEW / SWE】自律学習を技術で支える!Monoxerの未来を見据えた開発の楽しさ

2024年3月、SWEのポジションで入社された、楠本さん。
エンジニアとしてのキャリアや、モノグサに入社した理由、開発している機能などについて、詳しくお話しいただきました。


働いている人の活気が入社の決め手

――モノグサ入社までのキャリアについて教えてください。

楠本:情報系の学科を卒業し、新卒で入社したのはIT系のベンチャー企業でした。当時から少しずつ流行っていたディープラーニングや、今でいうAI系技術に特化した事業の会社です。

前職での約10年のキャリアの中では、主にプルーフオブコンセプト(PoC)と言われる、検証業務が主でした。例えば、この技術を用いれば課題を解決できるのではという仮説に対して、解決可能か否か検証し報告書にまとめ、お客さまに報告するというものです。

――PoCを主に行っていたのですね。モノグサのことはご存じでしたか?

楠本:知り合いのエンジニアでモノグサに勤めている人がいたことので、その人を通じて知っていました。また、競技プログラミングコンテスト(ICPC)の運営にも関わっていたことがあり、モノグサは協賛をしていたので、そこも知る機会になっていたと思います。

――競技プログラミングコンテストもモノグサを知ったきっかけの1つだったのですね。次のキャリアとしてモノグサを選んだ理由は何だったのでしょうか。

楠本:そうですね、働いている人が楽しそうだったからでしょうか。その職場の活発さみたいなものは、社内の人の様子を見るとわかることが多いと思います。モノグサの社員のみなさんとお話ししてみて、その様子や雰囲気がとてもよかったことが決め手になりました。

また、CEO竹内さんのインタビュー記事も興味深いなと思いました。記事の中で「子どものころから世界を平和にしたい」というようなことをおっしゃっていて、私はそうしたスケールで考えたことがなかったので印象に残っています。実際に入社後竹内さんとお話しすると、やはり広い範囲で人のことをみているなと感じます。

――入社してみてギャップを感じたことなどありましたか?

楠本:入社して感じたことは、150名程の規模の会社としては内部体制がしっかりしているということです。例えば、入社すると1ヵ月の研修プログラムが用意されていて、Monoxerとは何かから、エンジニアとして業務にコミットできるまでの道筋までしっかり教えてもらえます。

もう1つ感心したことは、情報共有が密だということです。毎月月初にはAllHandsという経営状況についての共有の場があったり、毎週金曜日にはOKR進捗会が開催され、各事業部の事業部毎のOKR進捗について共有される場があったり、個人ベースでは週1回マネージャーとの1on1があったりします。テキストコミュニケーションも個別のチャネルではなく、オープンなやり取りが当たり前の風土なのも、特徴的だと思います。特に凄いと思うのは、会社の全貌について全社員と共有する姿勢です。いいことだけでなく、うまくいっていない部分についても経営陣がオープンにしてくれるので、社員としては安心感がありますよね。

――エンジニアとして見たモノグサのいいところはどんなところだと思いますか?

楠本:エンジニアとして「いいな」と思うポイントは、コードレビューのフローが確立されているところです。開発では、コードレビュー後実際に反映する流れになるのですが、モノグサではそのコードを採用するか修正するかの決定者が明確になっています。開発領域ごとに配置された責任者がその責務を負うことで、無駄のない開発が可能です。この他にも、あいまいになりがちな部分がしっかり組織化されていることが、働きやすさに繋がっているのだと思います。

関係者の「やりたい」を整理して実現に近づける

――現在担当している業務について教えてください。

楠本:Monoxerの開発のなかで「学習者が、自律的に学習できるような体験や仕組みはできないか」という課題の解決を担っています。Monoxerは管理者から学習者にアプリの使用を促して学習してもらう、という活用が多くあります。本来は、学習者が自主的にアプリを活用して学習するというのが理想です。そのためにはMonoxerを使う動機となる機能の拡充が必要だということで、目下開発に取り組んでいます。

――具体的にはどういった取り組みがありますか?

楠本:大きく2つありまして、1つは普段の生活のなかでMonoxerを思い出してもらえる機能の開発です。もう1つはMonoxerを学習しているときに、他の学習者の気配をアプリから感じられるような機能です。1つ目の具体例としては、リマインダー通知機能があります。学習者が設定した時間になったら、通知を送ります。毎日同じメッセージだと飽きますし、機械的で無機質なので、学習状況に応じてメッセージが変わる仕様にこだわりました。学習の間隔が空いてしまったときにも、モチベーションが上がるようなメッセージを考えています。

もう1つの機能は、誰かと一緒に勉強している感覚になれる機能です。1人で学習しているとやる気が出なかったり、すぐに集中が切れてしまったりすると思います。ですが、同じ時間に同じように学習している人が他にいるとわかると、もう少し頑張ろうという気持ちになりますよね。そうした体験をアプリ上でもしてもらえるように、同じ学習スペースに何人がリアルタイムで学習をしているのかを表示できるようにしました。
――開発するにあたって壁になったことはありましたか?

楠本:ユーザー数の表示の部分では、どこの数字を使うのかといった部分で議論が必要でした。Monoxerを使っている全体にするのか、学習者が所属する組織に限るのかといったところです。最終的に、Monoxerはさまざまなユーザー形態があるので、全体の数よりも所属する組織の統計情報にするのが適切だということに落ち着きました。その他にも細かいハードルはいくつもあって、その度にチームで議論をしながら開発を進めています。

開発したものが多くの人に使われることが喜び

――プロジェクトはどういったやり方で進められるのでしょうか。

楠本:開発の進め方としては、スクラム形式が採用されています。スクラム形式とは、少人数のチームで短期間の開発サイクルをくり返し行う方法です。1週間や2週間という期限を切って、「この期間はこれを開発しましょう」といったことをプロダクトマネージャーと共に行います。

――エンジニア歴10年以上の楠本さんが、仕事で感じる面白さとは何ですか?

楠本:いくつかありますが、エンジニアとしては、アプリの細やかな改善といった部分に面白みを感じます。Monoxerでいうと、ベース部分が開発されて以降、さまざまな機能が追加されてきました。個別の領域はそれぞれの担当チームが機能追加や修正を行っていますが、ベースとなる部分も時の経過に応じて変更が必要になります。例えば、新機能を実装しているときに「あれ、ここは変更した方がいいんじゃないか……」といったことが出てくることも少なくありません。要望があって変更するのではなく、アプリ開発者が見て、将来的にアプリ開発の処理が発生しないように先回りして改善していくということです。裏側の見えない部分ではありますが、そうした改善を見つけていくのは面白いなと思います。

また、デザイナーや事業開発部を介してユーザーからもらえる学習のフィードバックも、楽しみの一つです。ユーザーの声を知ると、自分が開発した機能を直接ユーザーに届けられているという実感がもてて、充実感を得られています。エンジニアを志したときは、技術ばかりに目が向いていました。しかし、今は多くの人に利用され、役に立っているということが、エンジニアとしてのやりがいになっています。

――最後に、今後取り組みたいことをお聞かせください。

楠本:自律学習支援のところでいうと、まだまだやるべきことはたくさんあります。カスタマーサクセスの方々と話していても、あれもこれもとMonoxerで実現させたいことが溢れていてすごいなと関心してしまうほどです。エンジニアとしては、そうした要望ややるべきことに優先順位をつけてしっかり実現できるようにすることが課題だと思っています。機能の実装だけでなく、実装したあとの効果測定も必要です。効果測定の管理をどうするのかなども、考えなければなりません。これらを1人で行うのは現実的ではないので、人を増やした状態で円滑に進めるように整備することも今後のチャレンジだと思っています。

モノグサ株式会社では一緒に働く仲間を募集しています。
少しでも興味を持っていただけた方は、ぜひお話しましょう!