やりたいことが出来るレアゾンだからこそ広がる、エンジニアとしての無限の可能性
こんにちは、経営企画部の赤岩です。 今回は、フードデリバリーサービス『menu』の開発に携わる窪田さんにお話を伺ってみました。 『menu』のプログラミングコードを整理するマイクロサービス化を実現しながら、入社2年目にして新入社員向けのエンジニア研修の企画運営にも携わっている窪田さん。 学生時代の研究内容や仕事のやりがい、今後のビジョンなどについて語っていただいており、エンジニア以外の方でも参考になる内容となっておりますので、ぜひご一読いただければと思います。
INDEX
窪田 浩之 くぼた ひろし menu株式会社 開発本部 基盤開発チーム
東京大学工学部物理工学科卒業。大学時代にエンジニア養成団体に所属し、プログラミング技術を磨く。スピード感を持ってやりたいことにチャレンジ出来る環境に惹かれて、2022年にレアゾンへ新卒入社。フードデリバリーサービス『menu』の開発環境を整備し、ユーザー体験を向上させるためのマイクロサービス化に取り組む。また、2023年より新入社員向けのエンジニア研修を企画運営し、後輩育成に貢献する。
主体的にムーブメントを起こせる環境に魅力を感じ、レアゾンへ入社
大学卒業後、新卒でレアゾンへ入社された窪田さんですが、大学時代は何を勉強されていたのでしょうか?
『超伝導量子コンピューター』という、新しい仕組みで動くコンピューターの研究をしていました。普段私たちが使用しているコンピューターでは、処理に時間がかかってしまうような複雑な計算でも、一瞬で解けるような処理速度の実現を目指していました。『超伝導量子コンピューター』が開発されると、巨大なスーパーコンピューターで何時間もかかる計算が、瞬時に終わるようになる可能性があるのです。
最先端の技術を学んでいたのですね!プログラミングも大学で学ばれたのですか?
私の学科ではプログラミングの授業がなく、研究で必要になった際に独学するというスタイルでした。そのため、たまたまSNSで見かけた学費無料のエンジニア養成団体『42Tokyo』へ所属し、プログラムについて学びました。
一般的なプログラミングスクールでは、ウェブサイトや既存のサービスに似たようなサービス(Twitterを作ってみよう等)を作ったりするような場合が多いのですが、この団体では、よりコンピュータの基礎部分に関わるようなことを学べる課題が多く、よりプログラミングの深い部分を学んでいくことが出来ました。また、先生がいないことも特徴で、課題に対するレビューはスクール生同士で行い、協調性や問題解決力を磨きながらお互いに切磋琢磨していました。実際に仕事をしているような感覚で非常に楽しく、大学院に進学するよりも就職したいなと思ったきっかけにもなりました。
先進的な環境でプログラミングを学ばれたのですね。実際に大学院には進学しなかったのですか?
元々進学するつもりで試験にも合格していたのですが、卒業研究している時がちょうどコロナ禍で、研究をあまり楽しむことが出来なくなり、本当に進学すべきか悩むようになりました。研究室に2人以上入室してはいけないという方針もあり、先輩へ気軽に相談することも出来ず、孤独さを感じてしまい…。また、学園祭やアルバイト、インターンで働くのが楽しく、社会に出て働きながら人の役に立ちたいなという思いが強くなり、就活することを決めました。
就職活動ではどのような会社を見ていましたか?また、その中でなぜレアゾンを選んだのでしょうか。
就職活動中は、規模の大きな仕事ができそうなSI系の大手企業と、エンジニアとしてのスキルを高められそうなメガベンチャーのIT企業を中心に見ていました。複数社から内定をいただけたのですが、その中でもレアゾンは会社のサイズ感が主体的にムーブメントを起こすことが出来そうだったことと、福利厚生面でも満足したことが理由で入社を決めました。
もちろん大手企業ではリソースも多くありますし、よりインパクトがあるプロジェクトにたくさん携わることが出来ると思うのですが、ベンチャー企業と比べてスピード感や自由度があまりなさそうに個人的には感じました。レアゾンでは、面接の際に「やりたいことがあれば、自由に挑戦してください」と言っていただき、楽しみながら成長できそうだと思ったことをよく覚えています。
インプットとアウトプットのサイクルを加速し、新たな仕組みを創造する
主体的にチャレンジ出来る環境に魅力を感じたのですね。現在はどのような仕事をしているのでしょうか?
現在は、『menu』のマイクロサービス化に取り組んでいます。サービスが拡大する中で、プログラミングコードは非常に複雑なものになってしまっており、エンジニアは開発するために時間をかけて複雑なコードを読み解かなければならない状態となっています。また、新機能を追加した時に予期せぬ副作用が起きてバグなどが発生し、ユーザーの不利益につながってしまうリスクもあります。
そこで、開発効率を上げてサービスの質を向上させるために行っているのが、マイクロサービス化です。複雑に絡みあうコードやシステムを、小さな複数のシステムに分割し、読みやすく副作用が起きにくいコードへリファクタリングしています。
マイクロサービス化では、どのような基準でシステムを切り分けているのですか?
例えば、店舗やユーザー、配達員、地図といったように、パートごとに切り分けていくイメージです。どこに線を引くべきかは、menu事業の関係者に話を聞きながら決めています。配達員はどのようにアプリを使って動くのか、どういうデータがあれば営業は販促しやすいのかといったように、実際の使われ方や要望を聞きながら進めています。
『menu』がさらに進化していきそうですね!menu事業での仕事のやりがいを教えてください。
マイクロサービス化を実現するためには、常に勉強し、その知識をすぐに業務へ活かすというサイクルを回していかないといけないので、目まぐるしい日々を過ごしています。また、キャッチアップしたことが、仕事に直結しているので、非常にやりがいを感じています。
実際に、どのような勉強をされているのですか?
外部の勉強会へ、積極的に参加しています。企業が開催するカンファレンスや、Go言語(※1)に詳しいエンジニアのカンファレンスなど、様々な勉強会が定期的に開かれています。月2回はマイクロサービス化で使えそうなテーマのカンファレンスに、オンラインオフライン問わず参加して勉強しています。
また、書籍はもちろんのこと、エンジニアやIT企業が事例を公開しているブログやSNSの情報も参考にしています。マイクロサービス化はゼロから仕組みづくりを行っているので、新しい技術や考え方を導入しやすいです。
※1.Go言語:検索エンジンとして馴染み深いGoogleが開発したプログラミング言語
入社2年目にして、新卒エンジニア研修の企画運営に挑戦
窪田さんは新入社員研修にも関わっていると伺いました。
入社2年目ではありますが、エンジニア研修のカリキュラム作りから運営まで任せていただいています。正直、私が新入社員として受けたエンジニア研修は明確なカリキュラムがなかったので、もっとブラッシュアップできそうだと思ったのです。また、レアゾンが世界一の企業を目指すのであれば、エンジニアの技術力も世界一でなければならないので、更なるレベルアップを目指すべきだと考えました。
そこで、開発本部の部長に「こういうテーマで、こういうカリキュラムをやってみたいです」とプレゼンさせてもらったところ、「研修を任せるよ」と言っていただけました。
まさに、やりたいことがあれば自由に挑戦出来る環境ですね。具体的にどのようなカリキュラムを作ったのでしょうか?
入社直後は全職種共通の全体研修があり、その後に実施するエンジニア向けの研修を設計したのですが、レアゾンの事業に関わる様々な領域の技術の基礎知識を学んだ後、3名×6チームで実際にプロダクトを作るハッカソンを実施し優勝を決める、という流れを約2カ月半で行う設計にしました。
簡単に、具体的な研修内容をご紹介させていただきます。
エンジニア研修の検討段階から運営まで、部長を含め複数名のエンジニアに協力してもらいました。最初に研修のテーマを決めるために議論をしたのですが、最終的に「何でも出来るエンジニアになってもらいたい」という思いで一致したんです。menu事業やソーシャルゲーム事業など、どこに所属しても活躍出来るように、そしてエンジニアとしての可能性を広げてもらうために、様々な領域の必要最低限の知識を学べるスケジュールを組みました。
私は、主にエンジニア基礎研修とバックエンド研修を担当し、他の研修についてはそれぞれの分野に知識や経験を豊富に持っているメンバーにご協力いただきました。最後に実施するハッカソンも大変盛り上がり、新卒メンバーがプロダクトをしっかり作ってくれた姿を見た時は、非常に嬉しかったですし、研修メンバーとも喜びを分かち合いましたね。
この研修が、レアゾンのエンジニアの成長を後押ししてくれること間違いありませんね!エンジニア研修を考える上で、工夫したことはありますか?
研修に関わっていただいた各メンバーを信頼し、必要最低限の条件を決めた上で後はすべてお任せすることで、管理コストを下げながら質の高い研修へ仕上げることを意識しました。協力してくださったのは優秀なエンジニアばかりなので、具体的な講義内容まで依頼せずとも、高品質な講義をしてくださることも分かっていました。
幅広い事業に携わり、エンジニアとしての可能性を広げたい
チームの信頼関係があったからこそ、質の高い研修を実現できたのですね。
それではズバリ、窪田さんにとってレアゾンの価値は何だと思いますか?
入社2年目の私が新入社員のエンジニア研修を任せてもらえたことからも分かるとおり、やりたいと手を挙げて行動すれば、年次に関わらずチャレンジさせてもらえることが一番の価値だと思います。
そして、そのチャレンジに対する”失敗は咎めない社風”も好きです。研修を任せていただいた時も、「やること自体に価値があるから、失敗しても大丈夫。その代わり、最後まで諦めずにやり切ってくださいね」と伝えられました。そのおかげで随分と気が楽になりましたし、途中で逃げずに最後までやり抜こうと改めて思えました。
menu事業でも、マイクロサービス化に必要なインフラ構築を主体的に担当させてもらえています。使うべきツールを最低限指示されて、その後は良いと思ったことを自由に挑戦できています。勇気を持ってきちんと自己主張すれば何でも出来る環境ですし、自分の可能性を広げることが出来る職場だなと実感しています。
それでは最後に、今後の目標をお聞かせください!
言語化がうまいエンジニアになりたいです。例えば、「こういうサービスを作ってほしい」と依頼された時、依頼主には漠然としたサービスのイメージを持っているはずで、優秀なエンジニアは会話を通して相手の思いを引き出し、的確に言語化しながら課題の情報整理を行います。課題や情報をきちんと言語化できれば、たいていの問題解決はできますし、AIツールを活用して自動プログラミングも出来るでしょう。コミュニケーション力に近いスキルだと思いますが、私もその点を強化して依頼主の思いを実現していきたいです。
また、menu事業が落ち着いたらゲーム事業にもチャレンジしてみたいです。ゲームは新規タイトルがどんどんリリースされており、チャレンジングな技術もたくさん活用されています。幅広い領域で刺激を受けながら、エンジニアとしてのスキルを高めたいですね。
窪田さんの今後の成長が楽しみです。
本日は貴重なお時間をありがとうございました!