Software Embedded Developer Description :
We are looking for a skilled and experienced Software Embedded Developer Automation to join our engineering team.
In this role, you will be responsible for designing and developing robust, high-performance software systems in C++ on Linux platforms, with a key focus on integration with Siemens PLCs and industrial communication protocols.
This is a critical role where you will collaborate with hardware and operations teams to deliver reliable, scalable, and efficient solutions for automation and control systems.
Key Responsibilities :
- Design, implement, and maintain high-performance, multi-threaded C++ applications for Linux (NixOS) environments.
- Integrate software with Siemens PLCs, ensuring smooth communication using PROFINET, Modbus, or similar industrial protocols.
- Develop clean, testable, and maintainable code to support long-term scalability and performance requirements.
- Collaborate closely with hardware engineers, controls engineers, and operations teams to develop integrated system solutions.
- Troubleshoot and debug complex issues across embedded systems and automation layers.
- Contribute to the development and improvement of CI / CD pipelines, ensuring consistent code quality and deployment efficiency.
- Participate in code reviews, design discussions, and agile development practices.
Must-Have Skills :
5+ years of hands-on experience in C++ (C++11 / 14 / 17 or later), with expertise in application-level and multi-threaded development.Strong background in developing, debugging, and deploying applications in Linux environments (preferably NixOS).Ability to understand and work within a system-of-systems architecture, including software / hardware interaction.Solid grasp of software design principles (e.g., SOLID, OOP) with a focus on writing maintainable and unit-testable code.Experience interfacing with industrial control systems and protocols, especially Siemens PLCs and PROFINET / Modbus.Familiarity with tools such as CMake, Git, and Jenkins or other automation pipelines.Experience with real-time systems or embedded RTOS.Knowledge of fieldbus or other industrial communication standards.Exposure to containerization or virtualization on embedded systemsref : hirist.tech)