Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am a Java developer with more than 10 years work experiences. I have been working on investment banking industry since 2002 and I plan to continue my career in this industry. But recently I am a little confused about the direction to take in my career.

I want to be expert in some aspects, but don't know how to develop myself. Could experts in this industry please help to shed light on this?

Thanks in advance.

Most of my experience is focused on trading system development including fixed-income and cash equity.

share|improve this question

closed as off-topic by MichaelT, gnat, GlenH7, Giorgio, BЈовић Jul 22 '13 at 20:29

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, gnat, GlenH7, BЈовић
If this question can be reworded to fit the rules in the help center, please edit the question.

5 Answers 5

up vote 2 down vote accepted

Hopefully you are already in New York, London or Tokyo. If not, get yourself there and see a 60% salary lift and a ton of opportunities.

Java is a great start, but some large financial institutions will have invested heavily in infrastructures which are sometimes unique to their problems. You can't possibly learn those from the outside, but you can learn everything possible to 'hit the ground running' once you get there:

  • Get some C++ under your belt. All the Derivatives and FX work I've seen advertised requires C++ and an understanding of Templates.
  • As @Jonas says, learn some functional programming. F# jobs are paying well, it seems.
  • Work on your team leader/management skills. Experienced people are hard to find, particularly in such a demanding industry as they either stay a long time or get out of the industry.
share|improve this answer
    
Many thanks for your detailed answer. It's really helpful. Unfortunately, I am working in Beijing, China. Although my employer is the most famous investment bank in China, I think there is still some distance comparing to other financial centers. As for leadership/management skill, I agree. I have been acting as a team leader/project management for several years, I also keep an eye on Agile/Scrum. As for functional programming, I will have a look since both you and Jonas mentioned it. –  lostinmoney Oct 11 '10 at 2:08
    
As for C++, I only learned it in college and have no project experience, I am wondering if it's very important to master a new language since there is very few proprietary fields where only C++ can work. –  lostinmoney Oct 11 '10 at 2:10
    
In toronto, I see Banks offering positions in Cap Markets with j2ee, not C++. Does that automatically mean the role is bad?(back office) –  Kaushik May 4 '11 at 18:47
    
@Victor - not at all, Java skills are also in demand, but from my experience, C++ pays more and can give an insight into the machine behaviour which Java abstracts. –  JBRWilkinson May 10 '11 at 11:37
    
Thanks. I am planning to supplement my education with a CFA. Is this a good idea? –  Kaushik May 10 '11 at 13:54

Learn functional programming

I think that functional programming will be popular in the financial industry. It's a paradigm were side-effects are avoided and programs are easier to proove for correctness.

share|improve this answer
1  
I am not very clear of what you mean for functional programming, could you please provide more comments? Thanks. –  lostinmoney Oct 11 '10 at 1:37
    
I did some googling, but don't have much idea of the reason for its popularity yet, could you please help to give more comments or recommend a sample language? –  lostinmoney Oct 11 '10 at 7:01
    
@lostinmoney: Ocaml is a functional language that seem to be popular in the financial industry. See: janestreetcapital.com/minsky_weeks-jfp_18.pdf –  Jonas Oct 11 '10 at 9:10
1  
@lostinmoney: F# is another functional language (based on Ocaml) that is popular for the .NET platform. See also programmers.stackexchange.com/questions/3129/… –  Jonas Oct 11 '10 at 9:11
    
Many thanks for your information. It's really helpful. And sorry for the restriction that I can only select one answer. –  lostinmoney Oct 11 '10 at 14:41

Just be creative and figure out a way to learn something new in a way that benefits the company.

share|improve this answer
    
Many thanks for your answer. I know you are suggesting to find a win-win way for both myself and company. –  lostinmoney Oct 11 '10 at 1:51
    
Yes, and add synergy! –  quant_dev Jan 16 '12 at 11:04

You have business process knowledge in the banking industry, I see two career paths for you:

  • Data Warehouse / Bussiness inteligence specialist;
  • Financial analyst.
share|improve this answer
    
Many thanks for your answer. Although I got an OCP, I am not planing to go further in data warehouse. The business analyst suggestion makes sense to me. –  lostinmoney Oct 11 '10 at 1:50

I would suggest studying for a Sun Certification (probably Oracle these days) as it teaches you a lot of the runtime, most of which you probably haven't used. If you've done backend code, then Swing is a whole new world with listeners and web programming another whole new world.

The more you know the better.

share|improve this answer
    
Swing is pretty outdated. –  Jonas Oct 10 '10 at 18:12
1  
@Jonas, it is the Java way to write portable GUI's. It isn't any more outdated than Java itself. –  user1249 Oct 10 '10 at 18:24
    
Many thanks for your answer. I already got a OCP certification. Yes, I am now working backend, I will take GUI programming or web into account, like Eclipse RCP. –  lostinmoney Oct 11 '10 at 1:48
    
Many financial/banking software uses Java as the runtime, but just for the back-end. I rarely (though occasionally) see a true Java UI. –  Xepoch Oct 11 '10 at 3:03
    
Xepoch. Yes, it seems the trend is using web-based or Microsoft platform for UI. But I really worked on several projects with Java UI - based on some open source Java UI framework. And my project on hand is using Eclipse RCP as UI because I am not the decision maker. –  lostinmoney Oct 11 '10 at 3:55

Not the answer you're looking for? Browse other questions tagged or ask your own question.