Embedded Firmware Engineer (Senior & Principal)
Gray, ME 04039 US
Design embedded software for new electronic products ranging from simple microcontroller-based solutions to highly complex embedded processing systems.
Serve as software lead on smaller embedded systems development projects – identifying required development activities and directing other team members in completing those activities
You will collaborate with team members, including hardware designers, to identify software related requirements and develop corresponding software design strategies or architectures
Develop detailed software specifications based on requirements and implement embedded code in accordance with those defined requirements and/or specifications.
Participate in the bring-up of new custom embedded processor hardware with support from hardware designers.
Establish software verification testing tools and methods and execute software testing activities.
You will provide software engineering input to development project quoting activities.
You will contribute to the improvement of department processes and tools, particularly those related to software development.
You will mentor junior members of the engineering staff to promote design team abilities and establish good working practices.
Demonstrated skill in developing original designs with C/C++ in embedded environments including bare-metal, multi-threaded RTOS, and embedded operating systems.
Experience with common microcontroller and/or embedded processing platforms such as ARM and PIC. Experience with DSP and/or FPGA based SoCs is a plus.
Strong understanding of software development tools and methodologies used in the context of embedded systems. Familiarity with source control via established systems such as Git.
Demonstrated skill in independently using electronics lab equipment to develop/troubleshoot low-level drivers and hardware integration for interfaces such as I2C, SPI, UART, USB, etc.
Experience with higher-level languages, object-oriented methodologies, user-interface implementation, and PC application programming. Experience with Qt framework is a plus.
Bachelors Degree (Masters preferred), and minimum 10 years (15 pref’d) of Embedded Firmware development or equivalent experience
Bachelors Degree or equivalent experience in Electrical Engineering or a related engineering discipline and 5 years of Embedded Firmware development or equivalent experience