本文へ移動

自動運転の現在を支え、未来を創る/チューリングが考えるソフトウェアエンジニアの重要性

この記事に登場する人
e2eチーム
安本 雅啓 Masahiro Yasumoto
新卒で日立製作所に入社し、鉄道ITシステムの研究開発に従事。その後AIスタートアップのアラヤにて開発案件に従事・CTOに就任。2021年4月にatama plusへ入社し、アルゴリズム開発エンジニアとしてAI教材atama+のレコメンドエンジンの開発を担当。2024年5月にチューリングに参画し、E2Eチームでソフトウェアエンジニアとして活躍中。

チューリングはMLエンジニアの色が強く、「ソフトウェアエンジニアの活躍の場はあるのだろうか」と思われている方も少なくないかもしれません。安本さんは、日立製作所、スタートアップを経て、2024年5月にチューリングにジョイン。現在では開発チームに不可欠なソフトウェアエンジニアとして活躍しています。

この記事では、そんな安本さんに、これまでのキャリアや、チューリングへ入社した経緯、ソフトウェアエンジニアがチューリングで必要不可欠な理由について話を伺いました。

技術を深めたい想いから、大手IT企業からAIスタートアップへ

ーーチューリングに入社するまでの安本さんのご経歴を教えてください。

新卒で日立製作所に入社し、鉄道ITシステムの研究開発を行っていました。研究職といっても、最先端技術の研究や論文の作成よりは、現場で差し迫ったニーズを技術で解消するような業務が中心です。主に「研究」と「開発」の橋渡しとしての役割を任されることが多かったですね。

ーー「研究」と「開発」の溝を埋めるうえで大変なことはありましたか?

出発点の違いを理解して、お互いの合意形成を図ることですね。開発では、まず世の中のニーズがあり、そして実現性のあるコストで動かせることを重要視します。しかし、研究ではシーズドリブンを起点として考えるため、1円のコストの重みという観点では開発側と話が乖離しがちで、そこを埋めていくのはやりがいもある反面、大変でしたね。

ーー転職を考えたきっかけは?

研究開発から実際の製品開発まで、一通り経験できて充実した日々を過ごせていました。ただ、これは、大きな組織の技術職・研究職であれば起こりうることですが、年次が上がるにつれて、マネジメントのキャリアパス以外の選択肢がなくなってしまうんですね。当時は「もっと技術を深めたい」という想いをもっていたため、転職を決意しました。

ーー大手企業からスタートアップに転職をするのは、安本さんの中ではチャレンジングな決断ではなかったですか?

チャレンジングでしたね。ありがたいことに家族が積極的にサポートをしてくれたので決断ができました。転職当時の2016年頃で最もホットだった研究テーマはAIでした。コンピュータが人間のプロ囲碁棋士に勝利したDeepMindが話題になっていた時期で、ディープラーニングの研究が盛んに行われていたんです。

日立製作所の頃から自身が抱いていたミッションである「研究と開発をつなぐ」を叶えるためにも、まずはAIのスタートアップでスキルを磨くのが良いと考え、2017年11月にアラヤに転職しました。アラヤでは、主に製造業や建設業向けに、深層学習を用いた画像認識や強化学習などのアルゴリズム開発をしていました。

ーー2020年7月からCTOに就任されていますが、「技術を深めたい」というキャリアとは真逆の路線を歩んでいる気がします。どんな心境の変化があったのでしょうか?

語弊を恐れずにいえば、大きい組織の場合、ある程度決まったキャリアパスに乗って、やや受動的に管理職に就くケースも少なくありません。しかし、スタートアップにおいてマネージャーや管理職は「替えがきかない存在」です。

また、大手からスタートアップに転職してみて、大手は仕組みが整備されていると改めて感じたんです。CTOとして働くことは技術を深めたい想いとは相反する部分はあれど、前職で学んだナレッジやノウハウを使って、より事業拡大や成長に貢献できるのではないかという手応えを感じました。

「課題の大きさ」や「人」に惹かれて、チューリングに参画

ーーアラヤからatama plusにジョインされた経緯を教えてください。

