Software Engineer, ML Inference
at DarkVision

North Vancouver

Posted in Management
4 days ago


*Job brought to you by eQuest

Job Description

Your Job

DarkVision is seeking a Software Engineer, ML Inference to join our Imaging & AI team. You will own the software that runs our models in production: inference pipelines, performance, and the quality of the code that ships. You will help turn research-trained models into systems that run quickly and reliably on real data.

You will spend most of your time on inference: preprocessing, model execution, post-processing, and making the whole path efficient on CPUs and GPUs. You will also support training and retraining infrastructure so experiments stay repeatable and models can be refreshed in a controlled way.

DarkVision's ultrasound imaging system collects huge datasets involving sub-millimetric defects across assets that span hundreds of kilometers. Reliable and automated processing of this terabyte-scale data is crucial. As a Software Engineer, ML Inference, you will focus on the design, implementation, and maintenance of the software infrastructure that allows our models to train reliably and infer efficiently.

This role is on-site at our North Vancouver, BC HQ, where employees enjoy a wide array of amenities including a fully equipped gym, squash court, steam room, climbing wall, and more!

Our Team

Working on the Imaging & AI team, you will join a multidisciplinary group of scientists and engineers. This team is responsible for early-stage ideation, research, experimentation, and development. You will collaborate closely with other technical members to ensure our models are integrated seamlessly into our products.

What You Will Do

  • Inference Pipeline Engineering: Develop and maintain the software that moves data through preprocessing, model execution, and post-processing. Own throughput, latency, and resource efficiency (CPU/GPU utilization, I/O, batching, and parallelism).
  • Performance Engineering: Profile inference and data paths; optimize memory use and bottlenecks; measure and improve end-to-end pipeline performance with clear metrics.
  • Production Software Quality: Write clean, modular, reviewed, and tested code. Participate in design discussions and uphold engineering standards for maintainability and reliability.
  • Training Infrastructure and Automatic Retraining: Design and implement automated pipelines for model training and retraining. You will build systems that allow for repeatable and scalable training loops.
  • Lifecycle Management: Establish and maintain best practices for model and dataset versioning. You will implement the tooling that tracks model lineage, connecting specific model versions to the exact data and hyperparameters used to create them.
  • Data Integration: Write the logic required to interface with internal data ingestion systems. You will handle the efficient loading, pre-processing, and movement of data to ensure pipelines are fed correctly.

Who You Are (Basic Qualifications)

  • Bachelor's degree in Computer Science, Engineering, or a related field.
  • 2+ years of professional software engineering experience, including shipping and operating ML inference or deployment-related systems.
  • Strong proficiency in Python, with a focus on writing clean, modular, and tested code.
  • Hands-on experience profiling and optimizing Python for performance in data- or compute-heavy workloads (e.g., profiling tools, memory/CPU hotspots, batching, parallelism).
  • Deep practical experience with PyTorch for model execution and integration including areas such as data loading, device placement, and efficient inference-oriented usage of the framework.
  • Demonstrated experience with model optimization and deployment for inference, such as ONNX export/conversion, TensorRT (or similar runtimes), mixed precision, and/or quantization.
  • Understanding of high-performance computing concepts, parallel processing, and how inference workloads behave on GPUs and in distributed or multi-process settings.
  • Strong communication skills to articulate engineering trade-offs and constraints to diverse technical teams.

What Will Put You Ahead

  • Comfortable reading and debugging C/C++ (e.g., native extensions, bindings, or performance-critical libraries).
  • Familiarity with compiler- or graph-based optimization paths (e.g., TorchScript, torch.compile, Triton).
  • CUDA kernel development, custom operators, or deep GPU-level optimization beyond framework defaults.
  • Familiarity with distributed computing frameworks (e.g., Ray, Dask).
  • Experience with MLOps tools for experiment tracking and artifact management (e.g., Weights & Biases, DVC, MLFlow).
  • Experience with workflow orchestration tools (e.g., Prefect, Airflow, or Dagster).
  • Working understanding of SQL and databases.

General Salary Range

For this role, we anticipate paying $100,000 to $150,000 per year. This role is eligible for variable pay, issued as a monetary bonus or in another form.

At Koch companies, we are entrepreneurs. This means we openly challenge the status quo, find new ways to create value and get rewarded for our individual contributions. Any compensation range provided for a role is an estimate determined by available market data. The actual amount may be higher or lower than the range provided considering each candidate's knowledge, skills, abilities, and geographic location. If you have questions, please speak to your recruiter about the flexibility and detail of our compensation philosophy.

Who We Are

DarkVision Technologies Inc. is a Canada-based tech company disrupting the industrial imaging market since 2013. We have created the world's most advanced acoustic-based imaging platform. We are packaging it into multiple new product lines, revolutionizing how our clients quantify and visualize the integrity of their critical assets.

Backed by Koch Inc., one of the world's largest privately held companies, DarkVision's team of Mechanical, Skunkworks, Electrical, Software, and Software Engineer, ML Inferences is rapidly expanding to meet the demand for the company's current and upcoming products.

We allow employees to work on cutting-edge technologies that blend science with real-world applications. We invite you to join our team for the exciting journey ahead as we become the global leader in industrial imaging.

At Koch, employees are empowered to do what they do best to make life better. Learn how our business philosophy helps employees unleash their potential while creating value for themselves and the company.

Additionally, everyone has individual work and personal needs. We seek to enable the best work environment that helps you and the business work together to produce superior results.

How to Apply

If you have the above qualifications, we would like to hear from you. We thank all applicants in advance, but please be advised that only those selected for an interview will be contacted.

We are an equal opportunity employer. If you require accommodation or assistance at any time during the application or selection processes, please submit a request by following the directions located in the FAQ section at the bottom of the kochcareers.com webpage.

Successful candidates will be required to complete a criminal background check.

Keywords: Software Engineer, ML Inference, machine learning, AI, Inference Pipeline, Systems Engineering, GPU Optimization, Performance Profiling, PyTorch, ONNX, TensorRT, Computer Vision, Industrial Imaging, Deep Learning, MLOps, Data Pipelines, Production Software, Automation.

#LI-JN1 Apply

Management Jobs You might also like