I’m currently working with the infrastructure group to improve the scalability of our system. Although built on sound Java technology with sound architecture that clearly puts 99.9% of comparable systems to shame, clients will always find ways to push the boundaries.
Some clients will say, “Since our end of day risk analysis scheduled tasks only take 20 minutes to run thanks to the wonderful performance of your system, can’t you guys just give us real-time portfolio pricing?” Others might simply think that it’s perfectly natural that one should never have to go to the database: “Yes, we’d really like to have 250,000 trades in memory at all time, including all associated advice documents, settlements, documents generated and those received from our counterparties. Why? Is that a problem?”
Frankly, I think it’s totally legit… you’re always going to want to push the envelope. So I’ve recently moved to the infrastructure group as they need my help to migrate our back-end and make it adaptable to high-performance distributed caching tools such as GemFire and Coherence. In theory it actually doesn’t look so complex since we already have a fairly clean cache API (with an internal implementation) so my idea is to upgrade this and adapt the framework a little bit in order for us to be jCache compliant. Once that’s done, we should be able to theoretically plug in any 3rd party Cache and voila… or not Voila, since the French can’t seem to agree to anything these days other than holding some sort of weekly strike… But anyway, the point is that it shouldn’t be too hard… though I am a bit worried about cache consistency and database transactions. The API doesn’t provide a way to delegate this to the cache implementation, so I’m guessing it’s up to us to deal with this. Anyway, that’s what i’m up to right now…. Still doing some infrastructure level enhancements on the report framework though, but most of our Back Office development is migrating back to Europe, which makes sense since settlement typically occurs closer to GMT so most of the knowledgeable Back Office staff is typically found in Paris and London.
When I’m doing serious refactoring and design work where I don’t interact much with others, I tend to immerse myself in code with the help of music and I’ve been listening to Launchcast a lot lately. I was thinking today: They know my favorite artists, and they know (or should be able to know) new release dates. So how come they don’t give fans “sneak peeks” at upcoming album releases, potentially even making deals with major labels so that I can buy the album 2 weeks before it goes out to the general public? I’d love to start hearing a rotation of Morcheeba songs before the album hits the streets…