アラヤでは、日本の大手製造業や建設業にAIを実装できる意味においては非常に大きなやりがいをもって日々取り組んでいました。

AIスタートアップの最大のメリットはAIの開発ができることです。AIスタートアップは受託開発を主な事業としていることが多く、クライアントの課題に合わせて、画像認識、自然言語処理、強化学習などMLエンジニアとして、さまざまな機械学習モデルの開発に携わることができます。

しかしながら、依頼時には、モデルの作成に使うデータやタスクが既に決められていたり、またエッジAIへの搭載という案件では、量子化や最適化といった個別のタスクだけが切り出されて依頼されたりすることも少なくありませんでした。

機械学習モデルの開発は、用いるデータやタスク設定、エッジAIへの搭載の場合は、デバイスだけでなく変換対象のネットワークなど、本来はより自由度を持って最適化した方がよりよいものができると思うのですが、先に述べたように部分的に要件が決定していることがあり、歯痒さを感じることも多かったんです。「俯瞰的にAI開発の全体像をみてみたい」という想いからatama plusへジョインしました。

ーーatama plusといえば、EdTechのスタートアップですね。そこではどのようにしてAIを活用していたのでしょうか。

atama plusでは、統計的なモデルを使って生徒の習熟度をAIで予測し、生徒にとって適切な難易度の問題を出題する、といった機能や、自然言語処理を用いて、生徒のミスの種類を判定し、ミスの種類に応じて適切なアクションを提案する、といった機能など、様々なアルゴリズムの開発に携わりました。

これは入社して学んだことですが、事業会社、特にスタートアップでは、まず機能の価値検証を迅速に行うことが求められます。個々の機能の精度を高めるよりも、価値検証に必要な最低限の精度でいかに高速に機能をデリバーするかを考える日々は、とても刺激的でした。この機能はルールベースで十分、この機能は統計的なモデル、MLを使うべき、といった判断を日々行うことを通して、技術としての深さとそれが提供する価値とのバランス感覚を養うことができたと思っています。

ーー世界的な生成AIの台頭によって、AI関連の会社がひしめきあっています。その中で、なぜチューリングに入社しようと思ったのか教えてください。

理由としては3つあって、1つめが技術的にチャレンジングで面白そうだと感じたこと。AI領域と自動運転領域の人たちが創業した会社です。エンジニアにとっても面白そう。

2つめが働く人の雰囲気ですね。塩塚さんや棚橋さんとランチに行き、みんな楽しそうに目をキラキラさせていたのが印象的でした。まだまだ小さいチームですが、可能性を感じました。

3つめが「自動運転」というドメインが秘める可能性です。私はペーパードライバーで自動車には縁遠い存在だったのですが、自動車は先人たちが長い間積み上げた技術の集大成とも呼べる製品です。しかも、今は自動運転や電気自動車という切り口でも技術革新が起こっています。

ソフトウェアエンジニアの存在が不可欠。活躍できる機会は大いにある

ーーチューリングで、ソフトウェアエンジニアリングやアルゴリズム実装能力が求められている理由について教えてください。

これについては、図で説明をした方がわかりやすいかもしれません。下記は、​​Hidden Technical Debt in Machine Learning Systemsの論文で掲載された有名な図になります。

世間一般的には、機械学習としてはモデルの開発のことをよく指しますが、それはこの黒い部分なんですね。でも実際にはその周辺領域、つまり、ConfigurationやData Collection、Data Verificationなどが不可欠で、これらの領域の大半でソフトウェアエンジニアリングの技術が必要になります。だからこそ、チューリングではソフトウェアエンジニアが重宝されますし、採用活動・リファラル活動も積極的に行っています。

ーーMLといっても、本質的に求められるのはソフトウェアの実装になる、と。

そうですね。僕はMLというのはソフトウェアの数あるドメインのうちの1つだと思っています。MLというドメインを、ソフトウェアとして設計し実装していくのは楽しい作業ですね。

また、ソフトウェアエンジニアリングの技術によって、機械学習のモデル開発は圧倒的に加速できると思っています。完全自動運転AIの実現を目指すチューリングでも、ソフトウェアエンジニアが活躍できる機会は大いにあると思います。

