Senior Embedded Systems Engineer
Location: Dubai, United Arab Emirates (Micropolis Robotics) About the Role We are looking for a Senior Embedded Systems Engineer with strong experience in STM32-based embedded development and automotive systems. The role involves developing, testing, and maintaining embedded software while working closely with hardware and integration teams. Key Responsibilities Design, develop, and debug embedded software for automotive ECUs. Develop firmware for STM32 microcontrollers using C and C++. Implement low-level software including drivers, interrupts, timers, and communication interfaces. Integrate and troubleshoot external devices such as servo/BLDC motors, BMS systems, sensors, and actuators. Work with communication protocols including CAN, UART, SPI, I2C. Write unit tests and develop software that can be tested independently from hardware. Participate in software architecture, code reviews, and technical documentation. Support system integration, validation, and troubleshooting activities. Required Qualifications Strong experience with STM32 firmware development. Proficiency in C and C++. Strong understanding of Object-Oriented Programming (OOP) using C++. Good understanding of embedded systems architecture and RTOS concepts. Experience writing embedded unit tests and mocking hardware dependencies. Experience integrating external embedded devices and subsystems. Experience using debugging tools such as oscilloscopes, logic analyzers, and JTAG/ST-Link debuggers. Strong problem-solving and debugging skills. Preferred Qualifications Automotive industry experience. Experience with Git-based development workflows and CI/CD practices. Education Bachelor's degree in Mechatronics Engineering, Computer Engineering or related field.