Sr. embedded linux software engineer
Listed on 2026-10-23
-
Software Development
Software Engineer, Embedded Software Engineer, Embedded Systems/ Firmware/ IoT, DevOps
Sr. Embedded Linux Software Engineer
locations : CA, IL
Key Responsibilities
• Design, develop, and maintain embedded software applications using modern C/C++.
• Develop software for embedded Linux platforms and control systems.
• Collaborate with product owners to define requirements, create specifications, and document development activities.
• Work closely with system architects, hardware engineers, and software developers to ensure successful system integration.
• Develop communication, networking, and data management applications for embedded devices.
• Design and implement communication interfaces using protocols such as Modbus, CAN, MQTT, TCP/IP, and REST APIs.
• Develop and maintain software for microcontroller platforms including STM
32, ESP
32, or similar architectures.
• Create robust software solutions emphasizing reliability, stability, fault tolerance, and maintainability.
• Specify, develop, and execute unit tests, integration tests, and automated test procedures.
• Participate in code reviews, software design reviews, and technical discussions.
• Troubleshoot software, communication, and integration issues across embedded environments.
• Develop software architecture and system designs using object-oriented principles and UML modeling.
• Support Agile development activities including sprint planning, backlog refinement, and task estimation.
• Mentor junior engineers and provide technical leadership on software projects.
• Maintain software repositories and development workflows using Git.
• Prepare technical documentation, test reports, and release notes.
• Collaborate with global engineering teams, manufacturing facilities, and product management organizations.
• Stay current with advancements in embedded software technologies, Linux development, networking, and cybersecurity.
• Identify opportunities to improve software performance, reliability, and development processes.
• Support collaboration between global and local engineering teams, including manufacturing and development organizations.
Required Skills and Qualifications
Qualifying candidate will need to be open to a training period in Germany, likely will be 3-6 trips there for 2/3 weeks a time within their first 6 months.
• Bachelor's degree in Computer Engineering, Computer Science, Software Engineering, Electrical Engineering, or related field.
• 5+ years of software development experience focused on embedded systems or industrial applications.
• Strong proficiency in modern C/C++ and object-oriented programming.
• Experience developing software applications under Linux.
• Understanding of object-oriented design (OOD), software architecture, and design patterns.
• Experience with multithreaded and concurrent application development.
• Familiarity with networking fundamentals and embedded communication systems.
• Experience developing and executing unit and integration tests.
• Proficiency with Git version control.
• Experience working in Agile development environments.
• Familiarity with Jira and Confluence.
• Strong analytical, troubleshooting, and problem-solving abilities.
• Excellent verbal and written communication skills.
• Ability to work independently and within a global cross-functional team.
• Technical leadership or mentoring experience.
Preferred Skills and Qualifications
• 8+ years of embedded software development experience.
• Experience with distributed systems and embedded servers.
• Experience developing applications using Qt and QML.
• Experience with industrial communication protocols including Modbus and CAN.
• Experience developing software for STM
32, ESP
32, or similar microcontroller platforms.
• Understanding of real-time systems and fail-safe software design principles.
• Experience with automated testing frameworks and CI/CD pipelines.
• Experience with UML modeling and software architecture documentation.
• Experience with MQTT, REST APIs, and cloud-connected applications.
• Experience with Microsoft Azure, IoT platforms, databases, AI, or edge computing solutions.
• Experience with cybersecurity principles and secure software development practices.
• Experience with data analytics and data-driven product development.
• Relevant certifications in Linux, Embedded Systems, Software Testing, Functional Safety, Cybersecurity, Agile Development, Azure/AWS, Qt, or Industrial Networking (CAN, Modbus, MQTT) are considered an asset.
(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).