Développeur Logiciel Embarqué et Outils de terrain

Fondée en 1998, Octasic est une société privée dont le siège social est situé à Montréal au Canada, avec des installations de Recherche et Développement au Canada et en Inde, ainsi qu'un réseau mondial de soutien aux ventes. Octasic est l'un des principaux fournisseurs de SoC (System on Chip), de logiciels et de plates-formes matérielles et logicielles intégrées pour les marchés mondiaux du sans fil et de passerelles multimédia. Nos plates-formes matérielles et logicielles sont à la base des systèmes sans fil de nouvelles générations destinés aux forces de Défense, aux Services de Police et aux agences de Sécurité Nationale.

 

On choisit Octasic pour :

  • Un milieu de travail à la fine pointe de la technologie, en contact avec les experts du domaine et ce dans une entreprise en croissance;
  • Des conditions de travail compétitives (salaires, avantages sociaux, une semaine payée entre Noël et le Jour de l’An, rabais d’abonnement au gym, programme d’achat d’action, programme de remboursement du transport collectif, douches sur place, collations et breuvages gratuits);
  • Assurances complètes (médicales, dentaires et télémédecine);
  • Une atmosphère de travail conviviale et collaborative avec plusieurs activités sociales tout au long de l’année;
  • Travailler au sein d’une entreprise impliquée dans sa communauté (levées de fonds pour Le Phare Enfants et Familles);
  • La proximité avec les différents services de transport en commun (secteur Angus, à dix minutes à pieds du métro Préfontaine).

À propos du poste :

Nous recherchons un ingénieur logiciel C++ doté d’un esprit orienté systèmes pour prendre en charge la conception, le développement et la maintenance d’outils internes utilisés pour les tests RF, la surveillance système en temps réel et l’analyse des données à travers notre portefeuille de produits.


Vous travaillerez à l’intersection des protocoles de communication embarqués et des tests de systèmes RF en développant 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 à travers les gammes 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:

  • Des développeurs logiciels;
  • Des ingénieurs matériel et RF;
  • Des ingénieurs en tests système et terrain;
  • Des équipes produit.

Responsabilités :

Développement d’outils et architecture:

  • Concevoir, développer et maintenir le moteur principal des outils et les modules principalement en C++ et PY, en suivant des standards de code propres et maintenables;
  • Construire et maintenir des couches de communication TCP socket et client/serveur HTTP en C++ afin d’interagir avec des sous-systèmes embarqués et des services backend;
  • Développer des interfaces C++ pour contrôler et interroger des instruments de laboratoire RF externes (wattmètres, générateurs de signaux, analyseurs de spectre) via des protocoles standards de contrôle d’instruments;
  • Rédiger des scripts Python pour soutenir l’automatisation, la logique d’intégration et le prototypage rapide lorsque pertinent — Python complète le C++ sans le remplacer comme principal langage de développement.

Tests en mode RF:

  • Implémenter et soutenir les fonctionnalités de tests en mode RF, notamment les tests de sensibilité du récepteur, la génération de signaux de modèles de test et les tests de formes d’onde;
  • Étendre le support des outils pour les tests de conformité en transmission/réception et l’intégration d’API REST.

Surveillance en temps réel et tableaux de bord:

  • Développer et maintenir un système de surveillance, d’analyse et de gestion des données pour les produits Octasic, soutenu par un FW C++ et PY fournissant l’état du système en temps réel;
  • Construire des pipelines d’analyse de captures de paquets en temps réel pour la surveillance en direct sur le terrain;
  • Soutenir 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 afin de soutenir l’analyse de performance, les rapports KPI, le dépannage et la validation de nos produits de communication sans fil;
  • Soutenir 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 balayage, taux d’enregistrement).

Intégration de pipelines de données et d’analytique:

  • Intégrer les fonctionnalités des outils à une plateforme de données utilisant une architecture de courtier de messages, du stockage en base de données relationnelle et de la visualisation par tableaux de bord;
  • Soutenir les extensions de pipelines de données : géolocalisation, positionnement et collecte périodique de télémétrie;
  • Contribuer à la performance et à la fiabilité des pipelines : multithreading, gestion des erreurs, versionnement des schémas.

Qualifications :

  • Baccalauréat 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 — il s’agit du langage principal du rôle; les candidats doivent être à l’aise d’écrire du code C++ de qualité production;
  • Expérience avec la programmation TCP socket et la communication client/serveur HTTP pour l’intégration matériel-logiciel;
  • Familiarité avec les concepts de tests RF ou le contrôle d’instruments de laboratoire (générateurs de signaux, analyseurs de spectre, wattmètres);
  • Expérience pratique avec la capture de paquets et l’analyse réseau (Wireshark ou équivalent);
  • Expérience avec Git, les environnements Linux et les flux de développement collaboratif;
    Solides compétences en débogage et en analyse des causes racines dans des systèmes intégrés matériel/logiciel.

Atouts:

  • Expérience avec des applications C++ multithreadé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 formes d’onde, contrôle de puissance, prédistorsion;
  • Expérience en ingénierie des données : courtiers de messages (MQTT, Kafka), pipelines ETL, conception de bases de données relationnelles (PostgreSQL), outils de tableaux de bord (Grafana, Prometheus);
  • Familiarité avec pytest et Playwright pour les frameworks d’automatisation des tests;
  • Expérience avec la conception et l’intégration d’API REST;
  • Expérience dans des systèmes de communication critiques, de défense ou aérospatiaux;
  • Familiarité avec les piles télécom embarquées et les logiciels embarqués en temps réel.


Engineering / Ingénierie

Hybrid (Montréal, QC, CA)

Share on:

Terms of servicePrivacyCookiesPowered by Rippling