Responsibilities
- Building machine learning-based software solutions;
- Collaborating with business stakeholders to prototype machine-learning solutions rapidly;
- Conducting comparisons to existing algorithms and baselines;
- Reviewing, extending, and optimizing prototype solutions;
- Collaborating with the engineering team to integrate algorithms into products;
- Developing reusable internal tools to facilitate research prototyping;
- Supporting projects with thorough documentation, design decisions, and capabilities.
- In this role, you will communicate and interact frequently with RBC partners and/or employees located across Canada and/or worldwide.
Requirements
- A master’s or PhD degree in computer science, mathematics, physics, economics or equivalent;
- 2+ years of applied machine learning experience in a high-responsibility, minimal-supervision environment;
- Experience with writing modular, robust, scalable software in Python 3.x;
- Knowledge of professional software engineering best practices for the full software development life cycle, including testing methods, coding standards, code reviews, and source control management;
- Strong communication skills and a collaborative attitude.
Nice to Have
- Expertise in a few of the following areas: deep learning, natural language processing, information retrieval;
- Experience with deep learning packages such as PyTorch, JAX, or Tensorflow;
Benefits
- Become part of a team that thinks progressively and works collaboratively. We care about seeing each other reach full potential;
- A comprehensive Total Rewards Program including bonuses and flexible benefits, competitive compensation, commissions, and stock options where applicable;
- Leaders who support your development through coaching and managing opportunities;
- Ability to make a difference and lasting impact from a local-to-global scale.
Additional Information
- Disability-related accommodations during the application process are available upon request.


