3 ms·
Engineering at BankSimple
- nwmcsween 16y agoCan someone explain how banksimple is different than everything else? From my understanding it's just got a backing bank and puts a pretty face out for a webui... is that really all?
- thwarted 16y agoAfter some deliberation, we decided on a JVM-oriented stack. The JVM is not without its quirks and challenges, but it’s a mature platform with well-known performance characteristics and a vast archive of libraries, particularly in the financial services world we find ourselves in. We use the JVM in a non-traditional way. Our backend services are written in Scala, Clojure, or a mix of the both (making use of a thin compatibility layer we’re developing). Our web frontend is written in Ruby, and can be run on JRuby in production. This polyglot programming approach allows us to leverage the strengths of each language while still operating on a common platform. One could argue that it would be simpler to pick one language and stick with it, but that presumes that all problems are equally well solved in any one language. Other than the vast archive of libraries, which are not necessarily going to be straightforward or similar to use across the languages on the JVM, one could still leverage the strengths of individual languages while still operating on a common platform, such as x86_64. Does the addition of another abstraction layer that provides the same interface (the languages) but that you don't really interface with directly really have that many (significant or otherwise) advantages?
- sushrutbidwai 16y agoFor me the best the part of the post was "We don’t adhere to any specific development process or methodology at BankSimple. We’ve borrowed bits from processes that we’ve worked with and enjoyed, and eschewed bits that we think are unnecessary. Our process is always evolving, and I’m trying to provide ample opportunity for feedback and change as we determine what works and what doesn’t." Too many companies/startups set store by thinking whether their processes are agile or not. Or bring in external scrum masters to teach people how to do things and how to follow processes. But lot of people fail to understand that software development is people driven enterprise and its almost impossible to make 2 people work in uniform manner. And worse part if, lot of people think that, if you make 2 people work in same manner, chances of better software are increased multi-fold. Even though there has to be some basic processes outlining how to do things. It all comes down to DNA of the team and what the team is comfortable with when it comes to processes.