Firmware Engineer

Montréal, QC, CA, Canada

Job Description

Who are we?

Amaris Consulting est une societe independante de conseil et de technologies au service des entreprises. Avec plus de 1000 clients dans le monde, nous deployons des solutions pour les plus grands projets depuis plus d'une decennie - tout ceci est rendu possible par une equipe internationale de 7,600 talents repartis sur les 5 continents et dans plus de 60 pays. Nos solutions sont axees sur quatre domaines d'activite differents : Les systemes d'information et le digital, la telecommunication, les sciences de la vie et l'ingenierie. Nous cherchons a creer et a developper une communaute de talents ou tous les membres de notre equipe peuvent realiser leur plein potentiel. Amaris est votre stepping stone pour traverser les rivieres du changement, pour relever les defis et pour realiser tous vos projets avec succes.



Chez Amaris, nous avons a coeur d'offrir a nos candidats la meilleure experience de recrutement possible. Nous cherchons a mieux connaitre et comprendre nos candidats, a les challenger et a leur faire part de nos impressions le plus rapidement possible. Voici a quoi ressemble notre processus de recrutement :



Premier contact :

Notre processus commence generalement par une breve conversation virtuelle/telephonique pour en savoir plus sur vous ! L'objectif ? Apprendre a vous connaitre, comprendre vos motivations et veiller a ce que nous vous proposions le poste qui vous correspond le mieux !



Entretiens (en moyenne, le nombre d'entretiens est de 3 - il peut toutefois varier en fonction du niveau d'anciennete requis pour le poste). Au cours des entretiens, vous rencontrerez les membres de notre equipe : votre superieur hierarchique bien sur, mais aussi d'autres personnes avec lesquelles vous serez amene a travailler. Ces entretiens nous permettront d'en apprendre davantage sur vous, votre experience et vos competences, mais aussi sur le poste et ce que l'on attendra de vous. Bien entendu, vous apprendrez egalement a connaitre Amaris : notre culture, notre histoire, nos equipes et vos opportunites de carriere !



Etude de cas:

En fonction du poste, vous serez peut-etre appele a passer un test. Il pourra s'agir d'un jeu de role, d'une evaluation technique, d'un scenario de resolution de probleme, etc.



Comme vous le savez, chaque personne est differente et il en va de meme pour chaque role dans une entreprise. C'est pourquoi nous devons nous adapter en consequence, si bien que le processus peut parfois etre quelque peu different pour chacun. Cela dit, nous nous mettons toujours a la place du candidat pour lui offrir la meilleure experience possible. Nous avons hate de vous rencontrer !



Job description



Nous recherchons un Ingenieur Firmware pour rejoindre notre equipe de systemes embarques en pleine croissance. Vous serez responsable de la conception, du developpement et de la maintenance des logiciels embarques pour des produits materiels innovants. Ce poste s'adresse a des ingenieurs ayant une solide experience en C/C++ embarque et une passion pour le developpement bas niveau.



Vous interviendrez a toutes les etapes du cycle de developpement, en collaboration avec les equipes materiel, systemes et tests, afin de garantir des produits fiables, performants et prets pour la production.



? Responsabilites



Concevoir, developper, deboguer et maintenir le firmware en C/C++ pour des systemes embarques.



Collaborer avec les ingenieurs hardware pour definir les exigences d'integration materiel/logiciel.



Developper des pilotes bas niveau, des BSP (Board Support Packages) et des logiques de controle temps reel.



Optimiser le firmware pour la performance, la consommation energetique et l'empreinte memoire.



Mettre en place et executer des tests unitaires et tests d'integration.



Participer aux revues de code, a la documentation et aux processus d'amelioration continue.



Contribuer a l'architecture firmware et a la planification des fonctionnalites.



Participer au bring-up materiel, au debogage de prototypes et a l'analyse de problemes.



Collaborer avec les equipes QA et produit pour la validation systeme et le support en production.



? Profil recherche



Diplome en genie electrique, informatique embarquee ou domaine connexe.



3 a 10+ ans d'experience en developpement de firmware ou de logiciels embarques.



Maitrise du C/C++ embarque, avec une attention particuliere a la performance et a la gestion memoire.



Experience pratique avec des microcontroleurs (ARM Cortex-M, AVR, MSP430, etc.) et interfaces telles que SPI, I2C, UART, PWM, ADC, etc.



Bonne connaissance des systemes temps reel (RTOS) ou du developpement bare-metal.



