Brain Corp est une entreprise d'IA basée à San Diego, en Californie, aux États-Unis, qui crée une technologie de base transformatrice pour l'industrie de la robotique. Notre objectif est de créer une technologie autonome qui aide le monde réel à mieux fonctionner. Les solutions robotiques et d'IA de Brain aident les détaillants à s'assurer que le bon produit se trouve sur le bon rayon, au bon prix, dans un environnement propre. Grâce à la plateforme robotique BrainOS®, qui alimente la plus grande flotte mondiale de robots mobiles autonomes (AMR) en service dans les espaces publics commerciaux, Brain Corp propose des solutions automatisées intelligentes et efficaces pour le nettoyage des sols commerciaux et la gestion des stocks, permettant ainsi aux organisations et à leurs employés d'en faire plus. Brain Corp équipe actuellement plus de 30 000 AMR, ce qui représente la plus grande flotte de ce type au monde. Brain Corp est financée par le SoftBank Vision Fund, Clearbridge et Qualcomm Ventures.
Aperçu du poste :
En tant que membre de l'équipe d'ingénierie logicielle, l'ingénieur logiciel II jouera un rôle crucial dans l'amélioration du cycle de vie du développement de nos robots. Ce poste vise à faire passer nos systèmes de construction et notre infrastructure de test au niveau supérieur, afin de soutenir le développement et le déploiement efficaces de solutions robotiques. En tant que membre essentiel de notre division logicielle, l'ingénieur logiciel II travaillera avec notre équipe d'ingénieurs et de scientifiques de classe mondiale pour construire une plateforme pour la prochaine génération de machines intelligentes. Son expérience sera déterminante pour faire avancer notre mission : des robots sûrs, sécurisés et fiables partout.
Fonctions essentielles:
- Faire évoluer nos systèmes de construction, en améliorant les performances et l'évolutivité pour soutenir l'avenir de nos projets de pointe.
- Révolutionner nos cadres de test, en permettant des tests incrémentaux et en garantissant une couverture et une fiabilité élevées pour nos systèmes robotiques avancés.
- Travailler en partenariat avec des ingénieurs talentueux et des experts en assurance qualité pour intégrer de manière transparente des systèmes de construction et de test dans notre pipeline de développement dynamique.
- Mener la charge en optimisant nos processus d'automatisation des tests, en réduisant les temps de vérification des RP et en élevant la qualité du code à de nouveaux sommets.
- Concevoir, mettre en œuvre et gérer des environnements conteneurisés, en veillant à une utilisation optimale des ressources et à des flux de déploiement fluides.
- Diriger la mise à jour des bibliothèques et dépendances essentielles, notamment Python, OpenCV et CUDA, afin d'assurer une compatibilité et des performances sans faille.
- Être à la pointe de l'innovation, en soutenant le prototypage rapide pour donner vie à des idées visionnaires.
- Adopter une culture de l'apprentissage et de l'amélioration continus, en recherchant toujours de nouveaux défis et de nouvelles opportunités de développement
Exigences en matière de formation et/ou d'expérience professionnelle:
- Licence en informatique, en génie logiciel ou dans un domaine connexe.
- 1 à 3 ans d'expérience confirmée dans le développement de logiciels complexes basés sur des fonctions.
Connaissances, compétences, aptitudes et autres caractéristiques requises :
- Expérience de travail avec des systèmes de construction (cmake, make, bazel, ninja...)
- Expérience des frameworks de test en C++ et Python (GTest, catch2, pytest...)
- Expérience dans la création de paquets Ubuntu debian
- Expérience de l'automatisation des tests pour les logiciels embarqués
- Maîtrise de Python
- Excellentes compétences en matière de résolution de problèmes, souci du détail et capacité à travailler efficacement dans un environnement d'équipe collaboratif.
- Solides compétences en matière de communication, tant écrite qu'orale, avec la capacité de transmettre des concepts techniques complexes aux membres de l'équipe et aux parties prenantes.
Les choses qui font la différence :
- Maîtrise en informatique, en génie logiciel ou dans un domaine connexe.
- Familiarité avec Yocto ou buildroot
- Expérience en robotique mobile ou IoT
- Expérience du développement AGILE et de l'intégration continue
- Expérience préalable de l'expédition et de l'assistance de produits logiciels complexes
- Expérience des outils Github, JIRA et Jenkins pour le contrôle des sources, le suivi et les tests.
Exigences physiques:
Les exigences physiques décrites ici sont représentatives de celles auxquelles un employé doit satisfaire pour mener à bien les fonctions essentielles de ce poste. Des aménagements raisonnables peuvent être apportés pour permettre aux personnes handicapées de remplir les fonctions essentielles. Les fonctions essentielles peuvent nécessiter le maintien de la condition physique nécessaire pour s'asseoir, marcher ou se tenir debout pendant des périodes prolongées ; utiliser un ordinateur et un clavier ; utiliser les mains pour toucher et saisir ; parler et entendre à des niveaux normaux ; avoir une acuité visuelle permettant de déterminer l'exactitude, la propreté et la minutie du travail assigné ou de faire des observations générales sur les installations ou les structures ; pousser ou tirer jusqu'à 20 livres.
Environnement de travail:
Les caractéristiques de l'environnement de travail décrites ici sont représentatives de celles qu'un employé rencontre dans l'exercice des fonctions essentielles de ce poste. Le niveau de bruit dans l'environnement de travail est généralement faible à modéré. Les employés sont exposés à un environnement de bureau typique avec des ordinateurs, des imprimantes et des téléphones.
- Expérience dans le domaine des véhicules autonomes, de la robotique ou dans des domaines connexes.
- Expertise dans le développement de grands systèmes complexes en temps quasi réel
- Connaissance des systèmes de construction complexes tels que CMake et des flux d'intégration continue.
Échelle des salaires :
Le salaire prévu pour les candidats qui travailleront à San Diego, en Californie, est de 125 000 dollars.
Outre le salaire de base, notre système de rémunération globale compétitif comprend les éléments suivants
- Une prime annuelle discrétionnaire
- Options d'achat d'actions
- Plan 401(k) avec contrepartie (pas de période d'attente et acquisition immédiate des droits)
- Ensemble complet de prestations d'assurance pour les employés (et leur famille) comprenant une variété d'options de plans médicaux (y compris un HSA avec contribution de l'employeur), dentaire, vision, assurance vie et invalidité, programme d'assistance aux employés (EAP), plans de soutien juridique/identité, assurance pour animaux de compagnie.
- Accès aux comptes de dépenses flexibles (soins médicaux et soins aux personnes dépendantes)
- Des congés payés généreux, y compris des vacances flexibles, des congés de maladie payés, des congés pour le bénévolat dans la communauté, 10 jours fériés payés et une fermeture hivernale de l'entreprise.
Les avantages supplémentaires sont les suivants
- Déjeuner quotidien sur place au bureau de San Diego
- Salle de sport sur le campus avec piscine et courts de tennis dans le bureau de San Diego
- Occasions de nouer des liens avec des collègues, notamment lors de soirées jeux mensuelles, de randonnées, de défis bien-être et d'événements communautaires.
- Événements internes de formation continue
- Possibilités de partager vos propres intérêts et hobbies avec l'entreprise