I work as a developer in the London office of a US-headquartered investment bank. I have a degree in computer science, and have worked in the field for about nine years, ever since I graduated.
The industry today
I work on a trading system, which is where lots of the technological innovation at investment banks is focused. Many banks develop their own trading software, which they could easily sell to other financial institutions, but they'd be crazy to do so as when they develop something new, they have an advantage in the market until the other banks catch up.
Some banks are ahead of others for a bit in a particular area, but it all evens out over time. For example, one very prominent bank tried to use its own particular version of a certain programming language for almost everything at one point.
This tactic was very successful for a while, but then they started having problems recruiting as nobody wanted to get stuck working on programming languages that weren't used anywhere else.
There was a very big push by investment banks into new technology in the years before the financial crisis. At that point there was a very strong correlation between being fast and being profitable.
Now because of new banking regulation, which has affected technology alongside other areas of the business, banks are not just thinking about the speed or complexity of their systems, but also about how understandable and reliable they are.
Banks' technological systems are so powerful, sensitive and custom-made now that they can find it quite hard to keep control of them - they all worry about system crashes, or one person developing something that no-one else understands and then leaving. It's important to remember that for investment banks technology can be a liability as well as an opportunity.
On the job
At my bank there's a separate technology department that works on issues that affect the whole business, and then some developers, like me, work with particular business areas. I have a desk near the traders I work with, and I like to think I'm regarded as part of their team.
As with all kinds of career areas, you tend to see different types of people doing different roles. If you like action, you do a business-aligned role. If you like lots of discussion, you do a business analysis/problem-solving role. If you're very technically-focused, you can do a role that's mainly programming. In general, I'd say that technology people at investment banks tend to be slightly different to the other people you find working there - we're often less money-driven and more about problem-solving.
Technology in finance teams tend to be, like teams elsewhere in investment banks, very international and very socially diverse. There are probably fewer women in this field than in other areas of banking, but the ratio is improving.
The hours you work in technology at an investment bank depend on what team you're in. If you work very closely with a particular business area, you'll work broadly similar hours to the other people there, but often slightly fewer than them. Most people tend to do around nine to ten hours a day.
Developing your career
To get a graduate job here, you need to have a very sound understanding of how computer systems work. But I think if you've got the right level of interest, you'll naturally have learnt what you need to know to get started here. The analogy I often use is car mechanics - some people just drive them, while others can't resist lifting up the hood and poking around in the engine and end up becoming an expert very easily.
I find developers tend to think quite tactically about what languages to invest time in learning. And managers think carefully about which ones to use to make sure their bank is attracting the best people. I find that there are fewer languages really being used now than there used to be. In my job, I use C# and Java extensively. C++ used to be very popular, but I think it could be on the way out now. I regard everything else as niche - you'd have to have a good reason to use or spend much time learning any other language.
There are lots of career opportunities. Things in banking progress very quickly, so you tend to find that roles, teams and objectives change often and there's plenty of scope to try something different.
Especially once they get more senior, some people in technology in finance work as contractors - you can often find positions on particular projects at various investment banks for three, six or nine months. You get paid slightly better, but of course you don't have the same job security or benefits.
It's also not unusual for technology people to move into purely business roles as, these days, technology is such an important part of any investment bank's business.