Senior Embedded Software Engineer
Location: New Castle DE Onsite
Duration: 12 Months CTH
Position Summary
Senior Embedded Software Engineer for a firmware design position engaged in development of scientific instruments. As part of a cross functional team the firmware engineer is responsible for designing implementing testing and supporting firmware controlling embedded processors within a distributed control and acquisition system. Knowledge of embedded software software architecture RTOS and Linux operating systems communications protocols basic electronic circuits signal processing and network communications are essential skills to perform daily design tasks.
The Senior Embedded Software Engineer is expected to take a system approach in the design and development of embedded software systems. This includes but is not limited to providing substantive technical assistance in software development projects including architecture design coding and testing of all embedded software system components. The position reports to the Director Software and System Engineering.
Essential Job Functions
Responsibilities include but are not limited to the following:
Specify design implement test and support embedded software for products across the range of the portfolio. Participate in embedded system design projects through SDLC from concept to production. Design implement and test C and C applications in embedded environments including baremetal RTOS and Linux Provide system architecture and design following an APIfirst approach. Familiar with modern communication protocols and security Follow and participate in software development bestpractices including code and design reviews. Analyze and enhance efficiency stability and scalability of system processing resources. Interface with hardware design and development as well as software QA Critical Competencies
Highly experienced in working with ADCs DACs and PWMs for measurement and control. Highly experienced in embedded systems design with preemptive multitasking realtime operating systems and multithreaded Linux system design. Highly experienced with Linux and embedded RTOS including experience with 32bit and 64bit microprocessor architectures DSPs and FPGAs Strong background in signal processing with emphases on realtime signal processing on embedded DSP processors and embedded Linux systems Experienced with PID control implementation on custom hardware to control an array of physical devices including motion temperature and gas flow. Experience in handson development and troubleshooting on embedded targets. Nice to Have Competencies
- Understanding of unit and system testing and test frameworks
- Understanding of Python JavaScript HTML and CSS technologies is a plus.
- Familiarity with software configuration management tools defect tracking tools and peer review.
- Working knowledge of reading schematics and data sheets for components
- Knowledge and experience with incircuit emulators oscilloscopes and logic analyzers
- Familiarity with modern authentication and authorization technologies
- Experienced with highspeed servoloop and estimator design modeling and implementation on custom hardware (MATLAB/Simulink modeling) a plus.
- Understanding of machine learning and predictive maintenance is a plus.
- Understanding of communication protocols including I2C SPI CANBus UDP and TCP/IP and HTTPS as well as general networking experience
- Experience with new technologies and approaches in material science.