Firmware Engineer OOJ - 26057 - Hatch Global Search
Hatfield, PA 19440
About the Job
Job Description
Firmware Engineers write the algorithms, or rules, that tell a device how to behave. When you hit the keys on your keyboard, firmware communicated to the device on how to interpret your commands and convert them into a signal your computer can understand. Firmware Engineers work with both hardware and software.
Firmware Engineer
The Embedded Firmware Development Engineer is responsible for the designing, implementation, and maintenance of real-time embedded software that controls the state-of-the-art products. The successful candidate must posses a strong background in embedded coding with ARM processors and a proven track record in the development of PID (proportional-integral-derivative) control loop applications, as well as experience with Real-Time Operating Systems (RTOS).
Essential Duties and Responsibilities
Develop, optimize, and maintain firmware for ARM processors.
Design and implement PID control loop applications for precision control systems.
Collaborate with hardware engineers to define and integrate firmware with hardware components.
Develop and integrate real-time firmware using RTOS to meet strict timing requirements.
Perform debugging, testing, and troubleshooting of firmware code.
Evaluate firmware for adherence to system requirements to validate firmware performance, functionality, and quality.
Work with cross-functional teams to analyze requirements and provide firmware solutions that meet project objectives.
Keep up to date with the latest industry trends and technologies and apply them to improve the firmware development processes.
Qualifications
Practical knowledge of embedded design development tools and industry best practices for code development, documentation, and test.
- Strong understanding of PID control algorithms and their practical application.
- Experience with real-time operating systems (RTOS) for embedded systems.
- Familiarity with hardware debugging tools and methods.
- Solid problem-solving skills and the ability to work in a fast-paced environment.
- Excellent communication and collaboration skills.
- Knowledge of embedded electronics including analog, digital and firmware aspects.
- Familiarity with industrial communication protocols (e.g., EtherCAT, CIP, Profibus, Modbus, Foundation Fieldbus).
- Working knowledge of requirements management, change management, and configuration management tools.
- Ability to read schematics and component datasheets.
- Ability to take on multiple concurrent assignments under minimal supervision.
- Self-starter with initiative and drive to develop high quality code within the time and budget constraints of the project.
- Strong interpersonal skills, desire to learn, and an effective team player in a global environment.
- Ability to follow all safety procedures.
Education and Experience
- BS Computer Science, Computer Engineering, Electrical Engineering, or closely related Engineering degree required, MS degree preferred.
- 5 years of industry experience developing complex embedded software systems programming in C and/or C++ required, other programming languages a plus.
- Experience with ARM (Cortex-M)microcontrollers and real-time operating systems required.
- Experience with System Engineering and modeling a plus (MatLab/Simulink/Embedded Coder).
- Experience with mass flow control systems and/or other control systems highly desirable
Why is This a Great Opportunity
Work for a division of a Fortune 200 company who is a leader in flow measurement systems. Very stable environment. This could be a fully remote role if the person had extensive firmware , Cortex-M, strong RTOS, PID controllers and industrial communication protocols.
OOJ - 26057