About EERS
Founded in 2014, EERS Global invents, designs and tests in-ear advanced technologies to accelerate go-to-market of game-changing products. Our cutting-edge technology augments the human experience in communication in challenging situations, hearing protection, biometric and wellness monitoring, brain computer interfacing, and is repeatedly validated in the field and some of it having even become ANSI Standards.
Through co-development partnership, we bring a stream of new products to market. Beyond prototyping, we produce actual scalable, easily transferable, manufacturable product taking the development execution risk out of the equation.
A global center of excellence in research in acoustics, audio and biosignal processing, in-ear technologies and product development, we attract high-caliber scientists and engineers to our team. Our head office is located in the heart of downtown Montreal. We offer competitive salaries as well as a great team environment. Global is an equal-opportunity employer committed to diversity.
Job Description
Reporting to Software Team Lead, the Embedded Software Developer will participate in the development of the EERS software backbone, used in our products such as the EERS MRI Audio Suite which will allow clear multi-mode communication in noisy MRI environments while protecting physician and patient auditory Part of a multidisciplinary team, the candidate will be expected to perform a wide variety of tasks: from high level architectural analyses (Object oriented programming) to low level development (C programming and assembly on various embedded architectures), testing and debugging for a custom embedded platform.
Duties and Responsibilities
- Extract design specifications from a product requirements.
- Implement high level prototyping and validation tests.
- Implement validated solution on embedded software running on microcontroller-based products or SBC modules.
- Ensure software high-performance by leveraging a strong understanding of embedded hardware design (Memory architectures, buses optimisation, … ).
- Analyze and provide feedback on peer designs following company Source Standards.
- Document and maintain maintain existing libraries and products.
- Collaborate with academic partners to implement and optimize new audio DSP algorithms.
- Interact with an automated CI/CD environment.
- Write and improve internal documentation for accuracy.
- Review documentation intended for customer use.
- Maintain accurate tracking through the company tools, throughout the development process in accordance with company and government standards and/or regulations.
Qualifications
Minimum Requirements
Education & Experience:
- Bachelor’s degree in Electrical Engineering or other relevant discipline, or equivalent combination of education and experience.
- 3 years of relevant professional embedded or low-level software programming experience.
Knowledge, Skills & Abilities:
- Extensive knowledge of the C language, including the tools used to edit, compile and debug code in an embedded environment.
- Proficiency in Python language when used as a Scripting tool.
- Intermediate knowledge in Python language when used in Object Oriented projects.
- Experience with real-time signal processing and hardware.
- Linux/BSD-based development.
- Linux/BSD development on embedded platforms.
- Strong writing and documentation skills.
- Strong communication skills with the ability to work with all levels of the organization using an adequate AGILE framework.
- Ability to work both individually and as part of a team.
- Excellent time management skills with the ability to contribute to multiple concurrent projects.
- Proficiency with source management tools (Git) including rebasing and ability to understand a branches merging scheme.
Preferred – Knowledge, Skills & Abilities
- General knowledge of digital audio processing principles.
- Experience with ARM based micro-controllers, including its vector math library.
- Electronic circuit debugging skills.
- Real time exploitation systems knowledge (freeRTOS).
- Linux/BSD administration (Possibly usage as daily OS for development).
- Basic GUI development.
- Software development experience in the context of connected devices or wearable technologies.
- Experience interacting using with IP network stack.
If you are meticulous, a problem solver, and a team player, you will feel right at home. Please send your cover letter and resume to jobs@eers.ca.