How Cake built Sphonic.com, an innovative middleware application that has taken the financial market by storm!

Posted by Peter Evison

03-Dec-2012 14:57:00

Background

In 2012, Cake Solutions worked with Sphonic.com to support the technical development of a new middleware product, Workflow Manager, to improve customer acceptance and fraud prevention in global e- and m-commerce. Workflow Manager acts easily and simply to aggregate data across customer-merchant-vendor transactions so that merchants can accept genuine customers, terminate fraudulent events and avoid risk in ‘customer not present’ transactions.

Founded by Andy Lee, an expert in online ‘know your customer’ (KYC) and fraud prevention systems, Sphonic.com is based in Windsor, Berkshire. They have recently recruited CEO, Riten Gohil whose background includes the Serious Fraud Office and Visa Europe. Sphonic launched Workflow Manager at the October 2012 European iGaming Congress and Exposition (EiG).

Technical Project Description

Sphonic’s Workflow Manager is a scalable, resilient, actor-based system. It stores its data in schema-free data stores, partly to achieve the desired flexibility and partly to achieve ease of distributing the data set. It communicates with the vendors, merchants using XML WS-* (SOAP) and REST endpoints in the request-response paradigm, and it uses REST API for its user interface. Workflow Manager is designed to take advantage of modern distributed & virtualised computing infrastructure - it scales proportionally with the amount of computing resources available to it. Workflow Manager takes the big data approach. Finally, Sphonic’s Workflow Manager is designed to fulfill the high-availability requirements, aiming to minimise any service downtime to the clients.

How we approached the challenge

Using our 3 stage Catalyst Process we massively reduce risk to entrepreneurs and investors:

  • Stage One: We evaluate the technical problem, impartially determine the best technical stack and architecture using the latest cutting edge technologies and techniques and offer an early indication of resource requirements.
  • Stage Two: Cake’s own development team builds a proof of concept model, which confirms the technical solution and provides a minimum viable product to begin the customer feedback process.
  • Stage Three: This stage sees the completion of the application to v1.0 and its on-going development with frequent releases. Cake’s agile development process involves daily interaction with our clients and regular demonstrations.

What are we building?

We’re building a message broker that connects merchants and vendors; keeping the parties completely isolated. The merchants can obtain services from Orchestra’s vendors without--where possible--having to spend time customising their own internal IT systems. Similarly, when the vendor changes its API, the merchants can be isolated from the change. On the flip side, the vendors may gain access to many more merchants; just as gaining the ability to be more flexible with their APIs.

How are we building it?

Sphonic’s solution relies heavily on open source modern languages, frameworks and libraries. This allows Cake to apply the latest developments without worrying about the stability and reliability of the vendors, something that a closed-source world would force us to do.

Sphonic’s Workflow Manager solution runs on the Java platform and its main implementation language is Scala. It is a object-functional, statically-typed language. Functional programming allows the right level of abstraction for system operations and it allows us to easily compose the small operations into larger ones. Furthermore, because Scala is statically typed, we can encode a lot of information in the types in our code. Ultimately, we are able to offload work that would normally be up to the programmers on the compiler. The end result is that we have fewer lines of code and that the code we have expresses the essence of the problem more clearly than imperative and less strongly typed languages.

Turning away from the language, the Sphonic application uses established Scala and Java libraries, the most notable being Akka, Scalaz, and Spring Portfolio. Alongside the code that runs in the Java virtual machine, Sphonic needs different storage and messaging infrastructure, including Cassandra, MongoDB, Amazon logs and Rabbit MQ.

Quote from Terry Chow – COO of Sphonic.com

“Definitely no understatement to say that having Cake Solutions on board as our development partners has been a decision we at sphonic.com continue to pat ourselves on the backs over daily. From helping us shape and refine our concept to delivering a game-changing product, it's been a 'partnership' in the true sense of the word. If, like me, you've been around the block a few times and think you've seen it all, it's well worth having a rethink!”

Topics: Akka, Business, mongodb

Subscribe to Email Updates