Device Driver Engineer (C/C++ | Windows WDK)
Job role insights
-
Date posted
March 17, 2026
-
Closing date
June 15, 2026
-
Hiring location
Hybrid
-
Offered salary
CAD70,000 - CAD90,000/year
-
Career level
Middle
-
Qualification
Bachelor's in Software Engineering Bachelor's in Computer Science
-
Experience
3 - 5 Years
-
Gender
Any / All
Description
🌐 About the Company – Process Fusion
Process Fusion Inc. is a Canadian software company specializing in workflow automation, enterprise printing solutions, and digital transformation software.
Process Fusion provides cloud-based and systems-level software for enterprises, focusing on document workflows, printing automation, and process optimization. Their products are used to improve operational efficiency and enterprise printing performance.
🧾 Experience Required
5+ years in C/C++ systems programming
🎯 Job Overview
You will work as a Printer Driver Developer / Systems Software Engineer, collaborating with firmware, hardware, QA, and product engineering teams to design, develop, and maintain printer drivers and printing pipelines across multiple platforms: Windows, Linux, and macOS.
Ideal candidate:
Strong Windows Driver Kit (WDK) experience
Deep knowledge of Windows printing architectures
Experience in driver performance optimization
🛠️ Key Responsibilities
Develop and maintain C/C++ system-level software for printer drivers
Debug and optimize printer drivers and print job performance
Work with Windows Driver Kit (WDK) to develop Windows printer drivers
Integrate drivers with Windows printing pipelines (GDI, Unidrv, Pscript5, XPSDrv)
Analyze and optimize print performance for large PDFs and graphics-heavy documents
Collaborate with hardware and firmware teams
Implement printer communication protocols (IPP, USB, network printing)
Perform security, quality control, and debugging of printing systems
Support deployment, troubleshooting, and maintenance of printing solutions
Assist with planning and implementation of technology solutions and product improvements
🧠 Required Qualifications
5+ years of C/C++ systems programming experience
Strong experience with Windows Driver Kit (WDK)
Deep knowledge of Windows printer driver architecture
Experience with User-mode and Kernel-mode drivers
Familiarity with Windows V4 printer driver architecture
Strong problem-solving and troubleshooting skills
Experience working in cross-functional teams including firmware and QA
Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent experience)
💻 Technical Skills
Programming Languages:
C (primary)
C++
C# (optional for UI / installer utilities)
Windows Printing Architecture:
GDI, Unidrv, Pscript5, XPSDrv, Print Spooler components
Printing Protocols:
IPP, IPP Everywhere, eSCL/WSD, USB, network printing
Printer Languages:
PCL, PostScript, PDF, ZPL (vendor-specific)
Cross-Platform (Preferred):
Linux CUPS printing system
macOS printing pipeline
Additional Skills (Preferred):
Rasterization and color management
Enterprise printing environments
Print servers, queues, and spoolers
DevOps tools, version control, CI/CD pipelines
Strong reverse engineering and debugging
🎁 Benefits
Extended health care, dental and vision insurance
Life and disability insurance
RRSP matching
Tuition reimbursement
Employee assistance program
Work-from-home flexibility
Company events
Corporate phone plan
📌 Why Join Process Fusion
Work on cutting-edge printing technologies
Collaborate with skilled engineering teams
Build high-performance printing solutions used in enterprise environments
Hands-on experience with cross-platform printing and driver development
📝 Application Questions
How many years of experience do you have in C/C++ systems programming?
Do you have hands-on experience developing device drivers or printer drivers?
Do you have experience using Windows Driver Kit (WDK) for driver development?
Which Windows printing driver pipelines have you worked with?
Which printer languages or formats have you worked with?
Do you have experience with printer communication protocols such as IPP, USB, or network printing?
Have you worked with any of the following printing systems?
Interested in this job?
89 days left to apply