Embedded Software Engineer - C++ and Firmware and Automotive
5 days ago
Mossville
Job Title: Embedded C++ Developer Location: Mossville, IL Job Type: Full-Time Client - Actalent Position Summar yWe are seeking a highly skilled Embedded Software Engineer with strong Linux experience to design and develop robust embedded software solutions for advanced hardware platforms. The ideal candidate will have extensive experience in C++ programming within Linux-based embedded environments, including system-level development, multi-threaded applications, and hardware-software integration .Key Responsibilitie • sDesign, develop, and maintain embedded applications using C++ in Linux environments, • .Develop system-level software, middleware, and application layers for embedded platforms, • .Perform Linux system programming including multi-threading, IPC, sockets, and memory management, • .Develop and integrate device drivers (user space and kernel space as required), • .Customize Linux kernel, configure device trees, and support board bring-up activities, • .Work closely with hardware teams for debugging and hardware-software integration, • .Implement and maintain communication protocols (SPI, I2C, UART, CAN, USB, Ethernet), • .Optimize software performance, memory usage, and system stability, • .Conduct unit testing, integration testing, and code reviews, • .Troubleshoot and resolve system-level issues using debugging tools such as GDB, Valgrind, and Trace tools, • .Maintain technical documentation including design specifications and test reports .Required Qualification • sBachelor’s degree in Computer Science, Electronics Engineering, Electrical Engineering, or related field, • .4–9 years of experience in embedded software development, • .Strong proficiency in C++ (C++11/14/17 standards preferred), • .Solid experience with Embedded Linux systems, • .Strong understanding of object-oriented programming (OOP) principles, • .Experience with Linux system programming (threads, synchronization, signals, file systems), • .Experience with cross-compilation environments and build systems (Yocto, Buildroot, CMake), • .Familiarity with version control systems such as Git, • .Strong debugging and problem-solving skills in Linux-based environments .