I have to disagree with you on that one. I've interviewed a lot of people from all sorts of places and can formulate an opinion about what is "the state of the art" in the industry. Granted, my view is framed by the PM perspective, so I don't really know what's happening in the back office, for example. Firm-side and broker-side software is probably be very different (stable, takes ages to add a feature etc) and from a PM perspective these are "exogenous" parts of the problem, just like the exchange connectivity.
First, forget about HFT shops, as they are their own beast (this said, I have accidentally done a stint for an HFT firm and people there roll a LOT of python for non-trading path stuff like reporting). I am talking about places that are doing medium frequency stuff and/or semi-discretionary trading. Also, let's restrict ourselves to large multi-manager platforms and mid-size funds because that's what I've seen.
Second, let's define "production code". How about "a path of software components that participates in live trading or managing live risk" at the level of alpha unit? Along that path is
- historical data analysis and model fitting (i.e. recurrent pre-trade analysis)
- pre-trade/SOD environment generation
- long-term target generation
- actual order generation and submission
- execution/position allocation
- risk reporting/trade reconciliation, PnL attribution and other misc stuff.
Most of the people I've spoken to use various forms of interpreted languages for most of these steps, with an important exception of step 4. It usually would be the same language that they use for research since it allows for very quick idea-to-trade time.
PS. "font end", "UI"? Have you ever seen any alpha-generating team spend more than a cursory amount of work on the user interface?