
みなさんこんにちは!
社内のはたらくひとにフォーカスする企画
✨はたらくひと図鑑インタビュー✨
前号はGaiXer開発エンジニアでマネジメントリーダーの萬木さんにインタビューをしましたが、今号では同じくGaiXer開発チームで技術面のリーダーを務め “FIXER最強のエンジニア”?!と言われる毛利さんに学生時代のことから、FIXER入社後の遍歴・関わったプロジェクトなどまさに“社内履歴書”となるお話を聞いてきました!
ぜひ最後までご覧ください!
プロフィール!

学生時代から趣味はプログラミングです。
最近だと自作のプログラミング言語と自作のコンパイラ*1にハマっています。
また、家族の勧めで茶道を始めました。
習ってみると歴史が長いこともあって隅々まで考えられていて、こういう設計が行き届いているプロダクトを自分でも作りたいな、と思っています。
⭐️これを読んだら毛利さんの凄さがわかる?!⭐️
【Kubernetesもどき、作ってみた!】2022/12/26 tech blog掲載記事 |
最近趣味で自作し始めてしまったコンテナオーケストレーションシステム(+分散Key Value Store)の話をします。つまるところKubernetesのようなものを自作し始めた話です。(本文より抜粋) https://tech-blog.cloud-config.jp/2022-12-26-make-my-container-orchestration-system |
【Rust言語で書ける機械学習ライブラリcandleを使って自作言語の言語モデルを自作してみた話】 2023/09/13 tech blog掲載記事 |
candleというライブラリを使って自作言語の言語モデルを自作(学習)してみた話について書きます。(本文より抜粋) https://tech-blog.cloud-config.jp/2023-09-12-create-small-lm-in-rust-using-candle |
⬇︎その他毛利さんの技術ブログはこちら⬇︎
https://tech-blog.cloud-config.jp/author/mori-masato21fixer-co-jp
===========
*1) コンパイラ(compiler)とは、プログラミング言語で書かれた人間向けのソースコードを、コンピュータが直接実行できる形式(機械語や中間コードなど)に変換するソフトウェアのこと
============
Q1, これまでのキャリアのこと

---学生時代に触れていた、または得意だった技術は?
大学は工学部情報工学科で情報工学を専攻していました。
学生時代に一番力を入れていたのは競技プログラミングです。
競技プログラミングは、簡単に言えば出題された問題に対して条件を満たすプログラムを書く時間を競うもので、個人対抗のものから大学対抗のコンテストもあります。
僕は大学対抗の大会でメインの実装を担当し、アジア予選まで進んだことがあります。国内予選で400チームくらいの中から40チームくらいがアジア予選まで進出でき、確か三重大学では初めての進出で翌年以降も出場し、合計で5回アジア予選まで進出できました。
初めてのアジア予選のときには先生から「サークル作ったら?」っていう話をいただいて、プログラミング関連をひたすらやるサークルを作ったりしていました。
---FIXERに入社したきっかけや決め手は?
FIXERを知ったのは大学からの説明会の案内メールです。
まぁ行ってみるか、くらいの気持ちで参加しました。
東京の方がIT系の仕事は多種多様なので、そちらも視野に入れつつ、地元にいいところがあったら行きたいな、くらいの感じで就職活動は進めていました。
一方で、東京は全国から人が来ているので「三重出身の」という文脈が埋まってしまうなとも考えていました。
「三重出身で、地元でエンジニアしています」というのがいいな、とも考えていたのでFIXERがフィットした、という感じです。
---FIXER入社後に触れた技術や新しく習得した技術は?
AzureやAWS、Google Cloudなどいわゆるクラウドと呼ばれるものは学生時代ほとんど触っていなかったので、FIXERに入社してから勉強しました。
現在では関連する資格を10前後取得しています。
---入社してからこれまでのキャリアの変遷は?
初めて配属になったのは、メタバースのプロジェクトです。
ちょうど「PLATEAU(プラトー)」という各都市の3D都市モデルの整備が国単位で始まったタイミングで、自社のメタバース環境上にその3Dモデルを搭載するというプロジェクトでした。
メタバース環境自体はAzureで構築していて、3Dモデルデータをメタバース環境用に変換したり、最適化や最適化の自動化などをしていました。
その次は別プロジェクトのヘルプ要員としてひたすらバグ潰しをしました。
このプロジェクトではデバッグがやりやすいようにツールを自作してチームで使ってもらったりしました。
その後GaiXerの開発チームに配属になり今に至ります。
---この技術は社内の誰にも負けない!という分野は?
ずっと競技プログラミングをやってきているので、「ある計算をやりたいけど高速に解くにはどうすればいいか」「精度を上げた性能が出るようなプログラムを書くにはどうすればいいか」といったアルゴリズムには強いと思います。
一番じゃないかもしれませんが社内でもなかなか負けないところかなと思います!
Q2, 現在の役割

