Senior Embedded Software Engineer

  • Hanoi / Ho Chi Minh City
  • Full-time, In-office

Job Description:
VinRobotics is looking for an experienced Embedded Software Engineer to develop real-time firmware for advanced actuator control systems. You will implement motor control algorithms (FOC, PID), integrate EtherCAT communication, and ensure robust, scalable embedded software architecture.

Key Responsibilities:

  • Develop low-level firmware for motor control (BLDC/PMSM) using Field-Oriented Control (FOC) techniques.

  • Design and implement real-time PID, observer, feedforward algorithms with >1kHz control loop.

  • Integrate EtherCAT slave stack (Beckhoff or SOES), including PDO configuration and mailbox communications. Ensure deterministic and reliable EtherCAT communication between actuators and master controllers.

  • Architect scalable, maintainable firmware solutions leveraging best practices (modularization, abstraction layers, state machines, reusable components).

  • Optimize software performance in terms of cycle timing, CPU load, interrupt latency, and memory footprint.

  • Collaborate closely with hardware engineers for system-level integration, PCB bring-up, and debugging hardware-software interfaces.

  • Utilize diagnostic tools (oscilloscopes, logic analyzers, EtherCAT analyzers) to troubleshoot embedded systems effectively.

  • Develop comprehensive test plans, conduct unit tests, integration tests, and system validation.

  • Maintain thorough technical documentation, including software architecture diagrams, code comments, and integration guides.

  • Provide technical guidance and mentorship to junior engineers on best practices in embedded software development, version control (Git), code reviews, and continuous integration workflows.

Required Qualifications:

  • Bachelor’s or Master’s degree in Electrical, Computer Engineering, or related fields.

  • 4+ years embedded software development experience in motor control and real-time systems.

  • Strong proficiency in C/C++, real-time OS, embedded Linux systems (e.g., PREEMPT_RT).

  • Experience with STM32 or TI C2000 series MCUs.

  • Familiarity with real-time debugging tools (oscilloscope, logic analyzer, STLink, JTAG).

  • Solid understanding of control systems (PID tuning, modulation techniques, sensor feedback).

  • Hands-on experience with EtherCAT protocol integration (Beckhoff stack preferred).

Preferred Qualifications:

  • Familiarity with FPGA-based control systems.

  • Knowledge and practical experience with robotics middleware (ROS/ROS2) and software frameworks.

  • Understanding of safety-critical systems, embedded security, and firmware update mechanisms (OTA updates).

  • Familiarity with simulation and modeling tools (MATLAB/Simulink, PLECS) for controller design validation and algorithm prototyping.

  • Experience in implementing predictive control algorithms (Model Predictive Control – MPC), adaptive control techniques, or machine learning approaches for real-time embedded applications.

Similar job opportunities

Liên hệ

Business Cooperation