BankSimple Mini-Architecture - Using a Next Generation Toolchain

I know people are always interested in what others are using to build their systems. Alex Payne, CTO of the new startup BankSimple, gives us a quick hit on their toolchain choices in this Quora thread. BankSimple positions itself as a customer-focused alternative to online banking. You may remember Alex from the early days of Twitter. Alex was always helpful to me on Twitter's programmer support list, so I really wish them well. Alex is also a bit of an outside the box thinker, which is reflected in some of their choices:

  • The JVM acts as a convergence platform for these languages:
    • Scala - ideal for writing performance-sensitive components that need the safety and expressiveness of the language's advanced type system.
    • Clojure - rapidly prototype in a more dynamic language while still offering the benefits of functional programming.
    • JRuby - makes available a bunch of great libraries and frameworks for doing frontend web development, like Rails and Padrino.
  • Frontend: MooTools on the JavaScript side.
  • Data Storage: Experimenting with Postgres 9.0 and Riak.
  • Platform: Amazon EC2

Your typical web startup isn't using Scala, Clojure, and JRuby. Should you? If you are looking for a push to try something a little different, this may be it. After all, using different languages for different purposes makes as much sense as using different databases for different purposes.