Tell me more ×
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.

This question might make more sense to somebody having multi-threaded programming experience in Java/ C++ with some job experience in London / Singapore.

There is a huge market of Investment Banking development jobs with astonishingly high salaries (sometimes more than 100K pounds per year).

Can someone with experience as a front office/trading developer tell what are the requirements to land this type job?

What are the downside that I should be ready for?

share|improve this question
15  
You tend to come home feeling dirty. Kinda like you just screwed everyone royally. – ChaosPandion Dec 6 '10 at 13:33
2  
You also come home feeling like someone nasty has done some gruesome to your rear. Read Liar's Poker for example. There are exceptions in the finance industry, but it would help if you were working for a small company. – Job Dec 6 '10 at 16:16
2  
You get paid like a (low-level) investment banker, but also have to face their poor hours and working conditions. That's why Joel made FogCreek in New York City: to make a single place where programming in NYC won't suck. – Macneil Dec 8 '10 at 4:16
1  
I'm not sure exactly what the conversion of $100 pounds is to US dollars, but you can definitely get a Senior Java dev job in US cities for $120k+ for other types of app development and it can be a lot higher in a place like Silicon Valley so I wouldn't say that this is the only way to get a good salary as a developer – programmx10 May 20 '11 at 22:36
2  
@programmx10 the kind of jobs the OP is talking about pay more than $200k in NYC. I've been called about them, and even went for the first round of interviews but walked away feeling that it was a form of high-paid bonded slavery. – MrFox Oct 4 '12 at 18:39
show 3 more comments

11 Answers

up vote 20 down vote accepted

If someone just offered you $200K per annum you can have 2 reactions:

  1. Dance with joy, accept the offer and generally believe you have arrived in life
  2. Think why the person is offering you this kind of pay before accepting

If you are rational and opt for 2) then you should know that these are typically high pressure jobs where performance is king. If you are into trading software development, then you need to follow trading hours and these days at any hour in the day or night some exchange is open for trading. Your work hours will be odd, ability to perform 24x7x365xwhatever time you have left for yourself on earth etc.

Technically, being into C++ for 10 years now I can frankly tell you that coding high performance multi-threaded apps is not something everyone can do even if they are good at C++. For e.g. point me a single C++ construct that you know effectively used N cores in your system. You can't. Just for this, you need to understand CPU affinity and if you are into Linux this feature is only available after a certain kernel version number.

Generally, the skill level required is very high and work is gruelling. Thats why that $200K.

share|improve this answer
Additionally, as a new recruit, they quite often expect you to travel all over the world for a few years. Most of my investment bank developer friends end up living out of a suitcase. – Orbling Dec 6 '10 at 16:28
6  
Work for a .Com when the site goes down and see if they let you finish that game of foos ball ;) – JeffO Dec 6 '10 at 17:03
It's a young, single man/woman's game, effectively. – Alan B Oct 9 '12 at 16:04
  1. Unpaid overtime. Lots of it. Not unusual to be leaving work at 11 PM (with 6PM being the formal end of work time);
  2. Lot of corporate politics affecting technical choices;
  3. General inflexibility regarding technical choices, pushing for modern technologies hard if not impossible;
  4. Software engineers being treated as necessary evil and being looked down upon by The People (management, traders, quants etc.)
share|improve this answer

If you're talking front office/trading developer then there's a few gotchas :). This isn't true in all places I've seen, but there's stuff to be aware of.

  1. You need great business knowledge, if you don't have that you're not going to land that role.

  2. You'll almost certainly be working on legacy/old/proprietary software, so think Java 1.4 or C++ with no useful helper libs.

  3. You'll probably be expected to be a whiz at concurrency and inter operating with MS office apps.

  4. The business don't care about IT, you're generally seen as a tool. Arguments to improve process or get them to actually engage in projects usually fails "I'm too busy trading - I'm not going to spend time answering your questions, having stand-ups or your other hippy crap."

  5. Long hours.

Pay can be great and assuming you're part of the bonus pool that can be good as well.

If you're going to do it, do yourself a favour and make sure you spend time with the broader technical community, helps keep your perspective and hopefully keeps your interest in the tech going.

share|improve this answer
15  
+1 for "The business don't care about IT, you're generally seen as a tool." – BlackICE Dec 6 '10 at 14:30
In terms of point 2 - this can be the case but they tend to be very happy to use leading edge technologies on new projects. Also, money generally is no object - you'll get the best kit money can buy. – Jon Hopkins Dec 6 '10 at 14:58

