“In HFT, innovation is critical”Investment Banks tend to be much slower to move and much more risk adverse. They are more reluctant to be the first to try something. Once an innovation take hold and a few banks are using it, others often want to not be left behind. The area they are most interested in is saving money. Banks are very process orientated and over time many of these processes have been automated in IT systems. IT costs banks a lot of money and efficiency gains are important to them. Efficiency improvement helps them offer better services, for less money. What would you say are the main differences between programming for finance tech and other enterprise technologies? Finance is a fairly dry subject. Being risk adverse, the last thing you want is too much excitement. There is less emphasis on look and feel and more emphasis on functionality. On the plus side, one thing banks do have is money, and they can pay 33% to 50% more in terms of salary for the same job and you get to work on more expensive systems.
“It is next to impossible to find a female Java developer with ten years fintech experience.”IMHO, one of the challenges which face banks is how to improve diversity to ensure they have the best talent available. Banks have a lot of difficulty attracting and retaining women in IT, much more so than other areas of IT. It is next to impossible to find a female Java developer with ten years fintech experience. If you are a woman with ten years fintech and Java experience, I would be very happy to hear from you. What kind of problems are you needing to reproduce frequently in order to get the tech right? And what are the advantages to determinism in finance-related programming? The key problem I try to solve is having a deterministic system, both in terms of behaviour and latencies. In finance, a single business unit can turn over billions of dollars in a day. Even the smallest error can cost a lot of money and a big error can mean the end of your business in minutes. You want a system which behaves in a well understood manner, and if there is an error, you want to a complete history of exactly why or why not the system performed an action. You need a very cheap way to record everything, every input and output, with detailed timestamps to see delays in micro-seconds.
JAX Finance is a conference dedicated to Technology in Finance. The two-day event will take place at the heart of the international finance industry in the City of London on 28 and 29 April, 2015. A must-attend for everyone working in finance tech, the JAX Finance will help developers and technical stakeholders build better software and innovative business systems in their industry.The advantage of such a model is that you can have systems which are much more responsive; for example around 100 micro-second latencies 90% of the time, external to your network, is not unusual in Java. The systems are designed to handle very high loads, e.g. peaks of 25 million transactions per second. Also they can turn over incomprehensible amounts of money which can be amazing to watch when it works. Nowhere does latency matter more than in financial IT systems. In your experience, what are the most common causes of high latency? IMHO, the most common causes of latency are poor measurement. You can’t fix what you can’t see. A common mistake is to only look at throughput or it’s inverse, average latency. This can hide some appalling latencies.