Crea un profilo in modo da poter essere trovato dalle aziende, ottenere offerte di lavoro più adatte alle tue esigenze e candidarti più velocemente.
  • Cerca lavoro
  • Preferiti
  • Crea CV
    Novità
  • Stipendi
  • Iscrizioni

Senior Programmer/Architect (C++ / C#)

EFI

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.
Offerta di lavoro pubblicata 2 mesi fa