Programming Skills That Are Opening Many Doors In The Financial Industry
This is a job opening at Goldman Sachs.
Associate Vice President, The Model Risk Management (MRM) group
Preferred Qualifications The MRM group looks for people with strong quantitative and technological background with a good understanding and interest in the financial markets. Successful candidates should have strong communication skills with the ability to explain quantitative models in an intuitive way.
The group is looking for bright and dynamic individuals who: Have strong quantitative skills with a Ph. D in a quantitative discipline (e.g., Physics, Mathematics, Statistics, Engineering, Computer Science) Are comfortable in evaluating and challenging complex models and explaining issues in an intuitive way • Have a good command of object oriented (e.g. C++) programming • Are team players and have the ability to come up with solutions quickly, think through and debate solutions with others • Are comfortable in working in a fast paced environment
Or this role of an Economic Modeler at Quantum Global, Switzerland
Skills and Specifications • PhD in Economics/Finance with deep knowledge of macroeconomics, microeconomics, econometric modeling and statistical analysis; • At least 2 years of experience in Econometric Modeling; Dynamic Stochastic General Equilibrium (DSGE) modeling; Computable General Equilibrium (CGE) modeling, and/or Agent‐based Computational Economics (ACE) modeling; and Structural VAR and GVAR Modeling; • Experience with relevant statistical software packages; • Excellent interpersonal and communication skills; proven track record interacting with clients; • Extensive working experience in modeling economies of low-income countries or networks of countries, ideally in Africa, with relevant institutions;
Here is yet another from PwC for Forensic Services - Capital Projects
As a Chartered or near Chartered Engineer, you’ll have a background in project management covering the technical, financial and commercial aspects of contracts. You’ll also have experience in the design or implementation of large, complex projects. As well as good practical work experience, ideally gained within a large contractor, consultancy or client organisation, you’ll have working knowledge/experience of: • Consulting with clients in a capital projects environment • Project management experience • Construction methods/techniques • Design management and co-ordination • Estimating and financial management (preparing cost and value reports, cost forecasts, etc.) • Contractual arrangements • Approaches for the valuation and assessment of claims • Experience of using critical path planning software (Primavera P6 or MS Project) • Excellent IT skills
The computer skills required by practitioners of Finance, until a few years ago was largely Excel. Increasingly employers are expecting programming skillS in addition to domain expertise. In some cases, domain expertise is not required, but coding skills are. We are stepping into a time in which finance and technology overlap immensely.
The most sought-after programming languages by financial firms are C++, C#, Java, Python, R Programming and SQL.
Java is used in back-end trading platforms, big enterprise systems; investment banks seek Java developers for low latency execution, in-house risk and valuation platform and order management systems. Java is also used for data simulations and modeling. Since Java has been used to build structural frameworks of most large financial companies, it is very popular and is now being used by data scientists to analyze data and arrive at multiple scenarios.
An offshoot of Java is Scala, a Java-based language. Scala is being used to build algorithms and helps build robust systems like trading analyst platforms.
C++ and C# are used in high volume/high-frequency trading. They help in developing good execution systems that can manage high data volumes and maintain high speeds. C# or C sharp too can be used for data modeling and simulations. C# is often used to build on legacy Microsoft Window systems.
Python is far more minimalistic but powerful programming language. Quant finance uses Python extensively. It is easier to learn and implement and is becoming a fast favorite among bankers and traders. It has deep data mining capabilities and is the practical choice to build financial products. It is used for medium-scale data processing.
The Quartz project - platform for pricing trades, managing positions and computing risk exposure across all asset classes - at Bank of America and of Athena, a cross-asset market risk and trading platform at J.P.Morgan are two examples of the use of Python in the financial industry. It's reputation as a good scripting language that is easily integrated with the front and back ends makes it a first choice in the financial industry.
Finance has also traditionally been the user of R since the beginning (before that S language). R is an open-source language for statistical computing and graphics, a great fit with finance. R offers a range of statistical (linear and nonlinear modeling, classical statistical tests, time-series analysis, classification, clustering, …) and graphical techniques, and is highly extensible. The R language is often the vehicle of choice for research in statistical methodology.
The r-project highlights some of its strengths: • an effective data handling and storage facility, • a suite of operators for calculations on arrays, in particular matrices, • a large, coherent, integrated collection of intermediate tools for data analysis, • graphical facilities for data analysis and display either on-screen or on hardcopy, • a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.
R, is designed around a true computer language, and it allows users to add additional functionality by defining new functions. For computationally-intensive tasks, C, C++ and Fortran code can be linked and called at run time. Advanced users can write C code to manipulate R objects directly. (Source: r-project.org)
It is a powerful visualization tool; engineers at Google, Facebook, New York Times and Bank of America are only some of its ardent users.
Julia is one of the newer programming languages that is expected to make inroads in the financial sector. julialang.org defines Julia:
Julia is a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library. Julia’s Base library, largely written in Julia itself, also integrates mature, best-of-breed open source C and Fortran libraries for linear algebra, random number generation, signal processing, and string processing. In addition, the Julia developer community is contributing a number of external packages through Julia’s built-in package manager at a rapid pace.
• Multiple dispatch: providing ability to define function behavior across many combinations of argument types • Dynamic type system: types for documentation, optimization, and dispatch • Good performance, approaching that of statically-compiled languages like C • Built-in package manager • Lisp-like macros and other metaprogramming facilities • Call Python functions: use the PyCall package • Call C functions directly: no wrappers or special APIs • Powerful shell-like capabilities for managing other processes • Designed for parallelism and distributed computation • User-defined types are as fast and compact as built-ins • Automatic generation of efficient, specialized code for different argument types • Elegant and extensible conversions and promotions for numeric and other types • Efficient support for Unicode, including but not limited to UTF-8 • MIT licensed: free and open source
SQL is an old favorite, that helps you retrieve and manipulate data in relational database tables. SQL helps provide a basis for the exchange and integration of data from different sources. SQL helps data retrieval or to query the database, the fundamental way data is stored in banking and financial services.
Clearly, the role of programming in the financial industry is getting stronger by the day and practitioners of finance armed with programming skills have an array of opportunities awaiting them.