Staff Software Engineer
On-siteToronto, Ontario, Canada
Job Summary
Design and optimize AI services powering enterprise applications, focusing on scalable architecture, API design, and system performance. Architect software solutions using Python and Golang, implementing best practices for code quality, caching, and distributed systems across hybrid on-prem and cloud environments. Collaborate with infrastructure teams and researchers to ensure reliability of agentic workflows and model serving. Lead technical design decisions for data access layers and microservices integration. Work within RBC's AI Group to drive the shift from early-stage projects to scaled, client outcomes in generative and agentic AI.
Required Qualifications
- Strong and relevant experience designing and implementing distributed systems and software architectures for AI services
- Proven expertise in software engineering practices, including code review, testing, design patterns, and software architecture
- Hands-on experience building and deploying scalable applications and services using modern frameworks and technologies
- In-depth knowledge of containerization technologies such as Docker and Kubernetes or OpenShift Container Platform (OCP4)
- Experience designing and implementing APIs, event-driven, microservices, and service-oriented architectures
- Strong proficiency in Python and Golang
- Experience optimizing application performance, implementing caching strategies, and tuning distributed systems
- Hands-on experience building and deploying applications across hybrid environments on-prem and major cloud environments, such as AWS and Azure
- Experience designing data access layers and working with databases (both SQL and NoSQL such as MongoDB) in production environments
- Understanding of machine learning model serving, inference optimization, and ML system design patterns
- Experience designing and building infrastructure for deploying and managing agentic workflow systems and self-hosted ML models
- Experience with observability, monitoring, and logging practices to ensure visibility into system behaviour and performance
- Agentic AI
- Application Performance Management (APM)
- CI/CD
- Domain Driven Design (DDD)
- Event Driven Architecture (EDA)
- Kubernetes
- Model Deployment
- Model Evaluation
- Non Relational Databases
- Python (Programming Language)
- SQL Databases
- Systems Architecture
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.