Programming Proficiency: Skilled in Python; experienced in C++ development, debugging and performance optimization under Linux environment; familiar with object-oriented design and common design patterns; proficient in ROS/ROS2 framework and its node communication mechanism; capable of leveraging AI-assisted programming tools to improve R&D efficiency.
Communication Protocols: Familiar with mainstream network protocols with relevant optimization experience.
Hardware-Software Collaboration: Sound understanding of hardware; able to independently complete interface design, driver joint debugging and troubleshooting between application-layer software, embedded devices and sensors.
Engineering Quality: Produce design documents and interface specifications, conduct sufficient self-testing, maintain a result-oriented mindset, and ensure reliable engineering delivery.
Job Requirements
Familiar with configuration of peripherals including GPIO, ADC, PWM, timers and watchdog.
Able to read schematic diagrams (identify key peripheral connections); cooperate with hardware engineers to locate communication failures, power supply issues and other faults.
Capable of writing drivers for serial communication interfaces UART and I2C from scratch.
Independently lead the development of a product or subsystem.
Proficient in C and Python (for script automation and test tool development); experienced with no less than two MCU platforms.
Familiar with Keil MDK IDE.
Bachelor’s degree or above, majoring in Automation, Electronic Information, Software Engineering, Mechatronics or related disciplines; at least 3 years of working experience in consumer electronics industry.