I left a job in the Banking(not investment banking) and moved to systems development because my life was tied to four words: INSERT, UPDATE, MODIFY, DELETE. It became so repetitive that I could almost code SQL blindfolded.

share|improve this answer

There are loads of different development roles in banking. The highest paying ones tend to require some sort of quant experience. That's degree+ level maths with business AND development skills. It's a big ask.

I'll assume you don't have strong financial maths, otherwise you'd probably already know the answer to the question :)

Financial companies vary, there are a lot of them and they have different criteria. Actually the same criteria but in different quantities. These are:

1) Business area experience. Be it general investment banking, fixed income, commodities, front office, risk, what ever, some roles need more business experience than others. Generally the closer you work with the business the more business experience will be required. This can be a classic catch 22, but there are ways around it.

2) Technical skills. If you can demonstrate good technical skills this can be enough. Certain companies actually prefer people with less business experience because they can pay them less, but it can act as a good first step to better things. This tends to be software companies and consultancies. With in the banks themselves, it really depends on the bank, and with in the bank, the actual team you are interviewing for. Really you could interview for two teams in the same bank on the same day and it would feel like two totally different companies.

3) Interpersonal skills. This can swing it, I've strong technical people with good business knowledge fail in an interview because they are not assertive enough, or too assertive, or smell... Handy tip, the people who interview you are people. This means they're subject to the whole gamut of emotional stuff everyone else is. This means they can take an irrational dislike to you (or a liking to you) and there's just nothing you can do about it besides not letting it get you down.

4) Contract type. Finally banks hire either contract or perm staff. Perm staff generally have to jump through more hoops to land the role than contract staff, but if you get a contract, you're then gaining experience and you may get the opportunity to switch to perm if that's what you want. So I'd consider applying for contract positions to start with.

As for where to find them. I use job web sites, spam 20 or so roles, this puts me in touch with a load of agents and then they do the rest. Some banks have a public portal for job applications, so it's worth vising every bank web site and looking for a jobs section.

Finally look at consultancies. I mentioned this above. I don't want to list a load of names here, but there are financial consultancies, financial software houses, then things like brokers and out source companies. Outside of those there are hedge funds which are like mini investment banks. Each of those will have different criteria too, and it will give you another larger set of companies to approach outside of the dozen or so banks.

share|improve this answer

I went for a job and an investment firm, but never actually worked there.I also worked in a company that maintained share registry information for 10 years. I'm not sure if that gives me more or less experience then the comments above (a lot seems like guess work).

The main thing I notices was the job looks really boring. They were interviewing to top level coders, but then getting them to do mundane work that had to absolutely work. Kinda like getting fighter pilots to fly 747s just in case something goes wrong.

The place I was going for required a bit of travelling as well as many firms have a presence in several countries. The business rules in each country tend to be radically different so there was lots of rules to learn.

share|improve this answer

One drawback of these types of jobs is that your ego will take a hit, since programmers are usually pretty far down the totem pole of I-bank status. If you're working on a trading system, then the traders will be the BMOCs (big men on campus) and you will be the wimpy freshman who has to keep out of their way or risk being pushed into a locker.

share|improve this answer

You'll enjoy working at a small software firm more, but probably won't make as much.

Most problems working for these firms are due to working in corporations where creating software is not their business. They're bureaucratic and see IT as an expense just like: accounting, shipping, support, HR, etc. They have stiff rules and regulations that are usually necessary to manage large numbers of people.

Considering the majority of this industry as tainted is just absurd. Not everyone caused the mess we're in nor took government bail-outs. You think working for Insurance companies, law firms, food plants, pharmaceutical, manufacturers, telecoms, government agencies, or hospitals will surround you with angels?

share|improve this answer

You have sold your soul for money. However, souls do apparently bring in a good price.

I'd say if you can put in the hours and tolerate the conditions, go for it. I was never good at navigating the political BS that goes on, after about 5 years of it I took a 30% pay cut and went with somewhere I can be happy.

Edit

Sorry, I wasn't even in the high stakes investment banking, just normal banking with high-risk mortgage accounts. Investment trading is way worse.

share|improve this answer

Many traders work 7am to 10pm and expect you to do the same. The twist is, they get millions every year and retire around age 40.

share|improve this answer
1  
Whoa! Now that's what I call LONG HOURS! – Jas Dec 6 '10 at 16:33

Insane amount of politics and cut-throat competition in the name of "networking". Situation becomes worse during year end when they start firing everyone to maintain the bonus pool.

Also, you should be prepared to do a fair deal of maintenance and production support.

If you don't mind compromising on the above for the fat pay packet, go ahead.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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