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
Lieu : Montréal – Candidat basé à Toronto accepté sous réserve de mobilité
Nous recherchons un Développeur Logiciel Embarqué passionné pour rejoindre une équipe dynamique spécialisée dans les technologies de pointe.
Le poste est basé à Montréal, mais nous sommes ouverts aux candidats actuellement à Toronto, prêts à envisager une relocalisation.
Vous participerez au développement de solutions innovantes pour des projets critiques dans les secteurs automobile, aérospatial, médical ou IoT, en collaborant étroitement avec les équipes matérielles et systèmes.
Responsabilités principales
-
Développer, tester et maintenir du code pour systèmes embarqués (C/C++ principalement).
-
Concevoir des logiciels temps réel sur microcontrôleurs ou processeurs embarqués.
-
Travailler sur des interfaces bas niveau : drivers, protocoles de communication, gestion de capteurs/actuateurs.
-
Collaborer avec les équipes hardware pour l'intégration logiciel/matériel.
-
Participer aux revues de code, validations fonctionnelles et analyses de performances.
-
Rédiger la documentation technique (spécifications, plans de tests, manuels d’utilisation).
-
S’assurer de la qualité du code et de la conformité aux normes de l'industrie (ex: ISO 26262, DO-178C, IEC 62304 selon les projets).
-
Être acteur des démarches d'amélioration continue et d'innovation au sein de l'équipe.
Profil recherché
-
Diplôme en génie logiciel, informatique, électronique, ou discipline connexe.
-
Minimum 3 ans d'expérience professionnelle en développement embarqué.
-
Maîtrise du développement en C et C++ sur plateformes embarquées.
-
Expérience avec les environnements temps réel (RTOS comme FreeRTOS, VxWorks, QNX, etc.).
-
Solide compréhension des architectures de microcontrôleurs/microprocesseurs (ARM, Cortex-M, etc.).
-
Connaissance des outils de versioning (Git, SVN) et des méthodes Agile.
-
Bon niveau en français et en anglais (écrit et oral).
-
Volonté de se relocaliser à Montréal (le soutien à la relocalisation pourra être discuté).
Atouts
-
Expérience dans l'un des domaines suivants : automobile, aéronautique, médical, télécommunications, IoT.
-
Connaissances en cybersécurité des systèmes embarqués.
-
Familiarité avec des outils de simulation ou d'analyse (MATLAB/Simulink, CANalyzer, Oscilloscope, etc.).
-
Connaissance d'autres langages utiles : Python, Rust, etc.
-
Expérience avec des certifications industrielles (ex : ISO 26262, DO-178C).
Pourquoi rejoindre ce projet ?
-
Travailler sur des projets innovants à fort impact technologique.
-
Rejoindre une équipe passionnée dans un environnement multiculturel et dynamique.
-
Opportunités de formation continue et de développement de carrière.
-
Avantages sociaux compétitifs et flexibilité de travail.
-----------
English
Location: Montreal – Candidates based in Toronto accepted, with willingness to relocate
We are seeking a passionate Embedded Software Developer to join a dynamic team working on cutting-edge technologies.
The position is based in Montreal, but we are open to candidates currently located in Toronto, willing to consider relocation.
You will be involved in the development of innovative solutions for critical projects in automotive, aerospace, medical, or IoT sectors, working closely with hardware and systems teams.
Key Responsibilities
-
Develop, test, and maintain software for embedded systems (primarily C/C++).
-
Design real-time software on microcontrollers or embedded processors.
-
Work on low-level interfaces: drivers, communication protocols, sensor/actuator management.
-
Collaborate with hardware teams for hardware/software integration.
-
Participate in code reviews, functional validations, and performance analysis.
-
Write technical documentation (specifications, test plans, user manuals).
-
Ensure software quality and compliance with industry standards (e.g., ISO 26262, DO-178C, IEC 62304 depending on the project).
-
Actively contribute to continuous improvement and innovation initiatives within the team.
Profile Requirements
-
Degree in Software Engineering, Computer Science, Electronics, or a related field.
-
Minimum of 3 years' professional experience in embedded software development.
-
Proficiency in C and C++ programming for embedded platforms.
-
Experience with real-time operating systems (RTOS) such as FreeRTOS, VxWorks, QNX, etc.
-
Solid understanding of microcontroller/microprocessor architectures (ARM, Cortex-M, etc.).
-
Familiarity with version control tools (Git, SVN) and Agile methodologies.
-
Good command of both French and English (written and spoken).
-
Willingness to relocate to Montreal (relocation support can be discussed).
Assets
-
Experience in one or more industries: automotive, aerospace, medical, telecommunications, IoT.
-
Knowledge of embedded systems cybersecurity.
-
Familiarity with simulation and analysis tools (MATLAB/Simulink, CANalyzer, Oscilloscope, etc.).
-
Additional programming skills (Python, Rust, etc.).
-
Experience with industry certifications (e.g., ISO 26262, DO-178C).
Why join this project?
-
Work on high-impact, innovative technological projects.
-
Be part of a passionate, multicultural, and dynamic team.
-
Opportunities for continuous learning and career growth.
-
Competitive benefits and flexible working conditions.