UI

Concepteur(trice), Logiciels / Designer, Software

Ultra I&C
Posted 2 hours ago
CanadaHybridEngineering & Development
Is this job info correct?
Company: Marconi Technologies

Marconi Technologies/Communications Business --

À Propos De Marconi

Marconi Technologies allie plus d’un siècle d’innovation en communications dans le secteur de la défense à une approche moderne axée sur la mission, centrée sur la résolution de défis opérationnels concrets.

L’entreprise conçoit et fabrique des systèmes de communications avancés à double usage couvrant l’ensemble du spectre tactique, allant des radios line-of-sight aux solutions de diffusion troposphérique beyond-line-of-sight, ainsi qu’aux systèmes de communications par satellite. Ses technologies sont déployées par l’OTAN et les forces alliées à l’échelle mondiale, soutenant des missions essentielles dans des environnements contestés et expéditionnaires.

Marconi Technologies s'engage à fournir aux opérateurs des capacités de communication résilientes et performantes qui leur permettent de bénéficier d'un avantage décisionnel lorsque les enjeux sont les plus critiques.

À Propos Du Poste

Nous recherchons un(e) concepteur(trice) de logiciels embarqués innovant(e), hautement motivé(e) et autonome pour rejoindre notre équipe d'ingénierie avancée. Dans ce rôle, vous concevrez, développerez et optimiserez des logiciels temps réel robustes qui s'interfacent directement avec des moteurs de formes d'ondes FPGA personnalisés et du matériel de traitement haute performance. En travaillant main dans la main avec nos équipes de conception FPGA, de conception électronique et d'ingénierie matérielle, vous ferez le lien entre le logiciel et l'architecture physique des cartes, garantissant une exécution transparente dans des environnements temps réel exigeants.

Responsabilités

  • Concevoir, développer, tester et maintenir des logiciels embarqués en C/C++ à haute fiabilité s'exécutant sur des systèmes d'exploitation temps réel (RTOS) ciblant des architectures SoC et microcontrôleurs avancées (par exemple, ARM Cortex, Xilinx Zynq/UltraScale+).
  • Collaborer étroitement avec les concepteurs de matériel FPGA pour définir, mettre en œuvre et valider des tables de registres, des architectures mappées en mémoire et des pipelines de données à haut débit par accès direct à la mémoire (DMA) pour le contrôle et le flux des formes d'ondes.
  • Travailler en étroite collaboration avec les ingénieurs en conception électronique et en matériel de niveau carte lors des revues de schémas, de la mise en service des cartes (board bring-up) et des sessions de débogage matériel pour valider les interfaces périphériques, résoudre les problèmes électriques de bas niveau et garantir la fiabilité du système.
  • Développer des pilotes de périphériques bas niveau robustes, des couches d'abstraction matérielle (HAL) et des piles de protocoles de communication pour interfacer les logiciels applicatifs avec les périphériques FPGA personnalisés et les composants de la carte.
  • Participer activement à l'intégration matérielle-la-boucle (HIL), au débogage en laboratoire et à la vérification du système aux côtés des équipes d'ingénierie FPGA, conception électronique, RF et systémique.
  • Optimiser les performances du système, la latence et l'utilisation des ressources à la frontière entre le matériel et le logiciel.
  • Piloter les tâches avec une forte autonomie et initiative, en résolvant des problèmes complexes multi-domaines et en proposant des solutions d'ingénierie créatives de la conception au déploiement.

Qualifications

  • Baccalauréat ou maîtrise en génie logiciel, génie informatique, génie électrique ou discipline technique connexe.
  • 5 ans et plus d'expérience professionnelle en développement de logiciels embarqués temps réel.
  • Solide maîtrise du C pour les systèmes embarqués contraints en ressources et à haute fiabilité.
  • Expérience pratique avérée avec les systèmes d'exploitation temps réel (RTOS) tels que FreeRTOS, VxWorks ou Linux embarqué.
  • Expérience démontrée en co-conception matérielle-logicielle, processeurs embarqués et plateformes SoC (par exemple, Xilinx Zynq, séries ARM Cortex-A/M).
  • Familiarité avec les architectures de bus haute vitesse et les protocoles (par exemple, AXI, SPI, I2C, PCIe, Ethernet) ainsi que les transferts de données par DMA.
  • Maîtrise des équipements de laboratoire (oscilloscopes, analyseurs logiques) et des outils de débogage (JTAG, gdb).

