Machine Learning Engineer II (Underwriting ML)

Affirm

Kitchener

Remote

CAD 133,000 - 183,000

Full time

3 days ago
Be an early applicant
Application generator

An application made for this job — a tailored resume and cover letter that speak straight to the posting.

Get past ATS filters

Benefits offered by this job

Health coverage for you and dependents
Monthly tech stipends
Flexible time off
Equity opportunity

Job summary

Affirm is seeking an ML Engineer for the Underwriting ML team to build real-time decision models and risk-evaluated value. You’ll work on feature pipelines, model prototyping, and productionizing models with monitoring and retraining workflows.

Ideal candidates bring 2+ years of ML experience or a PhD, strong Python, and expertise with gradient-boosted trees and PyTorch. Remote-first in Canada with strong collaboration across teams.

Qualifications

  • 2+ years as ML engineer or PhD in a related field.
  • Strong Python skills and production-grade coding.
  • Experience with gradient-boosted trees (LightGBM/XGBoost/CatBoost) and PyTorch.
  • Experience with distributed data processing (Spark).
  • Experience with ML lifecycle tools (Kubeflow, Airflow, MLflow).
  • Proficient in using AI-powered developer tools to accelerate iteration.

Responsibilities

  • Develop and iterate on underwriting prediction models for tabular and sequential data.
  • Build and scale feature pipelines and training datasets with internal and external signals.
  • Prototype modeling ideas, run offline experiments, and productionize top approaches with risk controls.
  • Integrate models into batch and real-time decision systems, improving reliability and latency.
  • Instrument model and data health; define retraining and backtesting workflows.
  • Collaborate with Engineering, Risk Analytics, Product, and ML Platform; communicate results clearly.

Skills

Python
Production-grade code
ML modeling
Communications

Education

Bachelor's degree or equivalent

Tools

LightGBM
XGBoost
CatBoost
PyTorch
Spark
Airflow
MLflow

Job description

At Affirms we exist for the moments that matter—giving people a clear, predictable way to pay over time, with no hidden fees, no surprises, and no tradeoffs on what matters most.

Affirm is reinventing credit to make it more honest and friendly, giving consumers the flexibility to buy now and pay later without any hidden fees or compounding interest.

On the Underwriting ML team, you’ll build and improve machine learning systems that make real-time transaction decisions, assessing the repayment risk and expected value of every affirm checkout. You’ll work closely with experienced ML engineers, platform partners, and cross-functional stakeholders to take models from idea to prototype to production, and to keep them healthy with strong measurement and monitoring as user behavior and macroeconomic conditions evolve.

What You’ll Do
  • You will develop and iterate on underwriting prediction models using a mix of approaches for tabular and sequential data
  • You will build and scale feature pipelines and training datasets from proprietary and third-party signals, partnering with data and platform teams when needed.
  • You will prototype new modeling ideas and features, run offline experiments, and drive the best-performing approaches into production with appropriate risk controls.
  • You will help productionize models: integrate into batch and/or real-time decision systems, and improve reliability, latency, and operational robustness.
  • You will instrument and monitor model and data health, and help define retraining/backtesting workflows
  • You will collaborate across Engineering, Risk Analytics, Product, and ML Platform to define requirements, evaluate tradeoffs, and communicate results clearly to both technical and non-technical audiences.
What We Look For
  • You have a total of 2+ years of experience as a machine learning engineer or a PhD in a relevant field.
  • Strong Python skills and experience writing production-quality code.
  • Experience building and evaluating models for classification problems (preferably gradient-boosted decision trees like LightGBM/XGBoost/CatBoost, or similar).
  • Experience with a deep learning framework (PyTorch preferred).
  • Experience working with distributed data processing or parallel compute frameworks (Spark preferred; Ray/Dask or similar).
  • Experience with ML lifecycle tooling for training orchestration, experimentation, and model monitoring (e.g., Kubeflow, Airflow, MLflow, or equivalent internal platforms).
  • Proficient in using AI-powered developer tools (e.g., Claude Code, Cursor, or similar) to accelerate iteration, debugging, and code quality as part of day-to-day development workflows.
  • You have mastered taking a simple problem or business scenario into a solution that interacts with multiple software components, and executing on it by writing clear, easily understood, well tested and extensible code.
  • You are comfortable navigating a large code base, debugging others' code, and providing feedback to other engineers through code reviews.
  • Your experience demonstrates that you take ownership of your growth, proactively seeking feedback from your team, your manager, and your stakeholders.
  • You have strong verbal and written communication skills that support effective collaboration with our global engineering team.
  • This position requires either equivalent practical experience or a Bachelor’s degree in a related field.

