Job Description

We are looking for a skilled and experienced Embedded Software Engineer to join our team. The ideal candidate will have proficiency in C, C++, Assembly language, Knowledge of Microcontrollers/MCUs, Excellent understanding of Real-time operating systems (RTOS), excellent documentation skills.

Responsibilities:

Designing, developing and implementing complex embedded software solutions for production level applications on medical devices.
Collaborating closely with other teams including hardware designers, system integrators, and manufacturers to understand project requirements and communicate effectively with various stakeholders.
Writing clean, efficient code that is modularized, reusable and maintainable while ensuring documentation of each module/component.
Implementing unit testing and integration testing on embedded systems.
Debugging and troubleshooting complex issues in embedded systems.
Designing hardware-software interfaces for communication, ensuring seamless interaction between hardware components and software applications.
Working with version control systems like Git to manage changes and updates to the codebase.
Documentation of designs, procedures, code modules and system integrations for reference and training purposes.
Required Qualifications:

Bachelor's degree in Electrical Engineering, Computer Engineering, or related field (Master's degree preferred)
Proven experience developing production-level firmware for medical, industrial, or commercial devices
Strong proficiency in C, C++ and Assembly languages.
In-depth knowledge of microcontrollers/MCUs like STM32, ESP32, AVR, SAM, PIC, etc (at least 2 of them).
Solid understanding of Real-Time Operating Systems (RTOS)
Working experience with embedded systems debugging tools(JTAG, SWD, oscilloscopes, logic analyzers).
Excellent problem solving skills, ability to work in a team and collaborate effectively.
Proficient in documentation software such as LaTeX, Markdown or Microsoft Word.
Nice to Have:

Deep understanding of networking protocols(mqtt, http, coap, raw-tcp, raw-udp) and architectures for IoT devices and embedded systems.
Experience with Atmel/Microchip SAM microcontrollers
Experience with Yocto Project for embedded Linux development
Knowledge of Linux/Unix based Operating Systems.

To see more jobs that fit your career