Firmware Engineer at Amaris
Montréal, QC, Canada -
Full Time


Start Date

Immediate

Expiry Date

17 Oct, 25

Salary

0.0

Posted On

18 Jul, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Good communication skills

Industry

Information Technology/IT

Description

Who are we?
Amaris Consulting est une société indépendante de conseil et de technologies au service des entreprises. Avec plus de 1000 clients dans le monde, nous déployons des solutions pour les plus grands projets depuis plus d’une décennie - tout ceci est rendu possible par une équipe internationale de 7,600 talents répartis sur les 5 continents et dans plus de 60 pays. Nos solutions sont axées sur quatre domaines d’activité différents : Les systèmes d’information et le digital, la télécommunication, les sciences de la vie et l’ingénierie. Nous cherchons à créer et à développer une communauté de talents où tous les membres de notre équipe peuvent réaliser leur plein potentiel. Amaris est votre « stepping stone » pour traverser les rivières du changement, pour relever les défis et pour réaliser tous vos projets avec succès.
Chez Amaris, nous avons à cœur d’offrir à nos candidats la meilleure expérience de recrutement possible. Nous cherchons à mieux connaître et comprendre nos candidats, à les challenger et à leur faire part de nos impressions le plus rapidement possible. Voici à quoi ressemble notre processus de recrutement :
Premier contact : Notre processus commence généralement par une brève conversation virtuelle/téléphonique pour en savoir plus sur vous ! L’objectif ? Apprendre à vous connaître, comprendre vos motivations et veiller à 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’ancienneté requis pour le poste). Au cours des entretiens, vous rencontrerez les membres de notre équipe : votre supérieur hiérarchique bien sûr, mais aussi d’autres personnes avec lesquelles vous serez amené à travailler. Ces entretiens nous permettront d’en apprendre davantage sur vous, votre expérience et vos compétences, mais aussi sur le poste et ce que l’on attendra de vous. Bien entendu, vous apprendrez également à connaître Amaris : notre culture, notre histoire, nos équipes et vos opportunités de carrière !
Étude de cas: En fonction du poste, vous serez peut-être appelé à passer un test. Il pourra s’agir d’un jeu de rôle, d’une évaluation technique, d’un scénario de résolution de problème, etc.
Comme vous le savez, chaque personne est différente et il en va de même pour chaque rôle dans une entreprise. C’est pourquoi nous devons nous adapter en conséquence, si bien que le processus peut parfois être quelque peu différent pour chacun. Cela dit, nous nous mettons toujours à la place du candidat pour lui offrir la meilleure expérience possible. Nous avons hâte de vous rencontrer !
Job description
Nous recherchons un Ingénieur Firmware pour rejoindre notre équipe de systèmes embarqués en pleine croissance. Vous serez responsable de la conception, du développement et de la maintenance des logiciels embarqués pour des produits matériels innovants. Ce poste s’adresse à des ingénieurs ayant une solide expérience en C/C++ embarqué et une passion pour le développement bas niveau.
Vous interviendrez à toutes les étapes du cycle de développement, en collaboration avec les équipes matériel, systèmes et tests, afin de garantir des produits fiables, performants et prêts pour la production.
️ Responsabilités
Concevoir, développer, déboguer et maintenir le firmware en C/C++ pour des systèmes embarqués.
Collaborer avec les ingénieurs hardware pour définir les exigences d’intégration matériel/logiciel.
Développer des pilotes bas niveau, des BSP (Board Support Packages) et des logiques de contrôle temps réel.
Optimiser le firmware pour la performance, la consommation énergétique et l’empreinte mémoire.
Mettre en place et exécuter des tests unitaires et tests d’intégration.
Participer aux revues de code, à la documentation et aux processus d’amélioration continue.
Contribuer à l’architecture firmware et à la planification des fonctionnalités.
Participer au bring-up matériel, au débogage de prototypes et à l’analyse de problèmes.
Collaborer avec les équipes QA et produit pour la validation système et le support en production.
✅ Profil recherché
Diplôme en génie électrique, informatique embarquée ou domaine connexe.
3 à 10+ ans d’expérience en développement de firmware ou de logiciels embarqués.
Maîtrise du C/C++ embarqué, avec une attention particulière à la performance et à la gestion mémoire.
Expérience pratique avec des microcontrôleurs (ARM Cortex-M, AVR, MSP430, etc.) et interfaces telles que SPI, I2C, UART, PWM, ADC, etc.
Bonne connaissance des systèmes temps réel (RTOS) ou du développement bare-metal.
Capacité à lire les schémas électroniques et à utiliser les outils de débogage (oscilloscope, analyseur logique, etc.).
Maîtrise des systèmes de gestion de versions, notamment Git.
Compétences appréciées
Expérience avec des environnements RTOS comme FreeRTOS, Zephyr, etc.
Connaissance des protocoles sans fil : Bluetooth/BLE, Wi-Fi, LoRa, Zigbee, etc.
Connaissance des bootloaders, des mécanismes de mise à jour de firmware, ou des architectures firmware sécurisées.
Notions en scripting (Python, Bash) pour l’automatisation des tests.
Expérience de travail en environnement Agile/Scrum.
Connaissance des environnements de développement certifiés ou critiques (ISO 26262, IEC 62304, etc.).
Pourquoi nous choisir
Une communauté internationale réunissant plus de 110 nationalités différentes
Un environnement où la confiance est primordiale : 70 % de nos leaders ont commencé leur carrière au premier niveau de responsabilité
Un système de formation solide avec notre Académie interne et plus de 250 modules disponibles
Un environnement de travail dynamique qui se retrouve fréquemment lors d’événements internes (afterworks, team buildings, etc.)
Amaris Consulting promeut l’égalité des chances. Nous nous engageons à rassembler des personnes d’horizons divers et à créer un environnement de travail inclusif. À ce titre, nous accueillons les candidatures de toutes les personnes qualifiées, quels que soient leur sexe, orientation sexuelle, origine ethnique, croyances, âge, état civil, handicap ou autres caractéristiques.
-
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

Responsibilities

Please refer the Job description for details

Loading...