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