Information Technology & Software
14 Jul
Firmware Engineer
Job Summary / Primary PurposeThe primary objective of this Firmware Engineering position is to apply expertise inembedded systems, digital signal processing, wireless communications, and more todesign, test, and maintain firmware for hearing aids and related accessories. Firmwareengineers work within the scope of New Product Development (NPD) and AdvancedDevelopment Projects (ADP), collaborating regularly with cross-functional productdevelopment teams to deliver high-quality, on-time hearing solutions to the market.Firmware Engineers work under general supervision, developing and solving routinetechnical challenges and contributing to the completion of detailed technical tasks. Delaysin achieving desired results may occur but can be overcome through problem-solving.2A Firmware Engineer II works with minimal supervision to create and implement creative,practical, and consistent technical solutions to moderate-to-complex problems. With asolid understanding of technical principles, standards, and techniques, they apply theseskills across a broad range of applications. They play a critical role in the successfulcompletion of specific programs and projects. Errors or failure to achieve the desiredresults may lead to significant project delays and wasted resources. Firmware Engineers IIwork closely with the R&D organization to address complex technical issues and representthe firmware team in developing solutions. This role may specialize in either FirmwareDevelopment or Firmware Verification.Job Responsibilities1. Understand and Participate in Establishing Requirements• Gain a deep understanding of system-level requirements impacting firmwaredeliverables.• Actively participate in the creation of firmware requirements based on systemspecifications.• Collaborate with the broader team to define and improve system-level requirementsfor hearing aid firmware.• Align firmware design with requirements through continuous exploration of thefirmware system, review of documentation, and consultations with senior teammembers.2. Design and Implement High-Quality Firmware• Create designs that meet firmware requirements. At this level, the engineer isexpected to solve moderate technical challenges. Senior engineers review solutionsfor technical soundness.• Document and review designs, ensuring they provide value and enhanceunderstanding of the firmware.• Apply programming knowledge (e.g., C, assembly) to implement firmware onresource-constrained hardware.• Follow best practices in firmware development processes such as code reviews,design documentation, and adherence to coding conventions.• Update the status of assigned tasks using established issue and project trackingsoftware.3• Use version control systems to manage code effectively.• Investigate, root cause, and resolve firmware issues promptly, providing feedbackon potential solutions and their impacts to the firmware management team.3. Verify Firmware Functionality• Support the Firmware Verification Team in developing test plans and executing teststo ensure firmware meets high-quality standards at the system level.• Review test plans and provide constructive feedback.• Conduct unit tests to verify the functionality of developed firmware before passing itto the verification team.• Collaborate with Firmware Verification Engineers and others in R&D to identify andresolve issues.4. Participate Effectively in Project Activities• Understand and follow established organizational processes such as AdvancedDevelopment and Product Development processes.• Work with the Firmware Project Sponsor/Manager to create project plans andprovide work estimates for project milestones.• Take proactive ownership of project assignments and follow the projectmanagement process (Scrum) for assigned projects.• Communicate changes to work effort estimates and their potential impact on theproject schedule.• Provide updates on project activities during sprint reviews, stand-up meetings, andone-on-one meetings.Job RequirementsEducation and Experience• Education: Bachelor’s or Master’s degree in Electronics and Communication,Computer Science, Embedded Technology, or a related field.• Experience:o 1-4 years of relevant experience with a BS degreeo 0-2 years of relevant experience with an MS degree4Knowledge and Technical Requirements• In-depth knowledge in one or more of the following domains is required:o Digital Signal Processing (DSP)▪ Real-time Signal Processing: Knowledge of hardware or embeddedsystems for real-time signal processing, including the use ofmicrocontrollers, DSP chips, and FPGA.▪ Filtering: Designing and implementing digital filters (FIR, IIR) toremove noise, smooth, or enhance signals. Knowledge of filter designtools and techniques (e.g., Butterworth, Chebyshev filters).▪ Convolution & Correlation: Understanding how to apply theseoperations to signals to filter or detect patterns.▪ Fourier Analysis: Applying Fourier transforms (FFT, DFT) to analyzesignals in the frequency domain, including spectral analysis andsignal reconstruction.▪ Time-Frequency Analysis: Familiarity with techniques like Short-Time Fourier Transform (STFT) or wavelet transforms for analyzingnon-stationary signals.▪ Adaptive Filtering: Understanding algorithms that adapt theircharacteristics based on the signal's input, such as LMS (Least MeanSquares) and RLS (Recursive Least Squares).▪ Signal Compression & Coding: Knowledge of data compressiontechniques (e.g., JPEG, MP3) for efficient transmission and storage ofsignals.o Embedded DSP▪ Experience in implementing DSP algorithms on embedded systems,such as using ARM, TI processors or specialized DSP hardware.▪ Real-Time Operating Systems (RTOS): Experience with real-timeoperating systems, such as FreeRTOS, VxWorks, or other embeddedOS, for scheduling and task management.▪ Hardware/Software Interface: Experience interfacing with hardwarecomponents (ADC, DAC, sensors, actuators, etc.).5▪ MATLAB/Simulink: Ability to model and simulate DSP algorithmsusing tools like MATLAB and Simulink.▪ Embedded Development Tools: Familiarity with IDEs (e.g., Eclipse,Keil, IAR Embedded Workbench) and debugging tools (JTAG,oscilloscopes, logic analyzers).o Machine Learning (ML) & AI Integration▪ DSP and Machine Learning: Integrating machine learning with DSP toenhance signal processing tasks such as classification, patternrecognition, and feature extraction.▪ Deep Learning for DSP: Familiarity with neural networks, CNNs(Convolutional Neural Networks), RNNs (Recurrent Neural Networks),GANs (Generative Adversarial Networks), and other deep learningarchitectures.▪ Proficiency in using TensorFlow, PyTorch, and Keraso Wireless and wired communication protocolso Firmware testing methodologies and tools• Proficiency in programming languages such as C or assembly.• Familiarity with scripting languages like MATLAB or Python.• Understanding of analog and digital circuitry.Competencies, Skills, and Abilities• Strong verbal and written communication skills.• Driven, methodical, and detail-oriented.• Ability to work both independently and as part of a team.• Proficiency in problem-solving.Equipment Operation• Standard office equipment.• Test equipment such as oscilloscopes, spectral analyzers, signal generators,multimeters, loudspeakers, and amplifiers.Additional Responsibilities6• Process Adherence and Improvement:o Adhere to established development processes (code reviews,documentation, coding conventions).o Identify gaps in existing processes and recommend improvements toenhance productivity.o Initiate and lead the development of new processes to enhance teamefficiency.• Mentorship:o Coach and mentor junior team members.o Create educational materials, tutorials, and documentation to shareknowledge with the team.o Serve as a role model for less experienced team members.• Project Coordination:o Lead the creation of project plans, work estimates, and timelines.o Communicate project activities proactively and coordinate with other teamsto ensure smooth project flow.• Quality Assurance:o Contribute to quality checks and system verification efforts to ensureproducts meet the highest standards.o Support corporate health and safety goals.• Adaptability:o Demonstrate flexibility in responding to changes and handle other essentialduties as assigned.Time Zone Flexibility• Availability during overlapping hours: Willingness to work during overlappinghours with the US-based team to ensure seamless communication andcollaboration.