One of the common questions we face in explaining what we build is, well, “What exactly is it?” Some people only see the kiosk. Some people think of it as a traditional financial system. What people don’t see is the Platform, and it is built to not be seen.
When we started this, I considered building our system on a traditional platform: J2EE. Having worked with it before, I knew that it would provide a lot of the basic needs our systems required such as threading, lifecycle management, request dispatching, etc. I even built an initial rudimentary server using JBoss… but was soon struggling with the vastness of the APIs and the overhead of the application server itself. What I needed was a platform tailored for fast transactionality, easy scalability, very high availability, and a simple API. So we created one.
Now, almost 4 years later, we have a mature base upon which we build and deliver our services and product offerings. Our platform is tailored for processing financial transactions in a secure environment and designed for massive scale. In addition, we are constantly improving the architecture – thinning the transactional layer for lower latency, decoupling systems for better reliability and more flexibility, simplifying and partitioning the database for easier management and improved usage… and more!
Platform and product – they go hand in hand.
Of course, the platform – cool as it is – is really just the foundation of our products. We also have developed a set of services which can manage millions of individual users in a multi-tenant environment accessing a plethora of product services. Users can identify themselves to the system using a variety of identification and authorization methods, including biometrics, and securely access their personal information and perform secure financial transactions. Furthermore, the system manages a network of end terminals which access these services, and is able to deliver, add, and remove new services to the terminals “over the air”.
To this end, we’ve created terminal client software which runs on a self-service financial transaction machine (a kiosk) which interacts with the user via an intuitive touch screen-based GUI and various devices such as card readers and cash dispensers. The terminal software is extremely flexible and can take delivery of new product services (screens, logic, and data) on-the-fly without on-site interaction. In addition, the terminal software is designed to be “hardware agnostic” – i.e. the core is not tied to any particular hardware or operating system or device.
The Importance of the Platform
Recently, a Google engineer, Steve Yegge, posted a rant about platforms, comparing the technology stacks of Google to his previous employer, Amazon. In that comparison, he believes that Google outshines Amazon in all but a few ways, and the most glaring way that Amazon beats Google is in the platform. Amazon has one; Google doesn’t. A company which focuses on the platform as a core strategy will deliver more quality products faster that the one that doesn’t. As Yegge says:
“A product is useless without a platform, or more precisely and accurately, a platform-less product will always be replaced by an equivalent platform-ized product.”
Yegge also says that Facebook understands the importance of the platform. What started out as a basic social networking site for college kids keep track of each other has turned into one of the world’s largest application platforms. Recently, Mark Zuckerberg (Facebook’s founder) said:
“I think the story that we look back will be the apps and things that are built on top of Facebook. The past five years have been about being connecting people and the next five to ten years are about what are all the things that can be built now that these connections are in place.”
Also take a look at Yegge’s comparison of Accessibility, which he calls “The. Most. Important. Thing.” with Security. In the financial transaction world, security is a paramount concern. We have standards such as TR-39, PCI-DSS, and SAS-70. These standards are there to protect people’s money, and protection almost always means to make it harder to access.
We at Ganart get it. We are building that very kind of thing; not a social networking website, but a financial transaction network which connects everyone, banked and un-banked, with their money in a very accssible and secure way. And, much like Facebook does on a social level, we are all about the things that can be built now that those connections are in place.