The Firmware Engineer (EIT) implements, and maintains firmware solutions for embedded systems. As a Firmware Engineer (EIT), you will play a key role in the development of cutting-edge products, providing technical expertise to the firmware development team.
Responsibilities:
Firmware Design and Development:
Design and implement firmware solutions for embedded systems, ensuring adherence to project specifications and requirements.
Collaborate with cross-functional teams, including hardware engineers and software developers, to integrate firmware with hardware components.
Architecture and Optimization:
Architect efficient and scalable firmware solutions that meet performance and resource constraints.
Optimize firmware code for performance, reliability, and power consumption.
Debugging and Troubleshooting:
Conduct thorough debugging and troubleshooting of firmware-related issues.
Collaborate with testing and validation teams to identify and resolve defects.
RTOS and Embedded Software:
Utilize real-time operating systems (RTOS) and embedded software development tools in firmware development.
Stay current with industry trends and advancements in embedded systems.
Code Reviews and Documentation:
Conduct code reviews to ensure code quality, readability, and adherence to coding standards.
Create and maintain comprehensive documentation for firmware designs, APIs, and interfaces.
Collaboration and Communication:
Collaborate with hardware and software teams to define interfaces and ensure seamless integration.
Communicate technical concepts and project updates effectively to both technical and non-technical stakeholders.
Performance Analysis:
Conduct performance analysis and optimization of firmware to meet system requirements.
Collaborate with cross-functional teams to address performance-related challenges.
Skills/Qualifications/Education:
EIT status required for Engineering role.
Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
Proven experience as a Firmware Engineer with a focus on embedded systems.
Proficiency in C and C++ programming languages.
Experience with real-time operating systems (RTOS) and embedded software development tools.
Knowledge of microcontroller architectures and hardware-level debugging.
Excellent debugging and troubleshooting skills.
Familiarity with version control systems, such as Git.
Strong communication and collaboration skills.
Leadership experience or a demonstrated ability to take on leadership responsibilities.