All of us at EFI™ are relentlessly focused on the growth and success of the print business. That’s why print providers worldwide turn to EFI to help build their brilliant future. Our worldwide team members are passionate about driving our customers’ business growth with a scalable portfolio of products, solutions, services, support, and world-class partnerships for the manufacturing of signage, packaging, textiles, ceramic tiles, building materials, commercial print, and personalized documents with a wide range of printers, inks, digital front ends, and workflow solutions. Our unwavering commitment is to increase their profits, cut costs, improve productivity, and optimize efficiency — job after job, year after year. We’re obsessed with our customers’ success. And we believe we have the right people, technology, and experience to help businesses achieve their goals. Ready to be brilliant, together?
EFI is seeking an R&D Software Engineer to join our software and hardware development team in Londonderry, New Hampshire. This position reports to the local R&D product leader with a dotted line to the Sr. Director of Software Development in Spain. In this role, you will collaborate with New Product Development teams and third-party vendors to develop and integrate applications with printer control systems, support and evolve our unified printer software platform, sustain our installed base of legacy products, and help drive software quality.
What you will do:
-
Collaborate with R&D teams and international partners to gather, clarify, and document requirements, and to define specifications for new software applications.
-
Design, implement, and maintain application and systems code in modern C++ and C#, with Python for tooling, test scaffolding, and build/development workflows.
-
Own and enhance existing components of our printer software codebase, spanning current and legacy platforms.
-
Integrate software with printer control systems, cameras, and other hardware in collaboration with electronics, controls, and mechanical engineering teams.
-
Diagnose and resolve field-reported issues across multiple printer platforms, working from logs, remote debugging, and direct customer/service-team collaboration.
-
Participate in code reviews, contribute to team coding practices, and support software quality assurance activities including test planning.
-
Maintain and improve the shared development environment (Docker-based build and remote-development workflows) used by local and international teams.
This role may be a good fit if you have:
-
Degree in Computer Science, Software Engineering, Computer Engineering, or a related field.
-
10+ years of relevant software development experience.
-
Strong proficiency in modern C++ (C++11 or later); working proficiency in C#.
-
Familiarity with at least one scripting language (Python preferred; Lua an asset).
-
Development experience on Linux (Ubuntu or Mint) and Windows, with a working understanding of networking fundamentals.
-
Familiarity with Git-based workflows, code review practices, and containerized development (Docker).
-
Strong analytical, problem-solving, and troubleshooting skills, including comfort diagnosing issues from logs and remote systems.
-
Strong written and verbal communication skills in English, with the ability to work independently and collaborate effectively with international teams across time zones.
Preferred qualifications:
-
Experience with industrial printing systems (UV digital printing or comparable technologies) or familiarity with EFI or competitors' printers.
-
Experience with digital image processing and pipelined image-processing architectures.
-
Experience with multi-threaded / concurrent C++ development.
-
Experience with machine vision, camera integration, or computer vision libraries (e.g., OpenCV).
-
Familiarity with motion control interfaces, PLCs, or industrial protocols such as Modbus and POWERLINK.
-
Working knowledge of hardware systems and electronics.
-
Experience maintaining and modernizing large, long-lived C++ codebases across platforms.
-
Experience with database programming (SQL).
-
Familiarity with color science, colorimetry, or printer color management.
EFI is an “Affirmative Action/EEO/Protected Veteran/Disabled Employer
##LI-EH1