<完全自動運転の実現を目指しているディープテックスタートアップ>次世代データ基盤の構築を担うソフトウェアエンジニアを募集
- データエンジニア
- 800万円 〜 1,500万円
最終更新日:
仕事内容
チューリングでは、車載カメラの映像を入力に車の制御を行う「End-to-End の自動運転MLモデル」の開発を行っています。
モデルの開発には Data-Centric AI と呼ばれるアプロー
開発環境
言語:Python
ライブラリ:PyTorch、OpenCV、MMDetection、ONNX
ミドルウェア:Slurm
Cloud:AWS、GCP
プラットフォーム:Jetson、Linux
求めるスキル
必須スキル/経験
・チューリングの理念への共感
・Python などの言語を使用した5年以上の開発経験
・ペタバイトクラスの Data Lake, Lakehouse の開発、運用経験
・Spark 等を用いた分散処理やデータエンジニアリングの実践経験
・クラウドなどを活用した DevOps の実践経験
歓迎スキル/経験
・動画や点群データなどの非構造化データを扱った経験
・機械学習の経験
・分散システムの開発、運用経験
・AWS CDK や Terraform を用いた IaC の実践経験
・Platform Engineering の実践経験
求める人物像
・世界的企業をつくる強い気概のある方
・自走力がありなんでも積極的に取り組める方
・常に謙虚で、相手目線を忘れない人間性
・急激な事業、組織の成長に伴う様々な変化を楽しめる柔軟性
・成長に対して前向きなスタンス
・困難も楽しみながら乗り越えられるタフさ
仕事の魅力
【SaaSやサービス開発とは異なる仕事の面白さ】
MLエンジニアがモデル開発を行うためにはML以外のソフトウェア実装がかなり必要です。例えばデータの前処理の自動化やそのプロセスの可視化サービス、データの偏りや状態の可視化ツールなどが必要でこれらはMachine learningよりもソフトウェア開発の知見が求められます。
われわれのデータ基盤には毎日数十TB近くのデータがアップロードされており、それらのデータを適切に処理し、管理しながら開発プロセスを回していく必要があります。膨大なデータ量を適切に捌き、MLOpsがしっかりと回るための仕組みや開発が非常に重要なのです。
強いMLエンジニアとソフトウェアが組むことで自動運転は実現していきます。これまでのソフトウェア開発経験を活かして人類のグランドチャレンジに一緒に挑みましょう。
【この仕事の特徴・面白さ】
大きく3つあります。
1.データ量が大きい
2.非構造データを扱うのが難しい(し、やりがいがある)
3.自動運転ML開発向けのAPIやツールが少ないのでゼロベースで課題解決できる
1.について
チューリングでは、1日に数TB〜数十TBのデータ量がアップロードされます。このデータを「きれいな状態で・ただしく」データベースに格納していかないといけません。
データ量が多くなればなるほど、データの整理や保存方法、検索方法など気にするポイントが増えますし、データを扱いやすくするための基盤づくりや仕組みづくりが大事になってきます。
2.について
チューリングでは、8つのカメラから取得した映像データ、Lidarのセンサーデータ、GNSSの位置情報データなどを組み合わせています。属性の異なるこれらのデータをひとまとめてにしてきれいにするのは大変です。
また、チューリングでは1つの大きなAIモデルの中に複数のモジュールやサブタスクが無数にあります。モジュールやサブタスクによっては必要なデータの量や形式が異なります。そのため、それぞれのモジュールやサブタスクの開発事情を考慮して非構造データを整理していく必要があります。
3.APIやツールが少ない
自動運転ML開発向けのツールやサービスは少ないです。そのため、非構造データを自分たちでデータを適切に前処理・可視化・状態確認・データ分布整理をするためのツールを開発していく必要があります。
この開発のプロセスにおいてはMLエンジニアの業務フローを可視化して、彼らの業務プロセスにおいて効率化できる部分を探したり、ボトムネックを特定して課題解決するなどの動きが必要になってきます。