Machine Learning Software Engineer


Join Us


Machine Learning Software Engineer

What's the opportunity?

We’re looking for an enthusiastic software developer who’s excited by the opportunity of being at the forefront of machine learning technology, and working on extremely challenging problems. As a Machine Learning Software Engineer, you’ll be responsible for owning and delivering a project end to end – everything from literature review and data pre-processing to implementing machine learning algorithms and front-end development.

At Borealis AI, you’ll be joining a team that works directly with leading researchers in machine learning, has access to rich and massive datasets, and offers the computational resources to support ongoing development in areas such as reinforcement learning, unsupervised learning and computer vision. You can find out more about our research areas at

Your responsibilities include:

  • Building machine learning-based software solutions for solving important problems;
  • Prototyping solutions to evaluate the impact of selected algorithms on the target problem;
  • Collaborating with research and business teams to converge on the best solutions;
  • Optimizing algorithms and prototypical solutions for efficient implementation;
  • Extending prototypes into fully functional, polished solutions ready for internal and/or external use;
  • Supporting projects with thorough documentation of usage, design decisions and capabilities;
  • Extracting, transforming and loading massive datasets using distributed computing framework technologies (Hadoop, Spark, etc.);

You're our ideal candidate if you:

  • A bachelor’s degree in Computer Science, Software Engineering, or equivalent.  A master’s or PhD in an AI sub-field is an asset;
  • 2+ years of software development experience (including co-op and internships) in a high-responsibility, minimal-supervision environment;
  • Experience with writing modular, robust, scalable software in one of the major languages such as C++, C#, Java, Python 3.x;
  • Familiarity with the Unix command line and bash scripting;
  • Experience with Deep Learning packages such as Tensorflow, Theano, Keras and PyTorch is an asset;
  • Exposure to distributed computing frameworks (e.g. Hadoop, Spark) as well as SQL, NoSQL and graph databases;
  • Demonstrated experience in two or more of the following areas: Traditional Machine Learning, Deep Learning, Natural Language Processing, Time-Series Analysis, Computer Vision, Reinforcement Learning;
  • 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.

What's in it for you?

  • 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.

About Borealis AI

Borealis AI, a RBC Institute for Research, is a curiosity-driven research centre dedicated to achieving state-of-the-art in machine learning. Established in 2016, and with labs in Toronto, Montreal, Waterloo and Vancouver, we support academic collaborations and partner with world-class research centres in artificial intelligence. With a focus on ethical AI that will help communities thrive, our machine learning scientists perform fundamental and applied research in areas such as reinforcement learning, natural language processing, deep learning, and unsupervised learning to solve ground-breaking problems in diverse fields.

Inclusion and Equal Opportunity Employment

RBC is an equal opportunity employer committed to diversity and inclusion. We are pleased to consider all qualified applicants for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, protected veterans status, Aboriginal/Native American status or any other legally-protected factors. Disability-related accommodations during the application process are available upon request. 

Ready to Apply?