Engineering To Quant Finance - How To Make The Transition

Engineering has long been a useful early career path for those wishing to make the transition to quantitative finance. In this article we discuss how to bridge the skills gap for those who are mid-career and wish to begin working in a quantitative hedge fund or investment bank.

At QuantStart we often receive email queries about the possibility of making a career transition to quantitative finance, particularly for individuals who currently consider themselves mid-career.

In a more general sense we have previously discussed whether it is possible to become a quant during your thirties. However, for those with more specific technical expertise—especially those with a background in hard sciences or engineering—it can often be confusing to know what skills are required in modern quantitative finance roles and how to make the transition to being a quant.

In this article we will discuss which roles might be suitable for a technical career-changer, how to leverage your current skills as well as how to prepare for the types of interviews now found in modern quant hedge funds and investment banks.

Researcher or Developer?

The two broad types of 'front office' quant roles that are available in modern quant funds can be approximately partitioned into quantitative trading researchers and quantitative software developers/engineers. In investment banks there is also still an extensive amount of derivatives pricing that occurs, requiring specific mathematical capabilities.

The key differentiators for most roles in quantitative finance lies in the strength of the candidate's coding ability as well as their mathematical and statistical maturity.

Individuals who are capable at programming—that is, software engineering experience with large object-oriented codebases—will likely gravitate to the quantitative developer roles. Those who are more used to writing scripts or interactive research via notebooks, but with a heavy emphasis on hypothesis testing and data analysis, will likely find quantitative research more suitable.

Quantitative Researcher

It will be a challenge to target a mid-level quantitative trading research role without either prior quant finance research experience or examples of other rigourous research carried out in your current industry.

This is often why a PhD is utilised as a barrier to entry for these roles as it usually comes with some form of publication record. Despite this, it is possible to head into a research role but it might be necessary to target a role at the more junior end.

In order to avoid the need for a publication record or evidence of commercial R&D experience it is possible to transfer to a research role once in a firm, e.g. from quant developer roles. This often only occurs after having demonstrated expertise for doing so after an extended period.

On the plus side many firms are now beginning to hire general 'data scientists' to work on alternative data (as opposed to traditional price/volume data). Data science and machine learning skills in Python (NumPy, Pandas and Scikit-Learn) will be valuable here. If you have a background in these technical areas you may find yourself in strong demand.

The Importance of Statistics

Engineering education often emphasises determinstic methods over statistical ones. While engineers are taught basic statistics at the undergraduate level the required maturity is not sufficient for most quantitative finance roles. Hence if you are serious about applying to become a quantitative researcher it will be necessary to improve your statistical maturity.

In the past many quantitative analysts were hired to price complex derivatives contracts, which made extensive use of stochastic differential equations and Ito Calculus. Hence the transition from engineer to quant was somewhat more straightforward, especially for those with a background in stochastic optimal control.

For quantitative trading researchers the necessary toolkit differs somewhat. While stochastic calculus is still highly valued in certain realms, the emphasis has shifted to statistical time series analysis, linear statistical techniques and Bayesian-based machine learning methods.

Even with a strong background in these fields it will still be necessary to demonstrate capability at applying these techniques to quant finance datasets, which are notorious for being non-stationary and for having a poor signal-to-noise ratio. Be prepared for interview questions relating to these aspects.

Quantitative Developer

Quant developer roles are an alternative to research. They generally require a background in either computer science at the junior end or a track record for skills in software engineering at the mid-career level.

The most important required skills include object-oriented programming, an extensive familiarity of data structures and algorithms as well as software engineering skills.

C++, Java and Python are good examples of languages used heavily within quant finance. Hence if you are interested in this track our advice is to try and practice as much software development as possible by writing your own large-scale projects or by contributing to open source software.

The Importance Of Coding

It should be emphasised that irrespective of whether you target quant research or quant developer roles you will need to have a reasonable proficiency in coding. 80-90% of a quant's day is spent coding, whether they are developer or researcher. Hence if your current career path has not exposed you to coding, you will need to obtain this knowledge elsewhere.

