AI Engineer

Supra ITS

Mississauga

On-site

CAD 110,000 - 170,000

Full time

8 days ago

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

Supra ITS is seeking an experienced engineer to own agent runtime and AI-adjacent backend. You will design agent loops, manage tool calls, retrieval, and secure LLM traffic, shipping with TDD and ADR-driven architecture decisions.

You will collaborate across teams to implement, test, and deploy features for on-prem and dual-cloud setups. Expect emphasis on production quality, safety, and scalable AI workflows.

Qualifications

  • Strong Python in production services (FastAPI or similar).
  • Hands-on LLM application work: function/tool calling, RAG, prompts + eval loops.
  • Familiar with LangChain/LangGraph and debugging multi-turn tool traces.
  • Solid SQL/Postgres expertise with migrations, RLS considerations.
  • TDD habit: you write the failing test first for services that can lie to users (file extract, persist, authz).
  • Clear written design: explain trade-offs (e.g. hydrate files from DB vs S3).
  • 3–5+ years software engineering, including 1–2+ years shipping LLM features.

Responsibilities

  • Design and implement agent loops: system prompts, tool selection, state (messages, virtual FS, conversation persistence), streaming SSE
  • Add or harden tools (MCP and native) with clear failure modes — no silent drops, no leaking secrets in client errors
  • Improve retrieval quality (chunking, embeddings, hybrid search, citations grounded in tool output)
  • Integrate the LiteLLM gateway: routing, timeouts, streaming, per-agent/skill attribution
  • Keep chat attachments, durable conversation artifacts, and knowledge corpus on the correct stores
  • Write pytest (and Vitest when you change UI contracts); trace work to user stories and ADRs
  • Partner with Product, Architect, QA, and UX on sandbox-first proofs before entitle/deploy
  • Support on-prem and dual-cloud constraints: Postgres as source of truth, no vendor-lock

Skills

Python
LLM apps
LangChain / LangGraph
SQL / Postgres
TDD
Software engineering 3–5+ years

Tools

FastAPI
LangChain
RAG
PostgreSQL

Job description

About Supra ITS

Supra ITs builds an enterprise agent platform that customers run in the cloud or on-prem. Admins create and entitle custom agents (prompts, tools, knowledge). End users chat with those agents over documents, SQL, policy RAG, and operational systems (e.g. ticket triage, order audit, product intelligence).

The role

You will own agent runtime and AI-adjacent backend: how skills are built, how tools are called, how retrieval and file context work, and how LLM traffic is routed, attributed, and kept safe. You will ship with Test Driven Development, architecture decision records, and story-level acceptance criteria — not notebooks that never reach production.

You Will Work Across
  • LangGraph / Deep Agent graphs (ReAct, multi-step research, custom skills)
  • Tooling: native file/SQL/todo tools, MCP (policy search, Graph files, customer systems)
  • RAG & retrieval: Qdrant collections per agent, hybrid/keyword fallback, knowledge ingest vs chat attachments
  • AI Gateway: LiteLLM, model aliases, spend attribution, fail-clear routing
  • Product surfaces: Agent Chat, Admin Builder, Sandbox, entitlements/deploy

Frontend (React/TypeScript) is not the primary hire, but you will touch chat/sandbox contracts when the agent loop or upload path changes.

What You Will Do
  • Design and implement agent loops: system prompts, tool selection, state (messages, virtual FS, conversation persistence), streaming SSE
  • Add or harden tools (MCP and native) with clear failure modes — no silent drops, no leaking secrets in client errors
  • Improve retrieval quality (chunking, embeddings, hybrid search, citations grounded in tool output)
  • Integrate the LiteLLM gateway: routing, timeouts, streaming, per-agent/skill attribution
  • Keep chat attachments, durable conversation artifacts, and knowledge corpus on the correct stores (they are not the same)
  • Write pytest (and Vitest when you change UI contracts); trace work to user stories and ADRs
  • Partner with Product, Architect, QA, and UX on sandbox-first proofs before entitle/deploy
  • Support on-prem and dual-cloud constraints: Postgres as source of truth, no “works only on one vendor’s blob store”
Must-have Qualifications
  • Strong Python in production services (FastAPI or similar)
  • Hands-on LLM application work: function/tool calling, RAG, prompt + eval loops — not only wrapping a chatbot widget
  • Comfort with LangChain / LangGraph (or equivalent graph/agent orchestration) and debugging multi-turn tool traces
  • Solid SQL / Postgres; you can reason about migrations, RLS, and “this belongs in a row vs object storage”
  • TDD habit: you write the failing test first for services that can lie to users (file extract, persist, authz)
  • Clear written design: you can explain trade-offs (e.g. hydrate files from DB vs S3) to non-research stakeholders
  • [3–5+ years] software engineering, including [1–2+] years shipping LLM features
Nice to have
  • Vector DBs (Qdrant), embeddings pipelines, hybrid/BM25 + dense retrieval
  • MCP servers or OpenAI-compatible tool catalogs
  • LiteLLM, Azure OpenAI / Anthropic, gateway or router experience
  • React/TypeScript (Vite) enough to wire FormData, SSE, and admin sandbox
  • Knowledge graphs / Neo4j (Product Intelligence / Deep Research)
  • Enterprise authz (JWT, RBAC, entitlements), OWASP-minded reviews
  • Docker/Kubernetes, AWS and/or GCP, on-prem install empathy
  • Domain exposure: manufacturing/distribution, ticketing (ConnectWise-class), policy/audit workflows
What This Role Is Not
  • Training or fine-tuning foundation models as the main job
  • Pure data science / notebook research with no production bar
  • Prompt-only “AI consultant” without owning the runtime
How We Work

Stories → ADRs → TDD implementation → review → QA. Caps and fail-closed behavior are product requirements (e.g. max files per turn, no silent truncate). You will be expected to prove behavior in Admin Sandbox the same way production Chat works.

Skills: langchain,sql,python

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Staff AI Builder
Staff AI Builder

robotsandpencils • Canada

On-site
CAD 120,000 - 170,000
Staff AI Developer - Toronto
Staff AI Developer - Toronto

robotsandpencils • Toronto

On-site
CAD 180,000 - 240,000
Staff AI Builder
Staff AI Builder

Robots and Pencils • Canada

Remote
CAD 177,000 - 244,000
Applied Artificial Intelligence Engineer
Applied Artificial Intelligence Engineer

ContactMonkey Inc. • Toronto

Hybrid
CAD 120,000 - 190,000
Hybrid Work
Employee Stock Options
Personal Development Budget
+5
AI Engineer
AI Engineer

hireVouch • Toronto

On-site
CAD 90,000 - 130,000
30 days PTO annually
Health, dental, and wellness benefits
Tech allowance
+2
Senior AI-Native Full-Stack Engineer
Senior AI-Native Full-Stack Engineer

GuruLink • Montreal

Remote
CAD 140,000 - 180,000
Staff Software Engineer - AI Engineering
Staff Software Engineer - AI Engineering

hireVouch • Canada

Remote
CAD 150,000 - 190,000
Software Developer
Software Developer

Verlo • San Juan de Terranova

On-site
CAD 90,000 - 140,000
Options
Health and dental benefits
Lunch served at the office
Staff Engineer / AI Builder
Staff Engineer / AI Builder

F5 Remote Jobs • Canada

Remote
CAD 177,000 - 244,000
Principal AI Engineer (Context, Agents and Context)
Principal AI Engineer (Context, Agents and Context)

Elastic • Ottawa

Hybrid
CAD 140,000 - 210,000
Health coverage
Flexible location
Vacation days
+3