Ingénieur C++ senior

Il y a 6 jours

Grenoble, Rhône-Alpes, France EN-CORE.IO Temps plein
Vous rejoignez l'équipe logicielle C++, rattaché au directeur technique, au sein d'une équipe projet qui réunit chargé d'affaires, responsable technique de projet et développeurs expérimentés. Le projet phare : un noyau de calcul, produit interne au coeur d'un système embarqué dans un véhicule. En amont, jusqu'à 2000 capteurs. En aval, des logiciels clients qui sollicitent le noyau pour leurs calculs. Entre les deux, une architecture de services indépendants sous Linux, répartie sur un cluster multicoeur de trois serveurs physiquement distincts, avec des bus Kafka pour absorber les volumes de données. Environ 100 000 lignes de code, livrées chaque mois, pour un système dont la durée de vie se compte en décennies. 1
- Faire évoluer le noyau et ses services La première version tourne chez le client et l'équipe la consolide. Vient ensuite la phase d'évolution : nouveaux services d'acquisition, communication TCP/UDP, échanges inter-services, traitement du signal, parallélisation. Vous concevez ces services dans le respect des contraintes d'interface et des principes SOLID, en arbitrant entre performance immédiate et maintenabilité sur trente ans. 2
- Porter la qualité du code dans l'équipe Vous intervenez dans les revues de code et d'architecture et faites progresser les pratiques de l'équipe. Le développement fonctionne en binôme (on ne teste pas son propre code), avec mesure de couverture et une chaîne CI/CD GitLab en place que vous ferez grandir. Sous Linux, les sujets portent sur le déploiement, le packaging et la gestion des dépendances. 3
- Du besoin client à la recette Le poste va au-delà du code. Avec les chargés d'affaires, vous participez à l'avant-vente : analyse du besoin, conception, chiffrage, offre technique. Vous accompagnez ensuite les livraisons, les recettes sur site et la formation des utilisateurs. La veille technologique et les projets R&D internes vous donnent la main pour enrichir la plateforme logicielle de l'entreprise. Ce poste s'adresse à un ingénieur qui aime les systèmes construits pour durer, qui sait entrer dans une base de code existante pour la faire avancer, et qui a envie de transmettre ce qu'il sait autant que de coder.