Joby Aviation

Ingénieur Autonomie Embarquée

PythonSQLC++Rust
Traduction automatique. Consultez l’original.

Présentation de l'entreprise

Joby Advanced Development conçoit, développe et teste en vol des aéronefs novateurs en adoptant une approche d'autonomie axée sur le logiciel. Nous construisons et déployons des systèmes d'autonomie, de perception, de planification et de radar sur des aéronefs conventionnels, électriques et à hydrogène, dans des configurations CTOL et VTOL.

Aperçu

Le groupe Advanced Development de Joby recherche un ingénieur pour prendre en charge et développer notre capacité de test en boucle matérielle (hardware-in-the-loop) et d'automatisation des tests pour des aéronefs et des systèmes d'automatisation de vol novateurs. Ce rôle est responsable de la fidélité, de la couverture et de la fiabilité du pipeline qui nous permet de tester toutes les nouvelles modifications de notre système de calcul redondant avant leur déploiement. Vous travaillerez en étroite collaboration avec l'équipe logicielle principale, les ingénieurs en contrôle de vol, avionique et d'essais en vol qui dépendent de cette infrastructure. Nous recherchons une personne qui s'épanouit dans des environnements dynamiques, qui assume l'entière responsabilité de l'infrastructure dont dépend l'ensemble de l'organisation des logiciels de vol et qui obtient constamment des résultats à fort impact.

Responsabilités

  1. Développer et maintenir l'infrastructure de test, les frameworks d'injection de fautes et les mécanismes d'annonce requis pour les tests en boucle.
  1. Développer l'infrastructure de simulation logicielle en boucle, matérielle en boucle et avion en boucle : exécuteur de scénarios en boucle, périphériques simulés et configuration par mode.
  1. Mettre en service, déboguer et maintenir les bancs de test HITL physiques, et maintenir le matériel et la configuration des bancs de test alignés sur les avions réels qu'ils représentent.
  1. Construire et étendre les pipelines d'intégration continue (CI) matérielle qui déploient le logiciel de vol sur le matériel des bancs de test et exécutent automatiquement des vérifications de succès/échec, de timing et de journaux de plateforme, avec les résultats stockés pour le suivi des tendances.
  1. Écrire et maintenir des tests de scénarios et unitaires en C++ et Python basés sur Bazel, y compris des tests basés sur les propriétés, qui exercent le logiciel de vol face à des conditions réalistes de capteurs, d'actionneurs, de timing et de transport réseau.
  1. Intégrer de nouveaux capteurs et actionneurs dans les environnements simulés et matériels en boucle via leurs bus natifs (CAN, UART/RS-485, I2C, SPI, ARINC 429, Ethernet).
  1. Analyser les échecs des bancs de test et de la CI : séparer les écarts de fidélité de simulation des défauts matériels des bancs de test et des bugs réels du logiciel de vol, et les transmettre au bon propriétaire avec un cas reproductible.
  1. Travailler avec les ingénieurs d'essais en vol et de contrôle pour convertir le comportement de vol observé en scénarios répétables en boucle, fermant ainsi la boucle entre les données de vol et la validation avant le vol.

Prérequis

  1. Diplôme universitaire en informatique, ingénierie informatique, ingénierie électrique, mécatronique ou un domaine similaire ; ou un solide portfolio de logiciels embarqués / d'automatisation de tests et plus de 5 ans d'expérience professionnelle pertinente.
  1. Solides compétences en C++ et Python, et maîtrise de Git.
  1. Expérience dans la construction ou la maintenance de systèmes matériels en boucle ou d'infrastructures de test automatisées comparables qui exécutent du matériel embarqué réel en CI.
  1. Connaissance pratique des bus de communication embarqués (CAN, UART/RS-485, I2C, SPI ou similaire) au niveau nécessaire pour les déboguer avec un oscilloscope ou un analyseur logique.
  1. Compréhension des concepts de logiciels temps réel et critiques pour la sécurité : exécution déterministe à fréquence fixe, budgets de temps, redondance et ce qui rend un test d'un tel système digne de confiance.
  1. Expérience avec un système de build hermétique (Bazel ou équivalent) et un système CI (Buildkite, Jenkins, GitHub Actions ou équivalent).
  1. Expérience avec Linux, y compris le déploiement et le débogage à distance sur des cibles embarquées Linux.
  1. Passion pour une architecture logicielle orientée objet propre, durable et lisible. Pas seulement du code fonctionnel, mais du code conçu pour survivre des années d'extension par d'autres ingénieurs.
  1. Ce poste doit satisfaire aux exigences de conformité des contrôles à l'exportation des États-Unis. Par conséquent, un candidat doit être qualifié en tant que « personne américaine » tel que défini par le 22 C.F.R. § 120.15. Une « personne américaine » comprend les citoyens américains, les résidents permanents légaux, les réfugiés ou les demandeurs d'asile.

Souhaitable

  1. Expérience en tests basés sur les propriétés.
  1. Expérience avec des middlewares de type publish/subscribe ou bus de messages pour des logiciels embarqués distribués (DDS, ROS 2, ou un transport personnalisé).
  1. Expérience pratique avec des servomoteurs, des contrôleurs de moteur ou d'autres actionneurs sur des bus série ou CAN.
  1. Expérience dans la conception ou la révision de matériel électrique simple (cartes de circuits imprimés, faisceaux de câbles, cartes d'interface) pour supporter les bancs de test.
  1. Expérience dans l'analyse de données de journaux de vol ou de test à grande échelle (SQL, Databricks ou similaire) pour trouver des régressions ou dériver de nouveaux cas de test.
  1. Expérience en Rust.
  1. Expérience dans l'industrie aérospatiale, automobile ou robotique critique pour la sécurité.

La rémunération chez Joby est une combinaison de salaire de base et d'actions restreintes (RSU). Le salaire de base cible pour ce poste est de 136 100 $ à 202 600 $/an.

Le package de rémunération sera déterminé en fonction des connaissances, des compétences et de l'expérience liées au poste.

Joby propose également un ensemble complet d'avantages sociaux, comprenant des congés payés, des avantages en matière de soins de santé, un plan 401(k) avec une contrepartie de l'entreprise, un plan d'achat d'actions pour les employés (ESPP), une couverture d'invalidité à court et à long terme, une assurance-vie, et plus encore.

Informations supplémentaires

Joby Aviation est un employeur garantissant l'égalité des chances.

Plus d’opportunités avec un seul profil

Vous souhaitez accéder à plus de postes sans répéter tout le processus ? Créez votre profil pour être trouvé par les entreprises utilisant Nort.

Créer mon profil

Ton prochain jobest déjà à ta recherche.

Nort

Plateforme de recrutement inversé pour développeurs

Réseaux sociauxInstagramLinkedInTwitter