Capacite a lire les schemas electroniques et a utiliser les outils de debogage (oscilloscope, analyseur logique, etc.).



Maitrise des systemes de gestion de versions, notamment Git.



Competences appreciees



Experience avec des environnements RTOS comme FreeRTOS, Zephyr, etc.



Connaissance des protocoles sans fil :

Bluetooth/BLE, Wi-Fi, LoRa, Zigbee, etc.



Connaissance des bootloaders, des mecanismes de mise a jour de firmware, ou des architectures firmware securisees.



Notions en scripting (Python, Bash) pour l'automatisation des tests.



Experience de travail en environnement Agile/Scrum.



Connaissance des environnements de developpement certifies ou critiques (ISO 26262, IEC 62304, etc.).



Pourquoi nous choisir



Une communaute internationale reunissant plus de 110 nationalites differentes

Un environnement ou la confiance est primordiale :

70 % de nos leaders ont commence leur carriere au premier niveau de responsabilite

Un systeme de formation solide avec notre Academie interne et plus de 250 modules disponibles

Un environnement de travail dynamique qui se retrouve frequemment lors d'evenements internes (afterworks, team buildings, etc.)



Amaris Consulting promeut l'egalite des chances. Nous nous engageons a rassembler des personnes d'horizons divers et a creer un environnement de travail inclusif. A ce titre, nous accueillons les candidatures de toutes les personnes qualifiees, quels que soient leur sexe, orientation sexuelle, origine ethnique, croyances, age, etat civil, handicap ou autres caracteristiques.



-



English



We are seeking a Firmware Engineer to join our growing embedded systems team. You will be responsible for designing, developing, and maintaining embedded software for cutting-edge hardware products. This role is ideal for engineers with a solid foundation in embedded C/C++ and a passion for working close to the hardware.



As a key contributor, you will work cross-functionally with hardware, systems, and test teams to bring reliable and high-performance products to life. You'll be involved in the entire development lifecycle -- from requirements gathering to production release.



? Responsibilities



Design, develop, debug, and maintain firmware in C/C++ for embedded systems.



Collaborate with hardware engineers to define software/hardware integration requirements.



Write low-level drivers, board support packages (BSPs), and real-time control logic.



Optimize firmware for performance, power consumption, and memory footprint.



Develop and execute unit tests and integration tests to ensure firmware quality and reliability.



Participate in code reviews, documentation, and continuous improvement processes.



Contribute to the firmware architecture and feature planning.



Support bring-up, troubleshooting, and debugging of hardware prototypes.



Collaborate with QA and product teams for system validation and production support.



? Required Qualifications



Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, or related field.



3-10+ years of experience in firmware or embedded software development.



Strong experience with embedded C/C++, with an emphasis on memory and performance optimization.



Hands-on experience with microcontrollers (ARM Cortex-M, AVR, MSP430, etc.) and peripheral interfaces (SPI, I2C, UART, PWM, ADC, etc.).



Good understanding of real-time operating systems (RTOS) or bare-metal development.



Familiarity with hardware schematics, logic analyzers, oscilloscopes, and other debugging tools.



Proficiency in version control systems like Git.



Preferred Skills (Nice to Have)



Experience with FreeRTOS, Zephyr, or other embedded RTOS environments.



Familiarity with wireless communication protocols:

Bluetooth/BLE, Wi-Fi, LoRa, Zigbee, etc.



Experience with bootloaders, firmware update mechanisms, or secure firmware architectures.



Exposure to scripting (Python, Bash) for test automation.



Experience working in Agile/Scrum environments.



Knowledge of safety-critical or certified development environments (ISO 26262, IEC 62304, etc.).



Why choose us



An international community bringing together more than 110 different nationalities

An environment where trust is central:

70% of our leaders started their careers at the entry level

A strong training system with our internal Academy and more than 250 modules available

A dynamic work environment that frequently comes together for internal events (afterworks, team buildings, etc.)



Amaris Consulting promotes equal opportunities. We are committed to bringing together people from diverse backgrounds and creating an inclusive work environment. In this regard, we welcome applications from all qualified individuals, regardless of sex, sexual orientation, race, ethnicity, beliefs, age, marital status, disability, or other characteristics.

Beware of fraud agents! do not pay money to get a job

MNCJobz.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Related Jobs

Job Detail

  • Job Id
    JD2536663
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Montréal, QC, CA, Canada
  • Education
    Not mentioned