Senior Embedded Software Engineer
***HIRING ACROSS MULTIPLE LOCATIONS: PROVIDENCE, RI; RALEIGH, NC; ORANGE, CA; MINNEAPOLIS, MN
About This Role:
Veranex has an exciting opportunity to join our team as a Senior Embedded Software Engineer. You will be part of a team working to improve lives globally through medical technology innovation.
What You Will Do:
• Execute full software development life cycle including requirements capture, architecture, implementation, testing within the medtech industry.
• Collaborate with other design disciplines including systems, electrical, and mechanical engineering
• Support the software development team with translating high level software requirements into detailed software requirements, supporting the documented software architecture
• Verify that the documented architecture is implemented according to plan through participation in code reviews and design reviews throughout the process
• Embedded Linux user space application development and sustenance
• User Interface application development and sustenance
Qualifications
- 4+ years of experience in embedded software development within the medtech industry (or other equivalent safety critical software development experience).
- 4+ years of experience in C++ application development in embedded space
- Knowledgeable of operating systems, multithreading, memory management, debugging using GDB
- Knowledgeable of embedded software development
- Knowledgeable of microprocessor/microcontroller bring-up and embedded device drivers
- Demonstrated software programming proficiency (C, C++, and scripting languages such as Python)
- Understanding of electronic circuitry including board bring up ad on target debugging.
- Understanding of interfacing with on and off chip peripherals such as USB, SPI, UART I2C, ADC's and DAC's
- Experience with user space application development in embedded Linux
- Understanding of processor and hardware requirements in embedded Linux
- Knowledgeable of open system interconnection (OSI) model and its application to network design
- Knowledge of UI frameworks such as Qt/QML or any other UI software
- Experience in working in a Continuous Integration (CI) environment
- Experience with Software Configuration Management
- Proven track record of successfully leading technically complex development projects and transitions to production
- Knowledge in Agile/Scrum-based product development
- Strong verbal and written communications skills and the ability to communicate effectively across all levels of the organization
- Ability to excel in a fast-paced and dynamic work environment
- Bachelor's degree in computer engineering (or equivalent)
Preferred:
- Experience with software development for medical devices and associated standards (IEC 62304)
- Experience with software quality systems
- Experience using Atlassian Tools of equivalent for software development
- Experience deploying commercial embedded Linux systems
- Proficiency with open-source cross-compiler tools and Linux kernel development
- Experience with unit testing including test case development with unit test frameworks such as GoogleTest
- Experience with Laboratory Information Systems (LIS)
- Excellent knowledge of cloud computing technologies and current computing trends.
- Knowledge of real-time operating systems, microcontrollers, and RTOS
- Master's degree in computer or electrical engineering (or equivalent)
Weitere Details
- Tätigkeitsgruppe Software Engineering
- Tätigkeitsfunktion Software Engineering
- Entgelttyp Gehalt
- Beschäftigungsform Regular
- Min. Einstellungstarif 98.400,00 €
- Max. Einstellungstarif 154.990,00 €