c. 組込みエンジニア(アプリ、ミドルウェア、ファームウェア) の求人一覧 - Turing株式会社
3013_ロボティクス・ソフトウェアエンジニア / Robotics Software Engineer(自動運転開発)
◆本求人は、機械学習・自動運転・コンピュータビジョンのいずれかの領域で経験のあるエンジニアや、大規模なMLOps・データ基盤開発に取り組んできたソフトウェアエンジニア、あるいはロボティクス領域でMLやソフトウェアエンジニアリングに取り組んできた方を対象としています◆
チューリングのミッションは、完全自動運転レベルの自動運転システムの開発を行うことです。
自動運転システム全体ではさまざまなモジュールがあり、それらがPub/Sub間通信でやりとりしています。依存関係はできる限りシンプルに開発しているものの、自動運転モデル開発やモデル精度向上のためにはさまざまなソフトウェアイシューを解決する必要があります。
今回の求人では、さまざまなレイヤーのソフトウェアイシューに対応できる方を募集しています。MLモデルの学習パイプライン構築や、モデルの量子化・最適化、センサーデータキャリブレーション、車両運動制御実装などさまざまなレイヤーで開発イシューがあります。
※入社時は自身の強みを発揮して特定のイシューで活躍しつつ、さまざまなレイヤーに貢献範囲を広げていくことを期待しています
【業務内容】
※下記のうちの全てを担当するわけではなく、自身の強みを活かしたドメインで開発を進めつつ、他領域にも染み出しながら開発を進めていただきます
・データキャリブレーションや異なるセンサデバイス間の座標変換
・データセットの作成・改善
・論文や既存実装の調査・再現・実装
・自社データセットを利用した既存実装の評価
・モデル量子化・最適化
・実車でのモデル評価・実験管理
・車両運動制御システムやアルゴリズムの設計・実装
・実車両を用いた制御性能の評価・チューニング
【自分のつくったシステム・MLモデルを実車で試して改善していく】
「データセットやモデルを作る→走行実験→実験ログ解析実験→モデルの管理」という流れで自動運転AIを進化させていきます。自身のつくったモデルを五感で捉えながら改善サイクルを回していきます。机上だけでなく、現実世界からのフィードバックを開発に活かしてください。
【こんな人が活躍しています】
- 自動運転領域で開発経験のあるソフトウェアエンジニア
- 自動車会社でソフトウェア/制御開発をしてきたエンジニア
- システム開発会社でのソフトウェアエンジニア/制御エンジニア
- 広告系メガベンチャー出身の機械学習/ソフトウェアエンジニア
3032_ソフトウェアエンジニア / Software Engineer(OS・組み込みシステム、ファームウェア開発)
◆本求人は、Linux OSやカーネル、デバイスドライバなどのファームウェア開発経験を持つ方を対象としています◆
チューリングは完全自動運転の実現を目指しています。
所属するEdge Computerチームは自動運転AIモデル開発チーム(E2Eチーム)と車両チームの中間に位置しており、自動運転システムを支える各種ハードウェアの開発や試験などを行っています。
チューリングの自動運転技術で安定して車両を動かすために、AI技術などのソフトウェアレイヤーの要求を適切に理解し、各種ハードウェアの開発および評価を担います。さまざまな機能を開発することはもちろんのこと、信頼性や保守性といった面でも高い性能を達成することがミッションとなります。
【具体的な仕事内容】
本ポジションのエンジニアが開発するのは、自動運転向けECUのOSやカーネル、アプリケーション、センサーなどを対象としたファームウェアです。
◆車両に近い領域や各センサに関わる領域においては、以下の業務がメインとなります。
・ベアメタルもしくはRTOSによるファームウェアの開発
・自社開発回路やセンサ類の仕様に基づいたソフトウェアの実装
◆自動運転システムに近い領域では、以下の業務がメインとなります。
・自動運転向けに最適化されたLinux OSの開発
・各種周辺機器のLinuxデバイスドライバの開発
・実車両を用いたデバッグや挙動の解析
3034_ソフトウェアエンジニア / Software Engineer(ミドルウェア、車載システム開発)
◆本求人は、Linux環境でのソフトウェア・アプリケーション開発を経験している方やLinuxが得意(好き)な方を対象としています◆
チューリングは完全自動運転の実現を目指しているディープテックスタートアップです。
所属するチームは自動運転AIモデル開発チーム(E2Eチーム)とエッジデバイスチームの中間に位置しており、自動運転システムに関わるソフトウェアのうち、E2Eチームが担当しているAI以外の範囲すべてを行っています。
具体的には、独自の自動運転システムのソフトウェア開発や自社開発モデル用のデータ収集車両の開発・保守などです。
チューリングの自動運転技術で安定して車両を動かすために、AI技術やUIなどのソフトウェアレイヤーの要求を適切に理解し、各種ハードウェアのコントロールを担います。さまざまな機能を開発することはもちろんのこと、信頼性や保守性といった面でも高い性能を達成することがミッションとなります。
【具体的な業務内容】
・組込みのSoC上で構築されたシステムのボトルネック特定やパフォーマンス改善
・自動運転車で使用するセンサ制御ソフトの開発
・Linux上で動く自動運転アプリケーションや関連するミドルウェアの開発
・他開発チームや運用チームと連携した改善活動
など
【End-to-End自動運転AIに適した自動運転OS・ミドルウェアを作っていく】
チューリングでは国内にまだレファレンスのない独自のアプローチで自動運転AI開発を進めています。AIモデルの入力に用いるカメラや制御する車両に合わせ、それらの仕様を鑑みた開発を行う必要があります。そのため、組み込みソフトウェアやミドルウェア開発の経験がある人を求めています。
エッジデバイスの計算能力が一定規模あるため、そのうえで動くソフトウェアやアプリケーション実装の知見が求められます。下記の領域での開発経験があるとキャッチアップしやすいでしょう。
「家電」「マルチメディア」「テレビ」「パソコン」「音響」「カメラ」「楽器」「ネットワーク機器」「ゲーム」「バックエンドシステム全般」
◼︎参考になるテックブログ
チューリングの自動運転システム開発環境と、それを支える開発ツールたち
https://zenn.dev/turing_motors/articles/d76005207e2b87
TypeScriptで作る自動運転UI
https://zenn.dev/turing_motors/articles/6ad90d261be8c6
3035_ソフトウェアエンジニア / Software Engineer(車載アプリケーション開発)
◆本求人は、エッジデバイスやクラウドなど、いずれかの環境でアプリケーション開発のシニア経験をお持ちの方を対象としています◆
チューリングは完全自動運転の実現を目指しているディープテックスタートアップです。
当社の自動運転システムを中核に据えた車載アプリケーション(データ収集システムやインフォテイメント機能など)を中心に、OTA(※1)やフリート管理など車載システムを支えるクラウド/サーバーサイド連携機能まで幅広く携わっていただきます。プロジェクトやフェーズに応じてアプリケーション層を主軸に開発しつつ、必要に応じて制御ソフトウェアやミドルウェアなど低レイヤーの開発にも参画できる柔軟な環境です。
【具体的な業務内容】
・車載計算機上で動くLinuxのアプリケーションの開発
・Webアプリケーションの開発
・データ収集システムの開発・運用
・インフォテイメント機能の設計・開発
・OTA更新基盤の設計・開発
・フリート管理プラットフォームの設計・開発
・パフォーマンスチューニングおよび品質向上施策の実施
※1:OTA(Over-the-Air):ソフトウェアを無線通信でアップデートする技術のこと