Pay Grade - L

Equity Grade - 5

Employees new to affirm typically come in at the start of the pay range. affirm focuses on providing a simple and transparent pay structure which is based on a variety of factors, including location, experience and job-related skills.

Base pay is part of a total compensation package that may include monthly stipends for health, wellness and tech spending, and benefits (including 100% subsidized medical coverage, dental and vision for you and your dependents). In addition, the employees may be eligible for equity rewards offered by affirm holdings, inc. (parent company).

CAN base pay range per year: $133,000 - $183,000

Location - Remote Canada

This remote role is open only to candidates residing in Alberta, British Columbia, Manitoba, New Brunswick, Newfoundland and Labrador, Nova Scotia, Ontario, Prince Edward Island, or Saskatchewan.

Remote

Remote-first with flexibility built in

Affirm is proud to be a remote-first company. Most roles can be done from almost anywhere within the country of employment. Some positions may occasionally require in-person work at an affirm office, and a few are office-based due to the nature of the work. All new hires will be invited to attend an in-person onboarding experience.

Benefits Designed For You

Our benefits reflect our commitment to care, transparency, and flexibility. Here are a few highlights:

  • Health coverage at no cost: We cover 100% of premiums for employees and their dependents.
  • Spending stipends: Monthly stipends support your tech setup, and the ability to choose health and wellness options that are right for you.
  • Time off to recharge: Flexible time off and generous holiday calendars help you rest when you need to.
  • Own a piece of what you build: Our employee stock purchase plan (ESPP) lets you buy affirm stock at a discount.

We’re committed to providing an inclusive interview process, including accommodations for candidates with disabilities. If you need support, we’re happy to help.

For positions based in San Francisco or Los Angeles: affirm considers qualified applicants with arrest and conviction records, as required by law.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Machine Learning Engineer II (Underwriting ML)
Machine Learning Engineer II (Underwriting ML)

Affirm • Winnipeg

Remote
CAD 133,000 - 183,000
Remote work
Health coverage
Stipends
+1
Senior Machine Learning Engineer (Fraud)
Senior Machine Learning Engineer (Fraud)

Affirm • Canada

Hybrid
CAD 153,000 - 213,000
Health coverage for you & dependents
Monthly tech/spending stipends
Flexible time off
Staff Software Engineer, Backend (Search)
Staff Software Engineer, Backend (Search)

Candidate • Canada

Remote
CAD 181,000 - 241,000
Health benefits
Stipends for tech setup
Time off & holidays
+1
Staff Software Engineer, Backend (Trust and Safety)
Staff Software Engineer, Backend (Trust and Safety)

Affirm • Regina

Remote
CAD 181,000 - 241,000
Health coverage for you and dependents
Tech setup stipends
Flexible time off
Staff Software Engineer, Backend (Trust and Safety)
Staff Software Engineer, Backend (Trust and Safety)

Affirm • Windsor

Remote
CAD 181,000 - 241,000
Health coverage
Tech stipends
Flexible time off
+1
Software Engineer II (Money Movement & Card Ledger)
Software Engineer II (Money Movement & Card Ledger)

Affirm • Halifax

Remote
CAD 133,000 - 183,000
Comprehensive health coverage for you/
Monthly tech stipends
Flexible time off
+1
Staff Software Engineer, Backend (Identity Decisioning)
Staff Software Engineer, Backend (Identity Decisioning)

Affirm, Inc. • Canada

Remote
CAD 181,000 - 241,000
100% covered premiums
Monthly tech stipends
Comprehensive health benefits for you/
+1
Software Engineer II, Backend (Streaming)
Software Engineer II, Backend (Streaming)

Affirm, Inc. • Canada

Remote
CAD 133,000 - 183,000
Health coverage
Spending stipends
Time off
+1
Staff Software Engineer, Backend (Identity Decisioning)
Staff Software Engineer, Backend (Identity Decisioning)

Affirm • Toronto

Remote
CAD 181,000 - 241,000
Health coverage
Stipends for tech setup
Flexible time off
+1
Staff Software Engineer, Backend (Continuous Integration)
Staff Software Engineer, Backend (Continuous Integration)

Affirm • Toronto

Remote
CAD 181,000 - 241,000
Remote-first
Health coverage
Equity rewards
+1