DCP-Controller Firmware Engineer (Global)-Xi'an
Brief Job Description:
Software Engineer - Microcontroller (DCP):
- The position will be responsible for designing, developing, managing and maintaining the embedded firmware used inside the MCU to monitor and control DC power systems, implement protection/detection algorithms, generate diagnostics and handle communication buses.
Responsibilities and Measurement Criteria with Time investment Needed on Each:
(This will describe the overall core responsibilities of the role, decision making responsibilities etc.)
- Design, implement and maintain complex embedded firmware applications and related technical documentation.
- Design and implement real-time control and protection algorithms, including PID control, state machines, digital filtering, power sequencing, fault detection and protection logic.
- Develop, integrate and maintain communication and management protocol stacks, including CAN, Modbus, USB, PLDM, MCTP etc.
- Create and maintain software requirements, architecture specifications, detailed design documentation and interface definitions.
- Test, debug and validate firmware functionality, performance, reliability and safety in accordance with established development and verification procedures.
- Analyze existing firmware and system behaviors to identify root causes, optimize performance and improve product quality.
- Leverage AI-assisted development tools to improve coding efficiency, software quality, test automation and documentation generation.
- Provide technical support to customers and field teams, including troubleshooting, issue resolution and occasional customer visits.
- Collaborate with hardware, system, manufacturing and global engineering teams throughout the product development lifecycle.
Qualifications:
Required/ Minimum Qualifications:
- Bachelor's degree or above in Electrical Engineering, Control Engineering, Communications Engineering, Computer Science or related fields.
- Proficiency in C programming for embedded systems.
- Experience with microcontroller-based embedded application development.
- Good analytical and problem-solving skills.
Additional / Preferred Qualifications:
- Familiarity with embedded communication interfaces and protocols such as CAN, USB, I²C, UART and SPI.
- Familiarity with communication and device management protocols such as Modbus, PLDM and MCTP.
- Experience with uC/OS or similar RTOS-based embedded software development.
- Practical knowledge of software version control tools such as Git.
- Hands-on experience with embedded debugging and laboratory test equipment.
- Experience with control algorithm development is preferred.
Physical & Environmental Requirements: - (To be used majorly for manufacturing jobs.)
- None
Time Travel Needed:
- None