Role: Embedded Software Engineer
Location: Bothell, WA (Onsite)
Duration: Contract
The Role:
-
Design and develop software technological solution, platform, or reference
-
Design, Code and Test (unit and integration) for multicore/processor embedded systems
-
Participates in determining the system, subsystem, and interfaces between them
-
Validates technology assumptions, evaluates alternatives, and defines functional and non-functional requirements
-
Test and review code
You're the right fit if:
-
This position requires a minimum of a BS in Software/Electrical/Computer Engineering or equivalent from an accredited university.
-
Minimum 7 years’ experience in Software Design and development in embedded software/firmware.
-
Experience in Programming language C++. Strong understanding of Object-oriented programming.
-
Experience with RTOS based Embedded Software. Azure RTOS/ThreadX preferred.
-
Experience with hierarchical state-machines.
-
Good Knowledge of Software/Firmware unit testing methodologies. (gtest experience strongly preferred)
-
Peripherals and their drivers – modification and test
-
Hands-on experience on SPI, I2C, PWM, ADC, DAC, eMMC, USB, UARTs as well as Memory Management, Scheduling, Interrupts, and multi-threading
-
Microprocessor/Microcontroller development – Strong Knowledge and working experience on STM microcontrollers Architecture (domain knowledge for designs SW, HW)
-
GitHub, CI/CD, VSCode, Docker Dev Containers all preferred.
-
Aware of SDLC. Good grasp of Design Patterns/ Multithreading, Code Reviews
-
Experience in Agile SW Development practices; experience in scaled agile framework (SAFe) is preferred
-
Knowledge and application of the following is preferred:
-
communication interfaces (e.g. USB, Ethernet, Serial)
-
network protocols and standards (e.g. TCP/IP, UDP, Bluetooth, NFC
-
Experience in software development in medical industry or highly regulated industry; experience with IEC 62304, FDA guidance for medical device development and other relevant medical device regulatory standards is highly preferred