Published: Feb 05 2013 / 05:07
I find it highly unlikely that banks do not have enough money to invest in software to "do it properly". It is either that in an attempt to do it properly they have cocked it up which is all too easy, or they are refusing to invest heavily enough to save money.
Money is only one variable of the equation. Remember learning about the triangle of money, time, and resources? Just because you throw money at the problem doesn't mean that it will solve the problem. As the article states, the greatest problem is growing complexity and fragmentation of software in general. If you have five different components all with a finger in the pie, when something goes wrong you have to work with 5 teams, using 5 different technologies in possibly 5 different parts of the world. That is just to find the bug. We need to work on consolidating code and bringing systems back in line. We shouldn't need 5 subsystems to do 1 simple task.
I think it would be naive to think the programmers at banks have just made a mess because they can't code or design. More investment means more and better resources. Even if you're fighting Brooke's law for a while, it will become efficient if you invest to improve and retain those teams.
I have worked in a bank. Banks are generally notoriously conservative. They are resistant to idea of using agile software development style which encourages constant refactoring, fast deployment cycles and code reviews. In a typical bank environment technical debt tends to grow faster even if they throw more resources to development.
Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.