Markham, ON, CA

Requisition ID:  6732
Company:  Epson Canada, Ltd.

At EPSON we have a passion to innovate. Our engineers develop and advance EPSON's leading-edge technologies throughout product lines comprised of information-related equipment such as printers, scanners, projectors, robots and augmented reality devices. Epson products are well known around the world for their superior quality, functionality, compactness and energy efficiency.

Our R&D team at EPSON Canada researches and develops cutting-edge computer vision technologies and converts conceptual research outcomes into tangible customer applications. Technologies developed at Epson Canada have a global reach.


We are seeking a Principal Algorithm Developer with significant technical skills in the fields of Computer Vision, NLP, Deep Learning and/or Reinforcement Learning.
The successful candidate will be responsible to design, develop, integrate and productize machine learning technologies for the next generation of EPSON products. The role requires the use of judgement, managing multiple priorities and independent decision-making.



  • Architect, design and implement frameworks and applications to deploy ML algorithm to meet users’ requirements and expectations
  • Optimize and accelerate Deep Learning/Reinforcement Learning training and inference pipeline
  • Deploy Deep Learning/Reinforcement Learning technologies to different hardware (PC, embedded, …) and integrate into various software applications & frameworks
  • Review code developed by other developers and researchers and provide feedback to ensure best practices (e.g., style guidelines, checking code in, accuracy, testability, and efficiency).
  • Work with managers to lead a team of software and machine learning engineers to develop and deploy ML based solutions
  • Work closely with core research team to implement frameworks, applications and tools that facilitate researchers’ day-to-day research activities
  • Collaborate with management and business development team to provide tech decisions on ambiguous user requests, track requirements and plan, and generate status reports



Must haves:

  • Minimum Bachelor’s degree in Engineering, Computer Science, or a related technical field.
  • 5+ years of development experience on ML-based algorithm and/or applications
  • 5+ years of development experience on coding in C++ and/or Python.
  • Proven experience in ML-based software architect, design, and deployment.
  • Proven experience with Machine Learning infrastructure (e.g., GPU, cloud TPU), or deep learning frameworks (e.g., TensorFlow, PyTorch), algorithms and tools (e.g., Kubeflow, Ray.io, MLflow)
  • 3+ years of technical leadership experience on successfully building and scaling teams and interfacing multiple cross-functions.


Good to have:

  • 2 years of experience with computer vision algorithms and tools (e.g., OpenCV)
  • 1 year of experience in graphics and rendering.
  • 1 year of experience in Robot Operating System
  • Proven experience of building and deploying scalable ML models and AI-powered solutions on distributed computing platforms including both cloud (AWS, Azure, GCP, private/hybrid) and edge.
  • Experience designing, developing, and deploying microservices architectures.


Terms of employment – Full time Position


We thank all candidates who apply, however, only those selected for an interview will be contacted.


We’re an equal opportunity employer. All applicants will be considered for employment without attention to race, colour, religion, sex, sexual orientation, gender identity, national origin, veteran, or disability status.


Epson Canada Limited is committed to providing accommodations for people with disabilities in our recruitment process. If you require an accommodation, please make your accommodation needs known in advance and we will work with you to meet your needs. 


Job Segment: Cloud, R&D Engineer, Developer, R&D, Embedded, Technology, Engineering, Research