Bachelor's degree in Computing or Engineering or equivalent experience.
1+ years as a Junior AI Software Developer or similar role.
Strong proficiency in Python for clean and maintainable code.
Understanding of software architecture fundamentals and scalable design.
Excellent debugging and troubleshooting skills.
Experience with Git and resolving merge conflicts.
Responsibilities
Build and enhance AI/ML features, including LLMs and RAG.
Develop backend services and pipelines using Python.
Integrate cloud services like AWS Bedrock into AI features.
Design and maintain Agent knowledge bases and workflows.
Provide feedback on development schedules to Technical Lead or Project Manager.
Review team members' pull requests and provide constructive feedback.
Contribute to risk management and code quality for the project.
Benefits
Hybrid work model (in-office 3 days per week).
Opportunity for mentorship and professional growth.
Engagement in architectural discussions and decision-making.
Access to cutting-edge AI technologies and tools.
Full Job Description
Job Summary
The Intermediate AI Software Developer is fully competent in software implementation, focusing on AI features and functionality for a project.
They are expected to own and improve features in a project, with some supervision.
Duties and Responsibilities
The standard responsibilities for all AI Software Developers include but are not limited to:
Build and enhance Artificial Intelligence (AI) / Machine Learning (ML) features in projects, which may include Large Language Models (LLMs), Retrieval-Augmented Generation (RAG), and Agent orchestration tools like Strands.
Develop backend services and pipelines in Python and other languages.
Integrate cloud services, such as AWS Bedrock, into our AI features.
Help design and maintain Agent knowledge bases, embedding workflows, and retrieval strategies.
Provide feedback to the Technical Lead or Project Manager for development schedules.
Review pull request of other team members, providing feedback when changes are needed.
Contribute to the risk management activities of the Project Team.
Contribute to code quality, testing, and documentation for the project.
Participate in architectural discussions and propose improvements.
Additional responsibilities specific to AI Software Developer - Intermediate include, but are not limited to:
Own end-to-end delivery of mid-sized AI/ML features, from design to implementation to release, with minimal supervision.
Break down requirements into technical tasks and milestones.
Produce technical designs for AI services and agent workflows.
Evaluate, select, and implement RAG patterns for specific use cases.
Improve prompt, retrieval, and agent orchestration reliability through the use of guardrails, structured outputs, and tool-use patterns.
Mentor Junior developers through code reviews and technical guidance.
Authority
To make implementation and design decisions within assigned feature area, selecting patterns and approaches that align with overall architecture.
To review and approve pull requests, enforcing coding standards, test coverage expectations, and security considerations.
To propose and implement improvements to AI workflows and supporting pipelines, within established architectural guardrails.
To define and maintain technical tasks and estimates for assigned work.
To recommend tooling and libraries to improve productivity, reliability, or quality.
To make operational decisions for services they own, in alignment with team processes.
Required skills and abilities
Strong proficiency in Python, creating clean and maintainable code.
Understanding of software architecture fundamentals and scalable design.
Excellent debugging and troubleshooting skills.
Experience with Git, pull requests, and resolving merge conflicts.
Experience writing unit tests and working with frameworks like pytest.
Ability to follow and contribute to coding standards and participate in code reviews.
Preferred skills and abilities
Interpersonal and mentorship skills.
AI / Machine Learning Skills: Exposure to Large Language Models (LLMs) and working with model APIs, understanding of Retrieval-Augmented Generation (RAG) concepts, familiarity with embeddings and vector databases, experience with prompt engineering or building LLM-driven features, interest in multi-agent systems or agentic workflows (Strands experience is a plus)
AWS Cloud Experience: Exposure to AWS Lambda or serverless development, familiarity with AWS Bedrock or LLM-related cloud services, experience with DynamoDB and exposure to relational cloud databases (e.g., Amazon Aurora), basic understanding of Amazon S3, CloudWatch, or IAM concepts, interest in working with AWS serverless and distributed architectures, experience with Terraform or CloudFormation is a bonus
Nice-to-Have: RDF / semantic data or graph databases, event-driven architecture (SNS, SQS, EventBridge), containerization (Docker, ECS, Kubernetes), experience with production AI/ML
Minimum qualifications and experience
Bachelor of Science (Computing or Engineering), or equivalent education, training, and/or experience.
One or more years as a Junior AI Software Developer or equivalent education, training, and/or experience.
Work Location: Hybrid (In-office 3 days per week, subject to change) City: Surrey Type: full-time, Permanent Salary: 90,000 - 110,000 CAD This range reflects the minimum and maximum target payable for the base salary of new hires across all Canadian locations. Actual compensation may vary outside this range and is dependent on various factors.