Embedded Firmware Engineer Job Description Template
Our company is looking for a Embedded Firmware Engineer to join our team.
Responsibilities:
- Work with key stakeholders to establish requirements, generate architecture proposals, implement functionality, and lead design reviews;
- Develop and execute testing and validation processes and where applicable proactively develop, implement, and improve procedures/processes;
- Independent judgment, while being a part of a larger team, is required to plan, prioritize and organize a diverse workload.
Requirements:
- Experience developing systems that have challenging integrated hardware/firmware;
- Experience working with embedded microcontrollers and freeRTOS firmware on a commercial application;
- Excellent oral and written communication skills;
- Good time-management skills with the ability to multi-task and work on multiple projects;
- Programming for both Bare Metal and multi-threaded RTOS systems;
- Minimum of 3 years developing software for embedded systems;
- In-depth knowledge of ARM and PIC processors. DSP and FPGA experience a plus;
- Strong experience developing for real-time systems, low-level drivers and hardware interfaces;
- Experience working in bare metal environments using embedded RTOS or specific peripheral libraries;
- Ability to work cooperatively with other developers, hardware engineers and testers in the development of the system;
- Excellent C/C++ for embedded systems development is a must;
- Experience getting complex systems functional; ability to diagnose system to identify if hardware or firmware issues causing problems;
- Experience with the following communication interfaces: I2C, SPI, CAN, USB. Experience with TCP/IP, WiFi, Bluetooth a plus;
- MA/MS Electrical Engineering, Communications Engineering, or Software Engineering or equivalent experience;
- Knowledge and experience with lab equipment: Oscilloscopes, power supplies, multi-meters.