Senior Embedded Software Engineer
Job in
San Diego, San Diego County, California, 92189, USA
Listed on 2026-08-11
Listing for:
INOVIO Pharmaceuticals, Inc.
Full Time
position Listed on 2026-08-11
Job specializations:
-
Software Development
Embedded Software Engineer, Embedded Systems/ Firmware/ IoT, Software Testing
Job Description & How to Apply Below
The Senior Embedded Software Engineer is responsible for the design, development, verification, maintenance, and sustaining support of safety-critical embedded software for electroporation and drug delivery medical devices. This role focuses on embedded C++ development, platform software, device drivers, electromechanical control, drug delivery, pulse generation, motor control, UI/display systems, battery powered systems, cybersecurity, hardware bring-up, and compliance with IEC 62304 and other applicable medical device standards.
Essential job functions and duties
- Design and implement electromechanical control systems, including motor control, battery management, board bring up, bootloaders, firmware updates, diagnostics, and inter-processor communications
- Design, develop, and maintain safety-critical embedded software for medical devices using modern C++ on microcontroller, RTOS, Embedded Linux, and Android platforms.
- Develop platform software, BSPs, middleware, and device drivers supporting SPI, I2C, UART, USB, ADC/DAC, PWM, timers, displays, touchscreens, motors, sensors, and communication interfaces.
- Develop embedded UI/display applications and system-level software features
- Design and implement software controlling electroporation therapy delivery.
- Develop deterministic real-time software supporting therapy delivery, closed-loop control systems, safety monitoring, and precision timing requirements
- Develop and maintain software lifecycle documentation, including requirements specifications, software designs, risk controls, verification protocols, and test reports.
- Perform code reviews, static analysis, unit testing, integration testing, and software verification activities.
- Implement cybersecurity controls, including secure boot, authentication, encryption, vulnerability management, and secure software update mechanisms
- Develop firmware, manufacturing test software, diagnostic tools, and engineering utilities to support product development, verification, manufacturing, debugging, compliance testing, and field service activities
- Troubleshoot hardware and software issues using oscilloscopes, logic analyzers, and other laboratory equipment
- Collaborate with systems, electrical, mechanical, quality, regulatory, and cybersecurity teams
- Participate in system requirements development, architecture definition, hazard analysis, risk control implementation, and allocation of system requirements to software components
- Support CI/CD pipelines, automated build systems, configuration management, and continuous software process improvements initiatives
- Provide sustaining engineering support for released products, including issue investigations, root cause analysis, field corrections, cybersecurity updates, and design improvements
- Complete other engineering duties and responsibilities as assigned.
- BS or MS in Computer Engineering, Electrical Engineering, Computer Science, or a related technical field
- 7+ years of experience in embedded software development, including development of complex real-time embedded systems using modern C++.
- Experience developing embedded applications on ARM Cortex-M processors, Linux, and/or Android platforms
- Strong experience developing real-time embedded applications using RTOS frameworks such as ThreadX, FreeRTOS, RTX, Micrium OS, or similar operating systems.
- Proven experience developing platform software, Board Support Packages (BSPs), hardware abstraction layers, and device drivers.
- Experience working with electromechanical systems, motor control, battery-operated devices, displays, touchscreens, and sensor integration
- Experience developing embedded GUI/UI applications
- Strong debugging and troubleshooting skills across applications, middleware, operating system, and driver layers.
- Ability to read electrical schematics, hardware design documentation, and component datasheets
- Hands-on experience with oscilloscopes, logic analyzers, protocol analyzers, and other hardware test equipment
- Experience with embedded development tools including Keil, IAR, GCC, Visual Studio, Android Studio, and Linux tool chains
- Knowledge of embedded cybersecurity principles, including secure coding practices, threat modeling, vulnerability assessment, encryption, authentication, and secure firmware/software updates
- Experience with source control, automated builds, issue tracking systems, and unit test frameworks
- Experience developing safety-critical or regulated software
- Strong working knowledge of IEC 62304, IEC 81001-5-1, ISO 14971, IEC 60601, FDA cybersecurity guidance, software risk management, design controls, verification and validation, and requirements traceability
- Experience developing connected devices with wireless communications, cloud connectivity, and secure data exchange
- Familiarity with C#, Python, automated test frameworks, and manufacturing test systems
Position Requirements
10+ Years
work experience
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×