Les langages de programmation à apprendre et ceux à éviter pour les postes en technologie dans les banques
Je suis managing director, responsable d’une importante unité tech en front office dans une banque d’investissement américaine à New York. A ce titre, beaucoup de jeunes me demandent quels sont les meilleurs langages de programmation à apprendre pour travailler dans le secteur bancaire. Et la réponse est… ça dépend ! Toutefois, il en est un que je conseillerai toujours - et c’est Python.
Python peut s’avérer assez lent par rapport à certains autres langages de programmation, mais c’est aujourd’hui le plus utilisé en finance. Nous l’utilisons pour l’analyse, l’examen et l’interrogation des données. Python est aussi le langage du machine learning et de l’intelligence artificielle, et dans le contexte où l’IA s’impose de plus en plus en finance, Python évolue dans le même sens.
Le gros avantage de Python tient à sa facilité d’apprentissage. La syntaxe est intuitive et lisible par l’utilisateur. Son pouvoir provient de la multitude de librairies open source disponibles dans Python pour les applications de machine learning et bien d’autres.
Parallèlement à Python, il vous faut choisir au moins un autre langage. OCaml mérite qu’on s’y arrête, mais il est difficile à apprendre – bien plus difficile que Java et même que C++. A noter toutefois que c’est le type de langage qui vous couvrira de prestige auprès des geeks et autres fous d’informatique si vous le maîtrisez au point de pouvoir bien coder. On trouve aussi dans cette même catégorie Lisp et Haskell.
Vous tenez vraiment à apprendre un langage ultra-obscur ? Dans la finance, nous utilisons Java pour le processus décisionnel étendu au sein du code de trading algorithmique, et C++ pour la partie propre à la haute fréquence. Les dérivés de Java comme Skala sont utilisés pour l’ingestion de données et les langages de type R et MATLAB dans des scénarios de recherche sur mesure, mais tous perdent du terrain.
En toute logique, les langages à apprendre devraient donc dépendre du type de poste tech en banque que vous visez. Commencez toujours par Python, votre second langage pourra varier en fonction de vos aspirations. Pour travailler sur les algorithmes d’exécution de trading, apprenez Java. Pour le pricing des dérivés, optez pour C++. Si vous voulez vous orienter vers les interfaces utilisateurs (UI), vous pourrez également choisir Javascript. Et si vous voulez travailler sur les tick data, il y aussi Kdb/Q…
Reste que j’éviterais systématiquement trois langages : Pascal (trop vieux), Julia (trop récent) et Slang (trop propriétaire).
Ananda Vyas est le pseudonyme d’un managing director en technologie dans une banque d’investissement américaine.
Crédit photo : Ilse Orsel sur Unsplash