• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Coding languages to learn and avoid for technology jobs in banks

Joined
5/2/06
Messages
11,751
Points
273
Interesting article from EFC written from the perspective of a managing director in technology at a major Wall Street investment bank. In this, he answers popular questions from students about which programming languages to learn and to avoid.
In short, learn Python first, then a second language (C++, Java are popular choices here dependent on which job you target).
He explains the reasons below.
For learning Python first.
Python may be slow compared to some other coding languages, but it's the number one language used in finance now. We use it for data analytics and for data investigations and interrogation. Python is also the language of machine learning and AI, and as AI becomes more widely used in finance, so does Python.

Python's big advantage is that it's easy to learn. The syntax is human-readable and intuitive. Its power derives from the multitude of open source libraries available in Python for use with machine learning and many other applications.
And to also get a second language.
In finance, we use Java for the broad decision-making within algorithmic trading code, and C++ for the higher frequency portion of it. Java derivatives like Scala are used for data ingestion and languages like R and MATLAB are used in bespoke research scenarios, and are losing ground.

The languages you choose to learn should therefore depend upon the sort of banking technology job you aspire to. Always learn Python, but your second language will differ. If you want to work on trading execution algorithms, learn Java. If you want to work on derivative pricing, learn C++. If you want to work on user interfaces (UIs), you could also learn Javascript. If you want to work on tick-data level work, there's also Kdb/Q...
And lastly, what to avoid:
Pascal (too old); Julia (too new); and Slang (too proprietary).
You can read the full article here.
 
Interesting article from EFC written from the perspective of a managing director in technology at a major Wall Street investment bank. In this, he answers popular questions from students about which programming languages to learn and to avoid.
In short, learn Python first, then a second language (C++, Java are popular choices here dependent on which job you target).
He explains the reasons below.
For learning Python first.

And to also get a second language.

And lastly, what to avoid:

You can read the full article here.
Now the follow up for me is, where do we go to learn more about building trading execution algorithms?
 
Back
Top