Principal Embedded Engineer (Software Engineer III)
NewAgeSys, Inc
Lake Forest, United States of America
8 days ago
Role details
Contract type
Temporary contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Lake Forest, United States of America
Tech stack
Unit Testing
Azure
C++
Static Program Analysis
Computer Programming
Computer Engineering
Continuous Integration
Software Debugging
Embedded Software
Ethernet
Python
Systems Development Life Cycle
Software Engineering
Universal Asynchronous Receiver/Transmitter
Serial Peripheral Interface
GIT
Information Technology
Requirements
- Experience developing embedded software for medical devices according to FDA/ISO regulations (including IEC 62304) and writing supporting design and test documentation.
- Proficient in migrating ARM legacy code to new ARM Boards. This includes creating bootloaders and application code as well as developing device drivers.
- Experience with RTOS (CMX, ThreadX, or similar) and RTOS based applications and multi-threaded applications.
- Proficient programming in C++ and C targeting embedded modules.
- Experience with CAN, Ethernet, SPI, UART, I2C, ADC's and DAC's.
- Strong debugging skills at component-level designs on the PCBA or within an integrated product.
- Proficient in using lab equipment (logic analyzers, in-circuit emulators, oscilloscopes and DVMs) to debug and troubleshoot designs.
- Excellent written and verbal communication skills.
- Ability to work independently while collaborating with subject matter experts (SMEs) to meet project schedule and project milestones.
- Ability to work on multiple projects with prioritizations aligned with project deliverables.
Nice to Have:
- Understanding of Software Development Lifecycle Management (SDLC).
- Experience with simulation and debug tools (ex: CANoe, Lauterbach).
- Experience with waveform generation, transducer signal sampling, motor control and other electromechanical control.
- Experience in using static analysis, unit testing and other tools/methods.
- Experience using Git and Azure DevOps.
- Experience in working in a Continuous Integration (CI) environment.
- Experience with Python for general purpose scripting.
- Good interpersonal & Communication skills., * Bachelor's Degree in Computer Science, Computer Engineering, Electrical Engineering, or related field.
- 6+ years hands on embedded software development experience.