Remote job
Embedded Software Engineer
Job details
About this role
Role overview Develop firmware and software for embedded systems, translating individual customer needs into designs and working implementations. The work covers microcontroller software, real-time applications, sensor and interface integration, radio protocols, and testing of software modules.
Responsibilities - Define software concepts and solutions in response to customer requirements. - Design, architect, and implement embedded firmware in C and C++. - Develop applications for real-time operating systems such as Mbed OS and FreeRTOS. - Build software components for microcontroller platforms. - Connect sensors, define interfaces, and integrate communication bus systems. - Develop radio protocols and specify and run tests for software modules.
Requirements - A degree in computer science, electrical engineering, or a comparable qualification. - Experience specifying software architecture and design. - Good programming skills in C and C++ for embedded systems. - Familiarity with modern development tools and workflows such as Git, issue tracking, and continuous integration and delivery. - Good written and spoken English, and an ability to work well with a team.
Nice to have - Experience with real-time operating systems such as FreeRTOS, Mbed OS, or RTX. - Familiarity with CAN, RS232, RS485, SPI, or LAN bus systems. - Python scripting experience.