---現在の業務内容や毛利さんの役割は?
現在はGaiXer開発チームの技術面のリーダーの1人として開発メンバーが設計・実装するものに対してのレビューや、技術的なアドバイスを行っています。
---リーダーになった時と実装メンバーだったときのギャップや、リーダーとして意識していることはありますか?
GaiXerの開発チームに配属になった当初からチームリーダーをしていました。その頃はまだ見ているメンバーは少なかったのですが、メンバーが増えるにつれ経験値的にも実装作業よりレビューの比重が増えていきましたね。
今はチームとして「こういうところの開発力が弱いからもっと良くしていきたい」「これから作れるものを増やしていきたい」という思いが強いです。
特に過去に自分がしてしまったミスと同じ轍を踏まないように「ここをこうすると後々やばくなりそう」など、気をつけて見るようにしていて、【チームメンバー全体のスキルを上げていく】ということを意識しています。
⭐️実は毛利さんの凄さを多くの人に知ってもらおうと、毛利さんと同じくGaiXer開発チームでマネジメントリーダーをしている萬木さんに、毛利さんについてお伺いしていたのでお伝えします! ⭐️

職人 笑
まあ言いたいことはわかりますね。
チーム全体の進行などはほとんど萬木さんにお願いしている状態なので、こちらこそいつもありがとうございます。
⭐️毛利さんの後輩社員からのメッセージも紹介します⭐️

確かに加藤さんとはよく「この前こういうのが出ててさ」とサービスやガジェットの話などしていますね。
普段から話しているので改まって言われると 照;;
こちらこそいつもありがとうございます。
Q3, 失敗と学び、こっそり教えてください!

---入社して今までで最も苦戦した、または失敗したエピソードは?
失敗というと、GaiXerの性能改善の時ですね。
意図しない影響を防ぐため、改善を有効にするか無効にするかを切り替えできるようにして進めていました。
この時、改善が有効な設定では十分にテストをしていましたが、改善が無効な設定ではテストが不十分になってしまっていました。
結果として改善が無効な設定では不具合が出てしまい、お客様にご迷惑をおかけすることになりました。
切り替えができるようにするのはよくある開発手法なんですが、新旧が並走するとどうしても意識が新バージョンの動作に向いてしまいがちなので、以降はちゃんと気をつけましょう、という教訓を得ました。
Q4, この実装は我ながら頑張った!

---「この実装は我ながら頑張った!」は?
メタバース空間の実装ですね。
「PLATEAU(プラトー)」のデータを変換してメタバース空間に入れるという処理はかなりアルゴリズム的というか、競技プログラミングの問題をかき集めてできる、みたいな感じだったので非常に思い入れがあるプロジェクトでした。
⭐️この実装については、毛利さんと同期入社で一緒に数々のプロジェクトをこなし、社内でも「毛利さんの相方といえばこの人!」と言われるくらい「ニコイチ」的な本田さんも印象に残っているそうです!⭐️

本田くんからも!笑
「手が早い」というのは、また競技プログラミングの話になりますが、競技が始まったらすぐアクセル全開で問題を解くので、そこから来ているかもしれません。
地球はなぜ丸いのかと嘆いていたのも懐かしいですね 笑
例えば極端に言うと、地球をそのまま3D空間に丸ごと持っていくと端のほうまで行くと落ちてしまうんですよね。
なぜかというと、3D空間は基本的にXYZ軸が直角の直交座標になっているためです。
地球は球の中心に向かって重力がありますが、3D空間はそうではなく下に向かって重力があるので、空間内で球体にするとどうしても端の建物や人は3D空間の重力に沿って落ちてしまう。
しかも現実の地球空間は綺麗な球体ではなく楕円形でかなり凸凹しているので、直交座標にするのがめんどくさいんです 笑
本田くんと2人で「なんで丸いんや」と嘆いていました。
本田くん、また一緒にRust書きましょう!
Q5, 今後の目標やビジョンは?

---キャリアの目標や挑戦してみたいことは?
僕自身は将来のキャリアとか目標はあまり決めずにその時その時でやれることをやっていこうかなくらいの気持ちでいます。
チームとしては、使える技術の幅を広げメンバーや技術のバリエーションを増やして、新しい開発やプロジェクトに繋げていけたらいいなと思っています。
最近だとAzureで実は使いこなせていない機能や、これまで使ってこなかったけど実は結構重要じゃないか?という気づきから実際に技術を取り入れていく、という流れも出てきています。
tech blogの記事も参考になっているので、僕もtech blogを書いてもっと盛り上げていきたいとも思っています!
⭐️ちょっとした野望⭐️ |
自作で言語なども作っていますが、現状一番好きな言語はRustですね。 コンピューターサイエンスの知見がちゃんと活用されている言語で、実行速度も速くて好きです。 良い技術がちゃんと使われないことって結構あると思っていて、良い技術がちゃんと使われてほしいと思っています。 Rustはそういうのがちゃんと使われている言語なので、そういうところも好きです。 なかなか難しいですが、GaiXerをRustで作りたい、っていうのは野望としてあります 笑 |
おわりに
毛利さんのエピソードからは、自作するくらい「好き」が原動力になっていることや、技術への深い理解、そして「チーム全員で強くなる!」というリーダーシップがひしひしと伝わってきました。
改めまして、インタビューにご協力くださった毛利さん、ありがとうございました!
===============
FIXERが提供する生成AIサービス“GaiXer”の詳しい情報は⬇︎
https://www.gaixer.com
===============
===============
💡これまでのはたらくひと図鑑のインタビュー記事はこちら💡
【FIXER はたらくひと図鑑 】
===============
最後まで読んでいただきありがとうございました😊
※このインタビュー記事は2025年8月時点の情報となります。