Back to results

Senior AI Engineer – JVM Engineering (Java/Kotlin), Knowledge Graphs, MCP

  • Toronto, ON, Canada

Full-time

Applications open in a new tab.

Job details

Job type
Full-time
Apply by
Posting language
English
Posted

Original job description

Role: Senior AI Engineer

Work Schedule: Hybrid, Tuesday to Thursday, 8:30 AM to 5:00 PM EST (3 days per week required in office)

We are looking for an experienced and highly motivated Senior AI Engineer to join the Technology Strategy team.

In this role, you will design and build the agentic workflow that breaks a complex analytical engagement into stages, coordinates large language models and tools, and keeps every result grounded in source evidence. You will be accountable for how the system stores and retrieves knowledge, how it exposes its capabilities to other agents and assistants, and how it proves that what it produces is faithful to the source.

Position Responsibilities

You are an expert in agentic systems, knowledge graphs, AI-enabled document generation and rendering, with extensive knowledge in cloud infrastructure, the AI service stack, CI/CD, and observability. You will work closely with engineering and business partners to deliver an AI system that is accurate, explainable, safe to operate, and presentable to the business.

1. Design and build the agentic analysis workflow

• Model a long-running, multi-stage analytical workflow as a sequence of AI-agent steps that can pause, resume, and recover without losing work.
• Orchestrate large language models and tools (retrieval, calculation, rules, and structured extraction) into reliable, traceable steps.
• Engineer prompts and structured-output contracts so each step returns validated, machine-usable results rather than free text.
• Build on an event-sourced service framework (for example, the Akka SDK) where state, decisions, and evidence are persisted at every step.

2. Build and operate the knowledge graph

• Design and run the knowledge graph that stores entities, relationships, and provenance extracted from the source corpus (for example, Neo4j or MongoDB Atlas).
• Build the ingestion and extraction pipeline that turns raw documents into a validated, queryable graph, with every fact citing its source.
• Implement graph-based and vector retrieval (GraphRAG and embeddings) so agents answer from grounded evidence rather than memory.

3. Expose capabilities through open agent interfaces

• Build Model Context Protocol (MCP) tool servers and agent-to-agent (A2A) interfaces, so the system's capabilities are available to external assistants and to larger multi-agent workflows.
• Integrate with MCP-compatible clients and low-code agent builders, for example Microsoft Copilot Studio agents, so business users can query the graph and trigger analysis conversationally.
• Build a conversational interface that answers questions strictly from the grounded knowledge graph.

4. Set a high bar for grounding, evaluation, and safety

• Implement anti-hallucination controls: every output statement traces to a cited source, and anything unsupported is flagged or withheld.
• Build automated evaluation (section-level scoring, regression tests, edge-case coverage, and human-review rubrics) and turn it into clear acceptance criteria.
• Add guardrails for prompt injection, data minimization, and safe output, with explicit human-in-the-loop checkpoints, and produce the evidence that AI and model-governance review will ask for.

5. Get it to production, and keep it there

• Own the path from code to production: build and deployment pipelines, environment configuration, secrets, and access, on an enterprise container and agent-hosting platform.
• Work with the cloud AI building blocks the system depends on: managed model endpoints, search and retrieval, document storage, document intelligence (OCR), and the graph datastore.
• Put logging, metrics, tracing, and alerting across the workflow, define health checks and recovery for long-running jobs that must resume after failure, and watch the cost, latency, and rate limits of model and retrieval calls before they become an incident.

6. Stand behind the deliverables

• Own the data contract between the analytical layer and the rendering layer, so structured output maps cleanly onto rendered components.
• Keep generation deterministic and testable: the same input produces the same document, so a regression fails the build instead of surfacing in a business review.
• Work with the rendering toolchain (for example Apache POI, PDFBox, or pptxgenjs) closely enough to diagnose a broken deliverable, extend a template, and hold the line on structural fidelity: required sections, tables, ordering, and cross-format consistency.

Required Qualifications

• 6-10 years building production software, including recent hands-on delivery of AI or large-language-model systems beyond prototypes.
• Strong JVM engineering (Java; Kotlin or Scala a plus) with solid practices: Git workflows, code review, automated testing, structured logging, and clean design.
• Hands-on experience with modern GenAI patterns: prompt engineering, structured or JSON outputs, tool and function calling, retrieval-augmented generation, and agentic workflows.
• Experience designing and querying a graph or document database (Neo4j and Cypher, or MongoDB Atlas) and using vector search and embeddings for semantic retrieval.
• A track record of owning your own delivery path: you have taken something you built through a pipeline into production and operated it, rather than handing it over.
• Practical experience evaluating non-deterministic systems: test design, quality scoring, regression suites, and translating evaluation into business-ready acceptance criteria.
• Demonstrated ability to design and explain solution architecture (data flow, runtime flow, interfaces, failure modes, and controls) and to explain model behaviour, limitations, and trade-offs in plain language.

Adjacent Areas

• Platform and reliability: a major cloud (Azure preferred), containerized deployment with Docker and Kubernetes, CI/CD, observability, and automated quality gates on a service you ran in production.
• Deliverable generation and
More about this job

Responsibilities

Design and build agentic analytical workflows that coordinate large language models and tools while ensuring results are grounded in source evidence. Manage the knowledge graph ingestion pipeline and expose system capabilities through open agent interfaces like MCP.

Requirements

Requires 6-10 years of experience in production software development with strong JVM engineering skills and hands-on expertise in GenAI patterns. Candidates must demonstrate proficiency in graph databases, cloud infrastructure, and the ability to own the full delivery path to production.

Skills

  • Java
  • Kotlin
  • Scala
  • Agentic systems
  • Large language models
  • Knowledge graphs
  • Neo4j
  • MongoDB Atlas
  • GraphRAG
  • Model Context Protocol
  • Cloud infrastructure
  • CI/CD
  • Observability
  • Prompt engineering
  • Vector search
  • Kubernetes

Visa sponsorship

Not detected in the job text

Categories

  • Technology
  • Software
  • Data & Analytics
  • Engineering
  • Consulting

Keywords

  • JVM
  • Java
  • Kotlin
  • Scala
  • Agentic workflows
  • Large language models
  • Knowledge graphs
  • MCP
  • Neo4j
  • MongoDB Atlas
  • GraphRAG
  • Embeddings
  • Cloud infrastructure
  • CI/CD
  • Observability
  • Akka SDK
  • Azure
  • Docker
  • Kubernetes
  • Prompt engineering
  • Vector search
  • Document intelligence
  • OCR
  • Apache POI
  • PDFBox
  • Pptxgenjs
  • Git
  • Data engineering
  • Software architecture
  • AI governance

Report this job