Cardata
Octasic
Développeur Logiciels Embarqués et Outils Terrain
À propos du poste
Nous recherchons un ingénieur logiciel C++ avec une mentalité système pour prendre en charge la conception, le développement et la maintenance des outils internes utilisés pour les tests de mode RF, la surveillance des systèmes en temps réel et l'analyse des journaux sur notre portefeuille de produits.
Vous travaillerez à l'intersection des protocoles de communication embarqués et des tests de systèmes RF — en créant des outils sur lesquels les équipes produit s'appuient quotidiennement pour évaluer et valider la qualité de nos produits. Alors que nos outils continuent de s'étendre sur les lignes de produits et les déploiements sur le terrain, vous jouerez un rôle central pour les rendre évolutifs, maintenables et adaptables à chaque version.
Vous collaborerez étroitement avec :
- Les développeurs de logiciels ;
- Les ingénieurs matériel et RF ;
- Les équipes de test système et terrain.
Vos missions
Développement et Architecture d'Outils
- Concevoir, développer et maintenir le moteur d'outillage principal et ses modules, principalement en C++ et PY, en suivant des normes de codage claires et maintenables ;
- Construire et maintenir des couches de communication client/serveur TCP socket et HTTP en C++ pour interagir avec les sous-systèmes embarqués et les services backend ;
- Développer des interfaces C++ pour contrôler et interroger des instruments RF externes (wattmètres, générateurs de signaux, analyseurs de spectre) via des protocoles de contrôle d'instruments standard ;
- Écrire des scripts Python pour supporter l'automatisation, la logique de connexion et le prototypage rapide lorsque cela est approprié — Python complète mais ne remplace pas C++ comme langage de développement principal.
Tests de Modes RF
- Implémenter et supporter les fonctionnalités de test de mode RF, y compris les tests de sensibilité du récepteur, la génération de signaux de modèles de test et les tests de forme d'onde ;
- Étendre le support des outils pour les tests de conformité d'émission/réception et l'intégration de l'interface REST API.
Surveillance en Temps Réel et Tableaux de Bord
- Développer et maintenir un système de surveillance, d'analyse et de gestion de données pour les produits Octasic, soutenu par un FW C++ et PY servant l'état du système en temps réel ;
- Construire des pipelines d'analyse de capture de paquets en temps réel pour la surveillance sur le terrain en direct ;
- Supporter l'évolution continue de l'analyse de données et de la surveillance, en agrégeant la télémétrie et les données système pour supporter l'analyse de performance, le reporting des KPI, le dépannage et la validation de nos produits de communication sans fil ;
- Supporter les flux de travail d'analyse de journaux hors ligne et la génération automatisée de rapports (métriques d'appels, métriques de scan, taux d'enregistrement).
Intégration de Pipelines de Données et d'Analyse
- Intégrer les fonctionnalités des outils avec une plateforme de données utilisant une architecture de broker de messages, un stockage en base de données relationnelle et des tableaux de bord visuels ;
- Supporter les extensions de pipeline de données : géolocalisation, positionnement et collecte périodique de télémétrie ;
- Contribuer à la performance et à la fiabilité du pipeline : threading, gestion des erreurs, versioning de schéma.
Qualifications requises
- Diplôme de Bachelor en Génie Logiciel, Génie Informatique, Génie Électrique, Informatique, ou expérience pratique équivalente ;
- Solide expérience pratique en développement C++ et Python — c'est le langage principal du poste ; les candidats doivent être à l'aise pour écrire du code C++ de qualité production ;
- Expérience avec la programmation de sockets TCP et la communication client/serveur HTTP pour l'intégration matériel/logiciel ;
- Connaissance des concepts de test RF ou du contrôle d'instruments de laboratoire (générateurs de signaux, analyseurs de spectre, wattmètres) ;
- Expérience pratique de la capture de paquets et de l'analyse réseau (Wireshark ou équivalent) ;
- Expérience avec Git, les environnements Linux, et les flux de travail de développement collaboratif ;
- Solides compétences en débogage et en analyse des causes profondes dans des systèmes matériels/logiciels intégrés.
Atouts
- Expérience avec les applications C++ multi-threadées — programmation concurrente, sécurité des threads et optimisation des performances ;
- Expérience avec les concepts de couche PHY LTE/5G — sensibilité du récepteur, modèles de test, tests de forme d'onde, contrôle de puissance, pré-distorsion ;
- Expérience en ingénierie de données : brokers de messages (MQTT, Kafka), pipelines ETL, conception de bases de données relationnelles (PostgreSQL), outils de tableau de bord (Grafana, Prometheus) ;
- Connaissance de pytest et Playwright pour les frameworks d'automatisation de tests ;
- Expérience avec la conception et l'intégration d'interfaces REST API ;
- Expérience dans les systèmes de communication critiques, de défense ou aérospatiaux ;
- Connaissance des piles de télécommunication embarquées et des logiciels embarqués temps réel.