ーー当社は、MLエンジニアが多くソフトウェアエンジニアが少ないです。それがゆえに生じている課題はありますか?

社内向けツールの開発を行うリソースが不足している点ですね。今、車両から収集したデータのバリデーションツールを開発中で、これからさらにデータのキュレーションツールを開発予定です。MLエンジニアが触れる社内向けツールの開発には、やはりソフトウェアエンジニアの力が欠かせません。

ソフトウェアエンジニアの面白みや重要性って、実際に開発したツールが使われて、かつそれをメンテナンスして中長期的に運用するところにあると個人的に考えています。

だからこそ、僕らが今開発しているツールは、MLエンジニアにとって欠かせないもので、SaaS開発に通ずる部分があると思っていますね。

ーーそう考えると、ソフトウェアエンジニアには十分活躍の機会がありそうですね。

※チューリング データ収集者車両の画像

そうですね。今後取り扱うデータ量が増えてMLエンジニアも増えれば、社内向けツールの品質向上や機能改善なども必要になるので、活躍できる場面は広がるでしょう。

また、もう1つ課題としてあるのが日々蓄積されている膨大なデータの利活用です。そういう意味では、データエンジニアの方にも来てもらえるとうれしいです。現在、データに関する作業だけでも、パイプラインの構築、ラベリング、メタデータの付与、分析環境の構築、データキュレーションなど、様々なものがあります。そして入社して驚いたのがチューリングが扱うデータ量ですね。動画データということもあり、その容量は1日およそ3~5TB(テラバイト)に達します。

理想をいえば、ビッグデータを扱った経験のあるソフトウェアエンジニアが来てくれると良いですね。ソフトウェアエンジニアは、普段から、RDB、KVS、DWHなど、さまざまなデータベースに触れている方が多いです。「どうデータをマネージすべきか」という知識もお持ちだと思うので、そういう人にジョインしてもらえると心強いですね。

ーー安本さんにとって、チューリングで働く魅力はどこにあると思いますか?

2つあって、1つがチャレンジングな課題に立ち向かえること。私にとってはチューリングで一番面白い部分で魅力だと感じています。完全自動運転の社会を実現するために、一体どのくらい何を頑張れば良いのかわからない。でも、本当に未踏だから圧倒的な余白があって楽しい。途方もないロマンや夢を追いかけられることに、やりがいやよろこびを感じられる人には魅力的な環境だと思いますね。

もう1つが「いいやつになろう」というバリューのとおり、チューリングには良い人・楽しい人が多いこと。スタートアップは少数の組織なので、人間関係は非常に大切です。

ーー最後に、チューリングに入社を検討している方にメッセージがあればお願いします!

今ソフトウェアエンジニアといえば、webやスマートフォン向けのアプリを開発する機会が圧倒的に多い状況ですが、我々のような完全自動運転の実現に挑戦する会社でも活躍できる機会が大いにあります。

また、ソフトウェアエンジニアは経験を重ねていくと、技術的に全く分からない領域というのはかなり減ってくると思うんですよね。特に、シニアクラスのエンジニアはどこかでこの感情を持ったことがあるんじゃないかと思っていて。

今は入社して1ヶ月が経ちますが、ECEF座標系や点群(pcd)ファイルの処理など、分からないことが多すぎて久しぶりに圧倒されています。でもそこが楽しい(笑)

手探りで正解を見出していくことにやりがいや面白さを感じられる人にはぜひ来てほしいし、一緒に働きたいなと思いますね!

HR立石の編集後記vol.10

大企業、スタートアップのCTO、テック企業のEngineering Managerなどさまざまな経験を持つ安本さん。多くの質問に対して丁寧に、かつ示唆のある回答をしてくれ、非常に学びあるインタビューでした。安本さんが入社してEnd-to-End自動運転開発のスピードやチームの安定感が増したと思っていたのですが、その背景を理解できた時間だったと感じています。安本さんと話してみたい方は、ぜひオフィス見学やオープンオフィスに遊びに来てください。

ライター:俵谷

Turingの中をのぞいてみたい方は、ぜひイベントに参加ください!こちらをクリック