Mujinメンバーに話を聞こうシリーズ!ソフトウェアエンジニアとして活躍する、Kazutoさん&Kouさんが、ビジネス紹介メディアBiz9からインタビューを受けました。
ロボットに携わる「ソフトウェアエンジニア」とは、バックグラウンドの異なる二人がなぜMujinに入ることになったのか、などそれぞれの視点からお話ししています。ぜひご覧ください!
動画に入りきらなかった2人の熱い思いや、Mujinに入社するために重要なスキルなどの耳より情報も含めた対談記事も、以下公開しています!
Kazutoさんは、東大のロボット研究で有名な情報システム工学研究室(JSK)卒業後、大企業を経てMujinへ入社。現在ソフトウェアエンジニアの中のビジョンを担当しています。 Kouさんは、東大の大学院博士課程で物理を研究していましたが、中退してMujinへ。現在リードソフトウェアテストエンジニアとして働いています。
ーー さっそくですが、Mujinにはさまざまなソフトウェアエンジニアがいますよね。
「ロボットを動かすソフトウェアエンジニアって一体…?」とイメージつかない方も多いかと思います。Mujinには、ロボットの制御・フロントエンド・バックエンド・そして私のやっているビジョン・Kouさん率いるテストを担当するチームのなどがあります。
ロボットを動かすには、どの分野も横断的に関わっていく必要があります。ソフトウェアだけではなく、ハードウェアや電気、メカなども絡んできます。一つでも欠けると、ロボットは動きません。
そう、どの分野も密接にかかわるので、それぞれのテクノロジーを各チームが理解していないといけません。それが大変であり、面白いところでもあります。
ーー お二人はどんなことをやっているんですか?
私が所属しているビジョンチームでは、いわゆるロボットの目にあたる部分を開発しています。 ロボットが動くには、まず環境を把握しなければなりません。センサーを通して、ロボットが扱うべきものの位置や姿勢、また周辺の状況を認識させます。
私はソフトウェアテストチームのリードをしていますが、私のチームではあらゆる分野のテストを担当します。幅広い分野がお互いに関わり合い、そして複数のコンポーネントが並列に走ります。さらに、ハードウェアも絡んでくるので、外部環境によるノイズや違いも顕著に現れます。なので、テスト自体の難易度が極めて高いんです。
ロボットをテストするために、まずテスト自体の開発が必要になります。テスト用のシミュレーターやハードウェアの準備も必要です。その上で自分たちでテストをしたり、各チームがテストをできるようなテストツールやテスト手法を開発したりします。
Kouさんとも話す機会、多いですよね。 各コンポーネントが関連し合っているので、チーム間のコミュニケーションもとても大切なんです。私はロボットの目を担当していますが、脳にあたる制御分野で作業することもあれば、フロントエンド分野での問題解決をすることもある。ハードであれソフトであれ、詳しくならないといけません。
ーー では、もともとロボット開発に携わってないと、やはり厳しいのでしょうか?
Kazutoさんは、大学からずっとロボティクスに関わっていましたが、私の場合は違います。物理専攻だったため、プログラミングは好きでしたが、ロボット分野は未経験でした。
もともとロボットのことが分からなくても、入社して自分で勉強すれば力を発揮できるのはMujinの魅力ですね。自分のコードで、ハードウェアを動かせるのは、ソフトウェアで完結する世界とはまた違ってわくわくします!
ーー Mujinに入社したきっかけは何ですか?
大学時代は、東大のJSKというロボティクスの研究所で、家庭用ロボットを研究していました。大学院卒業後は、大手自動車会社の研究所で、引き続き家庭用ロボットのR&Dを5年ほど行っていました。
そのとき思ったのは、ドラえもんのような家庭用ロボットはまだまだ実現には遠い。能力・コストの両面で、実用的なものを社会に出すために乗り越えなければならないハードルがたくさんある、ということ。
実際に社会に役立つロボットを、自分の手で世の中に出していきたい。今ある技術で達成でき得るのは、ある程度コントロールされた環境下で使うロボット。製造や物流現場は、ロボットの周りに柵もあって、人の出入りも制限されており、家庭と比べると圧倒的に外乱が少ない環境です。そんな環境でも、まだまだロボットでできないことがたくさんある。まずはそこから始めて、ロボットをちゃんとビジネスにしつつ、技術の発展とコスト削減に貢献していきたいと思いました。その延長線上に、より高度なタスクをこなすロボットの実用化が見えてくると思っています。
色々なロボット会社を見たのですが、実際にお客様にとても近く、本当に役立つものを出している、という点でMujinに惹かれました。そういったロボットの会社って実はなかなかないんです。
またCTOのロセンは、昔同じ研究室にいたことがありました。彼の並外れた技術力は知っていたし、今でも自分でコードを書きながら、お客様とも対面して突き進んでいるCTO。この人と一緒だったら面白いものをつくれるに違いない!とも思いました。
博士課程で物理を研究しているとき、ふと空を掴むような感覚になりました。何か人に役立つことをやりたい、そう思うようになったのです。研究を辞めて社会に出る人って一定数いるのですが、社会のためになることをしたい、という人が多いように思います。
ちょうどMujinが少し有名になり始めたタイミングだったので存在を知り、ここだ!と応募を決めました。世の中に貢献したいという理由で入社したメンバーがMujinには多いですね。
ーー 実際に働いてみて、どうですか?
自分が書いたコードが実際に現場で動き、お客様の役に立っているのを目の前で見ることができます。デモではなく、本当の現場で大規模に動いているのを見ると、感慨深くなりますね。
Mujinがソリューションを提供している物流・製造現場って、今本当に人が足りない状況なんです。今まで技術的に不可能だったために人がやらざるを得なかった重労働をロボットが代わりにできるようにする。そうすることで、仕事が楽になった、生産性があがった、という声をいただけるのは嬉しいです。
デモであれば30分くらい動けばいいのですが、Mujinは365日動かなければいけないものをつくっています。それだけ動かしても、安定していなければいけません。それは難しさが全く違うのです。
実際にお客様先での実作業をしているため、ロボットの異常はお客様の利益損失に直結します。異常が発生したときは、即座に復旧させると同時に、二度と同じことが発生しないようその原因を徹底的に解明しなければなりません。また、現場で実用たり得る速度を達成する必要もあるので、パフォーマンス・安定性の両方をかなり高いレベルで実現しなければなりません。
ロボット業界で、これをやっている会社は少ないですし、世の中の役に立ちながら、かつ、自分の技術力も伸ばせる会社はそうないと思います。
Mujinの文化として、誰もやったことないことに対して、どんどんチャレンジをしていこう、というものがあります。自分で考え、自分で新しいものを生み出していけるのも大きな魅力だと思っています。
大企業だと部署も細分化されていますが、Mujinはまだまだ人数も多くありません。課題に対して決まった正解がある訳ではないし、誰かがやってくれるだろうではなく、自ら主体的に改善提案をするしかありません。いいものであれば即採用され、お客様先で自分がつくったものが動くというのは、とてもやりがいがあります。
ーー Mujinのソフトウェアエンジニアとして大切なスキルは、何だと思いますか?
Mujinは海外からのエンジニアも多いので、英語が得意でないと難しいのでは?と思われる方もいらっしゃるかもしれません。でも、英語を伸ばしたい!という意気込みさえあれば、そこは問題ありません。仕事やランチの時間などで英語を話す機会は、入社後いくらでもあります。
私も入社前、英語よりも技術を研鑽することに重きを置いていました。技術があれば、周りにも認めてもらうことができ、対等に仕事をしていくことができます。そしてMujinに入社してからは、英語のコミュニケーションが格段に増え、十分英語力を伸ばすことができました。
ロボティクスの経験や英語は、もちろんあればプラスですが、入社時には必須ではありません。それよりも、高い技術力・世に役立つものを生み出すことへの情熱・自ら考えて動く力が大切だと思います。
Mujinは、これまで技術的に不可能だったことを可能にし、現場で使われるソリューションを生み出している会社です。それはもちろん簡単なことではありません。このビジョンに共感し、情熱を持って一緒にやりたい!と思ってくださるエンジニアの方に集まっていただけると嬉しいです。
ーー Kazutoさん、Kouさん、ありがとうございました!