Despite being one of the oldest languages in a developer's roster and suffering several quirks of its age, C++ remains investment banks' preferred programming tool. It's unfortunate, therefore, that programmers proficient in both C++ and financial services are a rare breed.
"C++ developers with strong industry experience are difficult to find and attract," says James Murphy, managing consultant at Imprint Technology. "Persuading decent people with these skills to move requires a very attractive salary package."
Job advertisements on eFinancialCareers.com reflect the reality. Last week we ran 368 jobs for C++ programmers working in financial services, compared to 273 jobs for JAVA programmers, and just 184 jobs for programmers using the newer C# and .NET languages.
Richard Sharp, an account director at IT recruiter Spencer Rose, says investment banks remain peculiarly wedded to C++ technology: "Other industries have moved to Java or C# and .NET: most big consulting organizations are looking for people with these skills. But investment banks, in particular, still use C++."
The head of equity information technology at one bank in London says banks are equally heavy users of the newer languages, but that C++ is needed to build on legacy systems. "If we're doing a development from scratch you'd be unlikely to use C++ these days. But we're usually building on what's already there so we need C++ skills as well," he says.
New technologies attract new talent
Although C++ developers with financial services experience are in strong demand, recruiters complain the pipeline of new talent is poor. "It's hard to find graduates who've been taught C++," says Murphy, "People have to have an interest in it and to have learnt it themselves, or be willing to be chucked in at the deep end and learn it in a bank."
Sharp says junior IT developers working in investment banks are typically reluctant to be pigeon-holed as C++ specialists: "It's seen as a legacy technology. People are looking at their skills and saying, 'How do I stay at the cutting edge?' The answer they come to is usually to take jobs using C# and Java."
Money in contracting
Recruiters say most C++ specialists extract their pound of flesh through short-term contract positions, which can be highly lucrative.
By comparison, permanent C++ roles pay on a par with roles using C# and .NET. James Bull, a consultant at recruiter Elan, says a C++ programmer with 4 years' banking experience could typically take home 70,000 to 80,000, as could similarly experienced JAVA programmers. Pay for JAVA programmers working in banks is marginally lower, says Bull, at 60,000 to 70,000 for four years' experience.