Embedded Software Engineer
Develop and maintain low-level software for hard real-time embedded systems, working across hardware and software components from requirements through customer deployment.
Responsabilidades
- Develop and maintain low-level system software, drivers, and infrastructure components using C/C++.
- Design and maintain communication protocols and embedded interfaces, including UART, SPI, CAN, and Ethernet.
- Develop software for hard real-time and bare-metal environments, with or without an operating system, including FreeRTOS and VxWorks.
- Analyze system requirements and contribute to software design, implementation, and unit, integration, and system testing.
- Optimize real-time performance and support integration across hardware and software components.
Requisitos
- Bachelor’s degree in computer science, software engineering, electrical or electronics engineering, or a related scientific discipline.
- At least 3 years of experience developing hard real-time embedded systems and low-level software using C/C++.
- Experience with device drivers, direct hardware access, operating system integration, and hardware or system-service APIs.
- Experience with embedded hardware, peripheral interfaces, and communication protocols such as UART, SPI, or I2C.
- Ability to lead software development independently from requirements definition through implementation, testing, and deployment.
- Experience writing software specifications, design documents, and test plans.