We are looking for a Senior Programmer/Architect (C++ / C#) with deep architectural experience in software development for industrial machines and automation systems. The candidate will define the code design guidelines for machine-level software and act as a technical mentor to the team, while remaining hands?on. This role directly reports to the R&D; product leader in their region with a dotted line to the Sr. Director of Software Development based in Spain. Key Responsibilities * Design, develop, and optimize the software architecture for the control, diagnostics, and supervision of complex industrial machines, ensuring efficient coexistence between C++ (real?time/low?level management, drivers, high?performance data processing) and C# (HMI, application logic, connectivity). * Lead the technology choices of the industrial software development team, define coding standards together with the team to ensure maximum machine stability and safety, and conduct rigorous code reviews. * Explore new technologies and industrial protocols, creating Proofs of Concept (PoCs) to improve machine performance, efficiency, and connectivity. * Work closely with the electronic design, automation (PLC), and mechanical teams to translate machine operating specifications into robust software architectures. * Act as a reference point for less experienced programmers, helping them solve complex software/hardware interface issues. Requirements * Proven experience in developing application or control software for industrial machines, plants, or complex embedded systems.
* Deep knowledge of software?hardware interaction dynamics (input/output management, machine cycles, alarm management, and machine state management). * Excellent knowledge of modern C++, concurrent/multithreaded programming, memory management, and performance optimization for critical low?level tasks. * Solid experience with the .NET ecosystem (Framework + Core) for developing advanced human?machine interfaces (HMI), supervision services, and coordination logic. * Familiarity with the integration of industrial protocols and fieldbuses (e.g., OPC UA, EtherCAT, Modbus, CANopen, TCP/IP). * Good experience integrating low-level native code with high-level managed code (C++/CLI, P/Invoke). * Use of profiling and debugging tools in industrial environments, unit testing frameworks, and version control systems (Git). * Ability to guide and influence the team's decisions through technical credibility and expertise. * Strong aptitude for understanding the impact of code on the physical behavior of the machine and on operational safety. * Ability to analyze complex bugs or abnormal machine behaviors in a structured way, focusing on the long?term stability of the system. What can we offer? * Direct Product Impact: The opportunity to see your code move, control, and optimize real, state?of?the?art industrial machines. * Focus & Flow: Protected time for research, development, and architectural design, minimizing corporate bureaucracy. * Exposure: The candidate will interact with counterparts across the EFI group to develop international projects. #J-*****-Ljbffr
📌 Senior Programmer/Architect (C++ / C#) (Bardi)
🏢 Efi
📍 Bardi