Be a Part of Our Success

Senior Developer, C++ API Design and Code Optimisation

What is the opportunity?
The purpose of this role is to refactor and consolidate our analytics infrastructure to make it more flexible, reliable and performant. This London based position requires excellent communication skills, as well as cooperation and coordination with quant, trading, and IT groups. Candidates should have experience in designing analytics for both low latency and high throughput use cases, they should have strong API design skills, and financial instruments knowledge across several asset classes. The candidate is expected to contribute with new ideas, work in a global team, and should have a pragmatic approach.

What will you do?
  • Refactor and consolidate analytics libraries into a single cross-asset library.
  • This involves designing robust APIs around common pieces of functionality, refactoring the code to support these new APIs, retire legacy code, and making sure that structural problems are also addressed during the refactoring.
  • Collaborate with stakeholders and Quant/IT colleagues to make sure that the goals are agreed upon and aligned.
  • Investigate and fix actual stability problems, determine what the fundamental solution should be, and make sure it is prioritized.
  • Identify and address gaps in unit/functional/regression/performance test coverage
  • Interface with vendor systems

What do you need to succeed?

Must-have
  • Experience in designing and supporting performance-intensive code
  • Financial analytics development experience and experience with large-scale refactoring projects
  • Experience with profiling, code optimization both from a speed and a memory perspective; and experience with exposing and integrating analytics into IT systems
  • Expert level C++, including C++ 11/14 and experience with build/test/release infrastructure for C++ libraries and exposing C++ type hierarchies to other languages
  • Experience with databases, distributed cache products, distributed and multithreaded computation; and experience with multiple platforms (Windows, Linux), compilers and tools for C++ development
  • Experience with reverse engineering algorithm implementations

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.

*LI-MM2

About RBC
Royal Bank of Canada is Canada's largest bank, and one of the largest banks in the world, based on market capitalization. We are one of North America's leading diversified financial services companies, and provide personal and commercial banking, wealth management, insurance, investor services and capital markets products and services on a global basis. We have over 80,000 full- and part-time employees who serve more than 16 million personal, business, public sector and institutional clients through offices in Canada, the U.S. and 37 other countries. For more information, please visit rbc.com .

Get Career Alerts
Stay in-the-know about great career opportunities at RBC. Sign up for Career Alerts 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 rbc.com/careers .

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.

JOB SUMMARY
City: City of London
Address: Thames Court
Work Hours/Week: 35
Work Environment: Office
Employment Type: Permanent
Career Level: Experienced Hire/Professional
Pay Type: Salaried
Required Travel (%): 0-25
Exempt/Non-Exempt: N/A
People Manager: No
Application Deadline: 2017-08-22
Req ID: 142309
Posting Notes: [[mfield1]]