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 futur manager 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
    JD2536662
  • 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