In academia there is a prevalence of code written in MATLAB and Fortran, without any usage of object-oriented techniques. For quantitative developers specifically it will be necessary to be familiar with algorithms, data structures and design patterns, as well as an object-oriented language such as C++, Java and Python, prior to attempting interviews.

Whether you decide to pursue a quant researcher or quant developer role it should be noted that quant teams make extensive use of modern project management techniques such as Agile software development. This will require familiarity with version control software—such as Git—as well as an understanding of modern software testing methodology along with skills of using the Linux command line.

These methods are often in contrast to the longer release cycles that can be found in traditional engineering industries. Thankfully there are may online courses, tutorials and books available to teach these skills.

Leveraging Your Current Skills

Engineers are well-sought in quantitative finance for their analytical thinking capabilities and ability to understand large scale systems. Since systematic trading is nothing more than a large collection of interconnected systems such skills will be very useful in helping diagnose the inevitable issues that arise.

Coding is becoming more prevalent in engineering. It is often the case that engineers have to modify large legacy codebases in order to add new capabilities. The same is true in systematic trading development. Hence skills modifying large Fortran or MATLAB codes can be built on to obtain the ability to modify large object-oriented codebases in a version controlled environment.

As part of their careers all engineers need to be proficient in mathematics to some extent. While physics and engineering mathematics often emphasise deterministic differential equations based methods, newer concepts such as uncertainty quantification are introducing modern engineers to robust statistical and machine learning methods. Building on these tools and emphasising them at interview will provide further evidence of your suitability for quant finance roles.

Interview Practice

Modern quantitative finance interviews—researcher or developer—require significant preparation due to the level of technicality, as well as domain expertise involved. It should be emphasised that it is no longer possible to 'walk into' a quant role from academia or engineering. Preparation for interviews is key.

Although the type of preparation will largely depend upon your own preferred method of learning, it is nearly always appropriate to carry out practice on interview questions and 'real world' projects.

For quantitative researchers a good place to gain skills in data science and machine learning is with the Kaggle competition platform. Kaggle will allow you to gain practical skills with 'notebook' environments, such as JupyterLab or R Shiny. The process of carrying out end-to-end competitions in this mannber will give you practical experience in Python libraries such as NumPy (for numerical array manipulation), Pandas (for panel data analysis), Scikit-Learn (for shallow machine learning) and even TensorFlow or PyTorch (for deep learning).

For quantitative developers there are a myriad of interview practice websites and useful textbooks. Two websites that are particularly useful for interview problem practice are HackerRank and Leetcode. They contain a vast collection of data structures and algorithms questions, often requiring you to not only find a working solution but also an optimal one.

One of the most useful textbooks on how to pass a coding interview is written by Gayle McDowell, called Crack The Coding Interview. This book outlines the end-to-end process for developers and how best to manage your interview preparation time.

Applying For Jobs

In quantitative finance applying for jobs is far simpler than preparing them. The most common routes into quant roles are either through your current network (e.g. your PhD/research lab colleagues who have made the transition) or via dedicated quantitative finance recruiters who are based in the major quant hubs—New York, London, Hong Kong and Singapore.

It is also now becoming more common to see quant firms hiring directly through their own careers portals. Another recruitment mechanism favoured by large quant funds are 'coding competitions' that run annually. Coming up with a novel solution to such competitions can put you well ahead of the pack in terms of employability.

In Summary

Transitioning from traditional engineering roles into quantitative finance is certainly possible, even in mid-career. To be able to make the jump it is necessary to carry out significant preparation.

A strong knowledge of statistics is an absolutely essential skill for a quantitative researcher. This can be challenging for engineers trained in deterministic methods (e.g. differential equations). MOOCs, formal qualifications and extensive practice are all useful ways of getting up to speed.

Irrespective of whether a research or development role is targeted it is imperative to have workable skills in coding, software development and modern agile project management techniques and tools. Like anything else coding requires extensive practice, so make sure to allocate some study time to working on coding problems.

Finally, do not be disheartened if the first couple of interviews do not work out. Interviewing at quant firms is extremely competitive. Try to think of each interview as a learning process that will help refine your preparation for the subsequent one. With enough effort it should be possible to land a role at one of the major quant funds.