Embedded Software Engineer
$116,300–$154,130 year
RemoteUnited States
Job Summary
Contribute to the bring-up of new hardware platforms at the ECU level for infotainment systems, including initial boot, driver integration, and system-level debugging. Design, develop, and implement dedicated software features specifically for testing the ECU against its specifications to ensure robust performance and seamless user experiences. Develop and execute comprehensive validation strategies, including rigorous stress tests for critical ECU subsystems and performance benchmarking to identify bottlenecks and optimize system efficiency. Create and maintain manufacturing software for End-of-Line (EOL) testing and validate camera and display subsystems from driver integration through user-space application testing. Collaborate with hardware engineers, Validation & Test Automation teams, and other software architects to ensure seamless ECU integration and delivery of high-quality products.
Required Qualifications
- Bachelor's or Master's degree in Computer Science/Engineering or a related field
- 3+ years' experience in Embedded Software Development
- Strong hands-on experience with high-performance SoCs such as Snapdragon, NVIDIA Orin, MediaTek, or similar platforms
- Experience with automotive-grade SoCs
- Proficient in Embedded Linux, QNX, DriveOS, and experience with hypervisor-based systems (e.g., Type-1 hypervisors, Gunyah, ACRN, etc.)
- Strong background in multimedia development with a particular focus on camera and/or display subsystems – including driver integration, middleware, and user-space application development
- Proven experience in ECU-level software development for complex infotainment systems
- Experience with performance analysis and optimization of CPU, GPU, and NPU workloads
- Expert proficiency in C, C++, and Python
- Good understanding of Linux and/or RTOS fundamentals, Board Support Packages, kernel configuration, device driver interfaces, and debugging tools
- Hands-on experience using Lauterbach, Oscilloscope, JTAG, and flashing tools
- Solid understanding of interface protocol stacks (SPI, I2C, Ethernet, PCIe), and board bring-up
- Experience with scripting languages (Python, shell)
- Comfortable and effective working in fast-paced environments such as startups, consumer electronics, or automotive domains, with a proven ability to adapt to evolving requirements
Desired Qualifications
- Knowledge of OS internals (process scheduler, memory management, concurrency, synchronization, storage)
- Knowledge of hypervisors and virtualization in the automotive industry
- Experience with ARM cores and architecture
- Experience in using electronic test equipment for debugging at the hardware level
- Experience with embedded toolchains (compilers, linkers, linker scripts)
- Experience with automotive communication protocols (e.g., CAN, Ethernet)
- Familiarity with functional safety standards (e.g., ISO 26262)
- Experience with continuous integration and continuous deployment (CI/CD) pipelines for embedded systems
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.