Essential Duties and Responsibilities: 61 Design, develop, and test firmware for embedded systems, including microcontrollers and microprocessors based on ARM architecture. 61 Write clean, well-documented, and maintainable code in C/C++. 61 Develop and maintain real-time operating systems (RTOS) and device drivers. 61 Develop and implement communication protocols (e.g., I2C, USB, SPI, UART, Ethernet, Bluetooth, Wi-Fi). 61 Develop and implement drivers and interfaces for Windows SDKs for hardware. 61 Perform unit testing, integration testing, and system-level testing. 61 Debug and troubleshoot firmware issues. 61 Participate in code reviews and design reviews. 61 Contribute to the development of new product concepts and architectures. 61 Stay current with the latest technologies and industry trends. 61 Collaborate with cross-functional teams to ensure project success.
Experience & Qualification 61 Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field. 61 3+ years of experience in embedded software development. 61 Strong programming skills in C/C++. 61 Experience with RTOS (e.g., FreeRTOS,). 61 Experience with communication protocols (e.g., I2C, SPI, UART, USB, Ethernet, Bluetooth, Wi-Fi ). 61 Experience with developing drivers and interfaces for Windows SDKs for hardware. 61 Experience with specific ARM-based microcontrollers/processors (e.g., ARM Cortex-M, Cortex-A).