tags:

views:

444

answers:

2

Hi All,

I wanted to know how does Java/C# scale up compared to C++ with reference to financial industry projects ?

Thanks.

+7  A: 

Depends on the type of system. C++ is traditionally associated with finance applications because people use it to code fast monte-carlo models for pricing derivative securities. This is probably irrelevant if you're not a quantitative analyst (quant).

For a trading floor system or other transactional application C++ will certainly get you faster performance and more transaction volume in a smaller memory footprint and less CPU. However, database and network performance are more likely to be a limiting factor, and Java or C# can be scaled by using clustered architectures.

Java and C# can pause for garbage collection which leads to dead spaces in your application's response times. These delays might be unacceptable for some applications (e.g. algorithmic trading platforms) that need to support reliable realtime responses. In this case C++ allows you tighter control over this behaviour and may be preferable.

Doing some quick searches on Jobserve for contract jobs based on the keywords 'Banking' and 'C++', '.Net' and 'Java' turns up:

  • 60 matches for 'C++ and Banking'
  • 128 matches for 'Java and Banking'
  • 186 matches for '.Net and Banking'

Assuming some correlation (1) between the number of job ads for contractors and the number of active projects (2) one can use this as a rough metric indicating the relative prevalence of these platforms in active projects.

  1. Relative availability of people with the skill will affect this as well - a well supplied skill set will mean more jobs get filled and a skill set in short supply will mean that more positions are left open for longer.

  2. The banking and insurance industries have a perennial skill shortage of good development staff with experience in the industry so there is a substantial contract market for many skill sets.

ConcernedOfTunbridgeWells
+2  A: 

It really depends on the application's purpose. Many applications are web-based now, and C++ doesn't lend itself as well to that environment.

I agree with the other responder, but I would add that other languages are becoming increasingly popular for quants beyond these because of the ease of coding and their abilities to handle data: R, Matlab, and Python in particular.

Shane