RBC Dominion Securities - 735 Jobs
Toronto, ON
Job Details:
Benefits:
Job Description
What is the opportunity?
We are seeking a highly skilled and experienced lead Python engineer to take ownership of building and maintaining our production-grade, reliable, and scalable systems for financial risk management and MLOps platform for risk modeling. This role is for an engineer who is passionate about operational excellence and clean code.
The role is ideal for someone who takes pride in writing robust, fault-tolerant, self-healing, maintainable code, ensuring system reliability, and delivering operationally excellent solutions spanning both high-throughput batch processing and responsive web applications. While our primary environment is Linux-based VMs, a strong understanding of AWS deployment patterns is also highly valued.
You'll work closely with architecture, DevOps, business, and analytics teams to deliver systems that meet enterprise-grade standards for performance, observability, security, and maintainability.
We in Global Functions Technology (GFT) value positive attitude, willingness to learn, open communication, teamwork, and commitment to clean, secure, well-tested, and maintainable code.
GFT is part of RBC's Technology and Operations division. GFT's impact is far-reaching as we collaborate with partners from across the company to deliver innovative and transformative IT solutions. Our clients represent Risk, Finance, HR, CAO, Audit, Legal, Compliance, Financial Crime, Capital Markets, Personal and Commercial Banking and Wealth Management. We also lead the development of digital tools and platforms to enhance collaboration.
What will you do?
Design, develop, test, deploy, and maintain production-ready Python code for both batch data processing, APIs, and web applications.
Ensure robustness and reliability through strong design, exception handling, structured error recovery, and graceful degradation.
Implement comprehensive logging, monitoring, and observability for operational insight into running systems.
Manage isolated and reproducible environments using virtual environments (e.g., uv, venv, poetry, pipenv, conda), and packaging to ensure deployment consistency and reproducibility
Build and maintain CI/CD pipelines with tools such as GitHub Actions, automating build, test, and deployment workflows.
Optimize applications for performance and scalability on RHEL VMs and adapt for AWS deployment (EC2, ECS, Lambda) where needed.
Integrate applications with various data sources, including databases, HDFS, S3, message queues, and external APIs
Collaborate closely with Business, DevOps, and SRE teams to ensure smooth transitions from development to production.
Participate in code reviews, implementing best practices for readability, maintainability, and performance.
Contribute to and enforce engineering standards, including automated testing, code reviews, templates, frameworks, toolchains, operational processes, deployment reliability and technical documentation.
Develop and distribute reusable Python package.
Who You Are
You are a pragmatic problem-solver who prioritizes robustness and reliability above all else in production systems.
You take full ownership of solutions, driving them end-to-end from initial design through to successful deployment and monitoring.
You thrive in a highly collaborative environment and are passionate about mentoring others and improving engineering practices.
You think in systematic repeatable and long-term success, and not a one-time success
What do you need to succeed?
Must Have
5+ years of professional experience developing and deploying production-grade backend applications using Python.
Deep expertise in writing robust, maintainable, and well-tested backend code.
Proven ability to design and implement fault-tolerant error and exception handling strategies.
Experience with one of the Python web frameworks such as FastAPI, Flask, or Django.
Experience with Angular or React in building web applications
Strong experience with structured logging frameworks and operational visibility practices.
Solid understanding of Python design patterns and enterprise integration patterns.
Hands-on experience with virtual environments and dependency management tools.
Solid understanding of CI/CD automation (GitHub Actions preferred) and Git-based workflows.
Strong background in deploying and running applications on Linux VMs.
Experience in designing databases (relational and/or NoSQL) and working with HDFS, S3, and API integrations.
Excellent debugging, troubleshooting, and performance optimization skills.
Experience with Developing and distributing reusable Python packages
Excellent communication and collaboration skills, with the ability to work effectively with cross-functional teams.
Nice to Have
Experience deploying, monitoring, and debugging applications in the AWS ecosystem (e.g., EC2, ECS, Lambda, S3, RDS).
Familiarity with containerization (Docker) and infrastructure as code (Terraform, CloudFormation).
Experience with asynchronous programming (asyncio, Celery).
Exposure to distributed or parallel processing frameworks (e.g., Spark, Dask).
Experience with converting Python code to Cython to improve performance.
Familiarity with observability platforms (e.g., Prometheus, Grafana, CloudWatch, ELK).
Experience or hands-on knowledge working with other languages (C#, Java, Rust, C/C++)
Working experience using the GenAI tools for developer productivity.
Experience in the financial services or risk analytics domain.
Why Join Us
This is an opportunity to make a meaningful impact on our core technology stack and engineering practices.
You'll work on systems that are mission-critical, highly visible, and designed for scalability and reliability.
We value clean code, strong automation, and a culture of continuous improvement and operational excellence.
If you're passionate about building robust, production-grade systems and shaping the foundation of next-generation backend services — we'd love to hear from you.
What's in it for you?
We thrive on the challenge to be our best, progressive thinking to keep growing, and working together to deliver trusted advice to help our clients thrive and communities prosper. We care about each other, reaching our potential, making a difference to our communities, and achieving success that is mutual.
A comprehensive Total Rewards Program including bonuses and flexible benefits, competitive compensation, commissions, and stock where applicable
Leaders who support your development through coaching and managing opportunities
Ability to make a difference and lasting impact
Work in a dynamic, collaborative, progressive, and high-performing team
A world-class training program in financial services
Flexible work/life balance options
Opportunities to do challenging work, to take on progressively greater accountabilities, to building close relationships with clients
Access to a variety of job opportunities across business and geographies.
#LI-Post
#TECHPJ
Job Skills
Active Learning, Agile Methodology, Application Integrations, Detail-Oriented, Emerging Technologies, Enterprise Application Delivery, Group Problem Solving, Programming Languages, Software Development Life Cycle (SDLC)Additional Job Details
Address:
RBC CENTRE, 155 WELLINGTON ST W:TORONTOCity:
TorontoCountry:
CanadaWork hours/week:
37.5Employment Type:
Full timePlatform:
TECHNOLOGY AND OPERATIONSJob Type:
RegularPay Type:
SalariedPosted Date:
2025-03-25Application Deadline:
2025-11-30Note: Applications will be accepted until 11:59 PM on the day prior to the application deadline date above
Inclusion and Equal Opportunity Employment
At RBC, we believe an inclusive workplace that has diverse perspectives is core to our continued growth as one of the largest and most successful banks in the world. Maintaining a workplace where our employees feel supported to perform at their best, effectively collaborate, drive innovation, and grow professionally helps to bring our Purpose to life and create value for our clients and communities. RBC strives to deliver this through policies and programs intended to foster a workplace based on respect, belonging and opportunity for all.
Join our Talent Community
Stay in-the-know about great career opportunities at RBC. Sign up and get customized info on our latest jobs, career tips and Recruitment events that matter to you.
Expand your limits and create a new future together at RBC. Find out how we use our passion and drive to enhance the well-being of our clients and communities at jobs.rbc.com.