Discover your dream Career
For Recruiters

COMMENT: Forget Python, you need Clojure, F#, Scala and Elixir to earn the big money in finance

Careers in financial technology can be bewildering. So many languages, roles, and companies to choose from. All will pay relatively well. But what should you think when you’re pitched something out of your comfort zone? Should you niche down and specialise in a technology, methodology or obscure job? The short answer is yes. Absolutely.

Being a permanently employed generalist, fungible programmer in finance is generally a poor economic bargain. You may know a few different object-oriented languages and JavaScript frameworks but you’re still relatively replaceable and roles are continuing to shift to cheaper locations. “I know Python and MySQL” puts you in competition with countless nameless, faceless masses and renders you expendable. Conversely, “I can wipe out close to 100% of the performance problems you see in Python/MySQL object-relational mapper implementations” establishes you as a problem solver, and someone who has tangible value.

So how do you go from a generalist to someone that actually has a value proposition?

In short, you need to specialise. This could be anything from evangelising test-driven development, coaching agile practices or - best - working in a different programming paradigm.

The Stack Overflow 2019 developer survey says there is a direct correlation between the least popular and highest paying programming languages. Four of the five top paying languages are the functional programming languages Clojure, F#, Scala and Elixir. These languages are at the very bottom of the popularity scale in the same survey. A quick perusal of eFinancialCareers technology jobs confirms the results of this survey - there just aren’t that many roles for functional languages. However, if you can programme in something like Clojure you’ll face less competition, the roles look pretty interesting, and you’re likely to get paid. You don’t need 100s or 1,000s of jobs - you need one. 

A good example of where you might find a functional programming gig is the quantitative trading fund Jane Street. They use a functional language called OCaml as their primary development language. OCaml is about as niche as it gets – I’m going to hazard a guess that they don’t hire many developers that already know it. But like everything else, once you know one functional language, learning others is much easier. Scala is a relatively popular functional language due to its interoperability with Java - Morgan Stanley, for example, make heavy use of it. Your value proposition here could be, “I coach and help teams in adopting functional programming to increase developer efficiency and reduce runtime errors due to strict type systems”.

While everyone is rushing to learn Python, you might therefore want to plot a different course.  There are many specific roles and domains within financial technology that you can specialise in. Banks are all in on cloud adoption at the moment so cloud architects and tooling experts will not be short of work. Alternatively, you might have been assigned a graduate role in a market data services team and then you become an expert in dealing with market data APIs, so you capitalise and decide to freelance consult on that.

Then, of course, there is all the standard financial engineering and modelling knowledge that can differentiate you from standard developers. I often find people who have spent entire careers becoming an expert in one particular asset class, or even things like regulatory regimes. Anything that has a discrete value proposition that is separate from your core skillset as a technologist will add to your value.
So, whatever your goals are, think about what problem you are solving for people and niche down. Specialising is not something that just entrepreneurs and freelancers do. It’s a way to have a career rather than just a series of gigs.

Graham Jones is the pseudonym of a technologist working for a U.S. investment bank in London 

Have a confidential story, tip, or comment you’d like to share? Contact: in the first instance. Whatsapp/Signal/Telegram also available. Bear with us if you leave a comment at the bottom of this article: all our comments are moderated by human beings. Sometimes these humans might be asleep, or away from their desks, so it may take a while for your comment to appear. Eventually it will – unless it’s offensive or libelous (in which case it won’t.)

AUTHORGraham Jones Insider Comment
  • _T
    15 June 2021

    Probably easier to write an article on what you dont need to know to earn big money in finance.

  • Bo
    31 October 2019

    I have nothing but praise for F#. It's very concise, is simple (like Java), easy to read, doesn't force you to use tabs like python, much faster and safer than python, and you can overload the slicing operator which allows you to build complex data types with a nice easy syntax for accessing that data. My only complaint is that it's not being used much in the industry to justify investing time into. A quick search on under "F# and finance" brings up 11 jobs, while "scala and finance" brings up 586 jobs.

  • Jo
    Joseph Stevens
    14 July 2019

    I've personally worked with F#, Clojure and Elixir , and I can also say, these tools work incredibly well. There is a deep satisfaction that comes from building something that stands the test of time.

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.

Boost your career

Find thousands of job opportunities by signing up to eFinancialCareers today.
Recommended Articles
Latest Jobs

Sign up to Morning Coffee!

Coffee mug

The essential daily roundup of news and analysis read by everyone from senior bankers and traders to new recruits.