Embedded Firmware Engineer

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.