National Research Council Canada

Software Engineer, Crop Computer Vision and Machine Learning

National Research Council Canada
Apply
7 days ago
Saskatoon, CanadaMid Level

Responsibilities

  • Design, develop, document, and implement production-quality computer vision software for automated crop image analysis.
  • Develop and train deep learning models for computer vision, including convolutional neural networks, vision transformers, and foundation models.
  • Apply computational geometry, 3D representations, image analysis, and performance-critical C++ development.
  • Support data management, reproducible machine learning experiments, and data-processing workflows.
  • Use parallel processing and multi-threaded application design where appropriate.
  • Mentor junior developers, engineers, research colleagues, technical staff, and students in computer vision, machine learning, and software development practices.
  • Collaborate with colleagues across the NRC and national and international partners on crop phenomics and climate-resilience research.

Requirements

  • M.Sc. in Computer Science, Electrical Engineering, or a related field, or a B.Sc. with at least two years of relevant experience in computer vision or machine learning algorithm development.
  • At least three years of significant, directly relevant computer vision experience across multiple projects.
  • Proven ability to develop computer vision algorithms, documentation, and production-quality software for image analysis.
  • Strong proficiency in Python and experience with C++ for performance-critical computer vision applications.
  • Experience with computational geometry, 3D representations, and related data structures.
  • Experience developing and training deep learning models for computer vision.
  • Experience mentoring junior developers, engineers, or students in machine learning, computer vision, and software development best practices.
  • Knowledge of classical computer vision methods, 3D reconstruction, deep learning, dataset preparation, model evaluation, and performance metrics.
  • Proficiency with PyTorch or TensorFlow and familiarity with OpenCV or similar frameworks.
  • Ability to use Git and workflow or pipeline tools such as Snakemake or MLflow.
  • Experience with biological or agricultural images, parallel processing, transfer learning, large foundation models, and federated learning frameworks is considered an asset.
  • English language proficiency and eligibility to obtain Reliability Status clearance are required.

Benefits

  • Compensation is $103,911 to $130,061 per annum.
  • Competitive benefits include a pension plan, health and dental coverage, disability and life insurance, office closure at the end of December, and additional well-being supports.
  • The position requires full-time physical presence at the identified NRC work location in Saskatoon, with possible accommodations or alternative arrangements in some circumstances.
  • Relocation assistance may be provided according to NRC directives.
  • Preference is given to Canadian Citizens and Permanent Residents of Canada.

Tech Stack

C++GitMLflowOpenCVPythonPyTorchTensorFlow

Categories

National Research Council Canada

About National Research Council Canada

1,001-5,000 employees
Contact me