Pourquoi travailler chez Marconi?

  • Rémunération compétitive incluant un boni de performance discrétionnaire.
  • Horaire flexible et mode de travail hybride (télétravail et présence au bureau).
  • Possibilités d’apprentissage et de développement professionnel.
  • Assurances collectives entièrement payées par l’employeur incluant : invalidité courte et longue durée, soins médicaux, dentaires, de la vue, assurance vie, télémédecine, programme d’aide aux employés et programme de bien-être.
  • Programme d’épargne-retraite avec contribution de l’employeur.
  • Culture de travail inclusive, collaborative et axée sur l’entraide.

About Marconi

Marconi Technologies combines over a century of communications innovation in the defence sector with a modern, mission-driven approach focused on solving real-world operational challenges.

The company designs and manufactures advanced, dual-use communications systems spanning the full tactical spectrum: from line-of-sight radios to beyond-line-of-sight troposcatter; and satellite communications solutions. Its technologies are deployed by NATO and allied forces globally, supporting critical missions in contested and expeditionary environments.

Marconi Technologies is dedicated to equipping operators with resilient, high-performance communications that enable decision advantage when it matters most.

About The Role

We are seeking an innovative, highly motivated, and autonomous Embedded Software Designer to join our advanced engineering team. In this role, you will design, develop, and optimize robust real-time software that interfaces directly with custom FPGA waveform engines and high-performance processing hardware. Working hand-in-hand with our FPGA design, electronic design, and hardware engineering teams, you will bridge the gap between software and physical board-level architecture, ensuring seamless execution in demanding real-time environments.

Responsibilities

  • Design, develop, test, and maintain high-reliability C/C++ embedded software running on Real-Time Operating Systems (RTOS) targeting advanced SoC and microcontroller architectures (e.g., ARM Cortex, Xilinx Zynq/UltraScale+).
  • Collaborate closely with FPGA designers to define, implement, and validate register-interface maps, memory-mapped architectures, and high-throughput Direct Memory Access (DMA) data pipelines for waveform control and streaming.
  • Partner closely with electronic design and board-level hardware engineers during schematic reviews, board bring-up, and hardware debugging sessions to validate peripheral interfaces, troubleshoot low-level electrical issues, and ensure system reliability.
  • Develop robust low-level device drivers, hardware abstraction layers (HAL), and communication protocol stacks to interface application software with custom FPGA peripherals and board components.
  • Participate actively in hardware-in-the-loop (HIL) integration, lab debugging, and system verification alongside FPGA, electronic design, RF, and systems engineering teams.
  • Optimize system performance, latency, and resource utilization across the hardware-software boundary.
  • Drive tasks with strong autonomy and initiative, troubleshooting complex multi-domain issues and proposing creative engineering solutions from concept to deployment.

Qualifications

  • Bachelor's or Master's degree in Software Engineering, Computer Engineering, Electrical Engineering, or a related technical discipline.
  • 5+ years of professional experience in real-time embedded software development.
  • Strong proficiency in C for resource-constrained, high-reliability embedded systems.
  • Solid hands-on experience working with Real-Time Operating Systems (RTOS) such as FreeRTOS, VxWorks, or embedded Linux.
  • Demonstrated experience with hardware-software co-design, embedded processors, and SoC platforms (e.g., Xilinx Zynq, ARM Cortex-A/M series).
  • Familiarity with high-speed bus architectures and protocols (e.g., AXI, SPI, I2C, PCIe, Ethernet) and DMA-based data transfers.
  • Proficiency with lab equipment (oscilloscopes, logic analyzers) and debugging tools (JTAG, gdb).
  • Proficiency with scripting languages such as python, bash, Windows command, Windows power shell, Tera Term Language (TTL).
  • Proficiency with source control tool such as GitLab, git (command line), SVN.

Why work at Marconi?

  • Competitive compensation including a discretionary performance bonus.
  • Flexible work schedule and hybrid work model (remote and on-site).
  • Learning and professional development opportunities.
  • Employer-paid group insurance including short- and long-term disability, medical, dental, vision, life insurance, telemedicine, employee assistance, and wellness programs.
  • Retirement savings program with employer contribution.
  • Inclusive, collaborative, and supportive work environment designed to help employees reach their full potential.

Similar jobs