An email has flooded in:
I came across your presentation ‘Perl in the Enterprise’ and happen to have a burning concern closely related to one of the bullets ‘Banks see <Perl> as a competitive advantage’.
I am consulting at a major bank in South Africa, and our team have been using Perl very productively to develop and maintain a customer loyalty rewards application. This application has now suddenly caught the attention of the ‘Architecture Board’ who are questioning whether Perl (or any other scripting language) is appropriate for production use. A presentation will have to be made to this board to present a business case.
Whatever the basis for this concern, some quotable and referencable stories from other banks, such as the list included in your clients on the website, would be gold for us. I have searched extensively on the web and cannot find anything in this light which is also recent, as in the last 5 years. Other than Nvidia and Booking.com I can only find anecdotal, 2nd hand evidence of Perl use for medium-to-large applications in well-known corporates.
Do you by any chance have anything or any contacts in those banks that would be willing to respond to an email to confirm their use of Perl and perhaps repeat the competitive advantage claim?
The presentation he’s talking about is Perl in the Enterprise, which I gave at Linux World Expo in 2005. The particular line he’s interested in is on slide 6 where I say that banks see using Perl as a competitive advantage. I’m pretty sure that I was paraphrasing Phillip Moore of Morgan Stanley who had said something similar in a keynote at OSCON in about 2001.
Obviously I know that banks in the City of London still use Perl. But it’s been several years since I worked at one, so my personal experience is slightly out of date. What my correspondent needs is people who are currently working in banks who are happy to go public and say “we use Perl in our production systems”. It would be even more helpful if they could add “and here’s why…”.
Can anyone out there help?
Isn’t this the right time to invoke the “Don’t fix what’s not broken.” expression managers like so much?
They have been successfully using Perl in that bank for some time (years?). Isn’t that the proof they need to keep using it?
I’ve worked at Bank of America, JP Morgan Chase, Millennium Partners, Morgan Stanley and AIG. I also know guys that work at Goldman Sachs, Wells Fargo, Blackrock and dozens of hedge funds. EVERYONE in the financial industry makes EXTENSIVE use of Perl. At Morgan Stanley they say that “Even the housekeeping staff codes in Perl”.
It’s only LA and it doesn’t say why they use Perl but there’s a reasonable long list of companies at: http://perl.la/
I’ve heard from a previois employee of BlackRock.com, that they use Perl for it’s main product line “Aladdin”: (They’re certainly looking for Perl people – see search for it on http:// blackrock.jobs/)
I have been actively using and promoting Perl use in banks for around 15 years.
Perl is particularly well suited to the banking environment because Banks frequently take over other companies or merge with other financial institutions and so there is often a need to interface between lots of different systems, Perl is wonderful in this respect.
I can personally vouch that the following banks are (or did) using Perl in Production.
Merrill Lynch, HSBC, Commerzbank, LCH Clearnet, JP Morgan, HBOS, Royal Bank of Scotland.
Thanks Tony. If (and only if) a senior employee of another bank asked for a reference at one or two on that list that could attest to the use of Perl for glue-type application, would you be willing to provide a contact?
We at Pirum Systems, reconcile approximately 1/3 of the worlds security lending trades… using Perl.
Thanks. That is a useful reference
Wells Fargo NA uses Perl extensively. Does that count as a big enough bank? Thompson Reuters (fixed income securities division especially) uses Perl extensively.
Great! Asking the same question I posed to Tony: Are you willing to put forward a contactable reference if approached by someone from another bank? Just to confirm Perl is used for data munging in non-trivial production applications.
(I am merely anticipating the type of follow-on question here, not doubting anyone’s word)
Be happy to. I’m not at either of those positions anymore, but I worked at both for years each.
It wasn’t a bank, but at my last job I wrote financial transaction software exclusively in Perl that billed individual users via third-party partners, that was responsible for a large proportion of the company’s overall revenue, adding up to seven figures of transactions a month.
On one hand, The Architects *may* have a point. You may be right to ask them *why* they feel Perl is not right for production usage. When I have these conversations, unfortunately, some of our leaders simply don’t like a language, or they had a bad experience with it previously, or they don’t like it because it isn’t their preferred stack; this is worse when they are zealous in favor of ruby or java- this is effectively a religious war, and you were better off Doing Good Work by yourself. Sometimes, they have a legitimate gripe or concern, like long-term supportability (from a pure languages perspective).
At the same time, you need to have data-in-hand to back up your arguments as to why it’s appropriate. These are the discussions that need basis in fact, not feelings. Some arguments you may run up against are “It uses too much memory.” or “It runs too slowly.” – make sure you have performance use cases IN HAND, BEFORE these questions are asked. This data can go a long way with Architecty-type folks.
In my org, we use perl in both our front-end and our back-end. Perl does customer-facing or front-line work like managing customer support functions, or order processing (in production). Perl does operations work, like providing monitoring and log file analysis (in production). Perl does security work, like orchestrating other tools to scan our networks, and ensure compliance with key systems (in production). Like any language, whatever you’re implementing needs to be done sanely and efficiently- the language is not largely relevant if your code is garbage. This is all being done at the level of a Very Big Company.
Keep your code clean, be able to explain what it does, how to rebuild the environment from scratch (if necessary), and provide use-case based factual analysis defending your performance.
The key is to use the right tool for the job. If perl happens to be the right tool for your use case, then that is fantastic. Be open to what Archie has to say- sometimes they have good ideas and points(‘There’s More Than One Way To Do It’). But stand by your guns.
Linkback to how I found this post (via Reddit): http://www.reddit.com/r/perl/comments/1rp9ak/perl_in_banks/
I recall some of the members of Toronto Perl Mongers (http://to.pm.org/) have or perhaps still work at Morgan Stanley, and probably some other financial institutions.
From the other end of things, it would be a good idea to start your own risk analysis of your applications, both for vulnerability and impact. A loyalty program? What’s the worst thing that could happen financially? Reputationally? How secure is the rest of the system? And don’t forget to look at assumptions, such as operating system, hardware, experienced coder pool, and complexity. What is the long term SW roadmap?
Hired recently by Barclays as a Perl expert.
I know Morgan Stanley and Merrill Lynch use perl as I interviewed at both firms for a perl position. DB uses it also I have heard speaking to recruiters when I am trying to hire perl programmers. We use it extensively at the Brokerage I work at.
Thanks to Dave for the post and to all for the feedback.
The company which handles ~10% of the Tokyo Stock Exchange flow uses Perl extensively for managing the services (starting / stopping / checking their state). Sorry that I can’t give more details, I don’t work there anymore.
Barclays Global Investors (now BlackRock) ran their entire active equity portfolio on Perl. At its peak, it was about $50 billion in assets under management. When that division was first started, Perl was chosen *precisely* because they felt it gave them a competitive advantage (mostly rapid development).
That is very interesting. Was that up until the acquisition? What were the reasons for moving away from Perl?
I agree with a couple of the earlier posters – let management present a business case for moving away from Perl. If you already have a system implemented in Perl, they’d need to have a watertight case to move away. I wonder what their concerns were? I’m not sure about banks – but I know Net-a-porter use Perl a lot (and they always seem to be looking for Perl programmers).