Staff Engineer, Embedded Software Development
Core
Designing and integrating complex embedded systems that span low-level hardware, firmware, and application software for industrial non-destructive testing (NDT) solutions.
Role type
Staff Engineer, Embedded Software Development
Builds
Industrial inspection solutions including radiography, CT, remote visual inspection, ultrasound, and eddy current technologies.
Domain
Industrial NDT / Embedded Systems
Deliverable
production ML models | product features | infrastructure
Required skills
C++ (embedded), C# (application/middleware), Embedded Linux, Windows on ARM/Intel, Device drivers, Cross-compilation, System integration, Hardware debugging, Real-time/high-throughput data pipelines, Git, Azure DevOps/Jira
Preferred skills
Imaging systems/video pipelines, Computer vision, Windows frameworks (WPF), Communication protocols (PCIe, USB, Ethernet, I2C, SPI, CAN, WiFi, Bluetooth), Performance optimization, Embedded cybersecurity, AI/ML tools
Technologies
Linux, Windows, ARM, Intel, C++, C#, Git, Azure DevOps, Jira, PCIe, USB, Ethernet, I2C, SPI, CAN, WiFi, Bluetooth
Responsibilities
Designing and implementing embedded software in C++ for Linux-based systems including drivers and hardware interfaces; Building application and middleware components using C# for device control and system orchestration; Designing and implementing interfaces between embedded components and application layers; Developing and optimizing pipelines for data acquisition, image/video processing, and streaming; Diagnosing complex system issues across hardware, firmware, and application layers; Defining software architecture, module boundaries, and interface contracts; Collaborating with FPGA, electrical, imaging, and UI teams
Seniority
Staff, hands-on IC with architectural ownership