Quantitative Analyst - Numerical Performance Group
We are looking to hire a Quant Analyst into the Numerical Performance Group. NPG is responsible for developing and deploying the core C++ library, roots, of common numerical functionality underlying the pricing libraries of all quant groups in Citi. The functionality in the roots library is designed and tuned for the fastest and most accurate performance on modern hardware. NPG also develops the VAL library, the Vectorized Abstraction Layer, for hardware-agnostic, high-performance Monte Carlo and AGX for automatic graph execution.
NPG are part of Citi MQA (Markets Quant Analysis) team. We work closely with the quants developing the asset libraries as well as the traders addressing critical performance and stability issues.
What you will do will be varied day to day, but the key drivers for the role are:
Implementing numerical functionality for asset groups to take advantage of their domain-specific problem. This could be anything from a single numerical function through to entire numerical frameworks. Development and performance tuning is performed in C++ within the roots library and C++/CUDA within the VAL library.
Deployment of the new methods into asset class group libraries.
Performance tuning of asset libraries to speed up key product pricings and risk. This involves profiling asset libraries, identifying bottlenecks and vectorising or otherwise redesigning their implementations for fastest speed.
Developing long-term strategic initiatives to guide and help to migrate derivative pricing libraries into using highest performance hardware.
What we will need from you:
The ideal candidate will be proactive, self-motivated and a problem-solver and will have a strong numerate background.
Ideally, you will be able to demonstrate several of the following:
A strong C++ programmer with a keen attention to quality, stability and performance. Our development is primarily C++14/17 and CUDA. Knowledge of python or AAD is a plus.
Understands modern hardware and the impact on performance. Experience with and understanding of low-level optimisation (SIMD, vectorisation, cache behaviour) is beneficial.
A background in a Computational Mathematics area.
Experience developing on both Windows and Linux.
Have a track record of developing, implementing and tuning mathematical algorithms.
Knowledge of financial mathematics is a plus but is not essential.
It is expected that you will hold a higher degree in a numerate subject, e.g., a master’s or PhD in Physics, Maths, Computer Science, Engineering etc.
We are happy to consider candidates from Associate through to VP.
What we will provide you:
By joining Citi London, you will not only be part of a business casual workplace with a hybrid working model (up to 2 days working at home per week), but also receive a competitive base salary (which is annually reviewed), and enjoy a whole host of additional benefits such as:
27 days annual leave (plus bank holidays).
A discretional annual performance related bonus.
Private Medical Care & Life Insurance.
Employee Assistance Program.
Pension Plan.
Paid Parental Leave.
Special discounts for employees, family, and friends.
Access to an array of learning and development resources.
Alongside these benefits, Citi is committed to ensuring our workplace is where everyone feels comfortable coming to work as their whole self, every day. We want the best talent around the world to be energized to join us, motivated to stay, and empowered to thrive.
This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.
#J-18808-Ljbffr