The Road to Our Testnet Launch - Latest Development Report 1

The Road to Our Testnet Launch – Latest Development Report

The 15-strong team of developers at SmartDec has been leaving no stone unturned. In their previous report, we were excited to receive a launch date for the testnet. On 30 November, we’ll be opening the doors at last and onboarding thousands of traders. But it hasn’t been smooth sailing to get here. This latest update straight from Moscow describes all the challenges and issues they’ve had to overcome to reach this point.

Going through the Dublin Code

If you’re familiar with the Digitex project, you’ll know that development has been our greatest challenge. We started out with a team of programmers in Dublin with experience building systems-critical software in the telecoms industry. 
Our team worked hard and did their best. But as Adam has mentioned in several interviews, they simply didn’t have the experience to build something as challenging as a real-time futures exchange and matching engine capable of handling heavy load. However, they shared their code with SmartDec and although there were several issues with it, it still gave the new team a starting point.
If you want to read in greater depth about the technical issues SmartDec uncovered and the work they put in to ensure the system is robust and fast, check out their latest development report here. In a nutshell, our Dublin team sent SmartDec the web back-end, UI, several databases, message queue, and the futures engine itself. Some of it was functional, but much work is still to be done. 

The Work SmartDec Has Done So Far

When you take a moment to consider the many elements that building a robust, high speed and resilient futures exchange takes, it’s not surprising that we’ve hit a few roadblocks. Adam has high standards and knows what he wants. That takes a team of great minds and innovation to pull it all together. It hasn’t been easy but we’ve finally found that in SmartDec.
From adding functionality to the back end to optimizing and debugging the futures engine and building out the ladder interface, the team has been developing the exchange at lightning speed. Rather than thinking of the simplest examples and user stories, they’ve researched and implemented a full 17 user stories so far for the interface and are extensively testing them all.

Building a Back Office and Implementing the Database

The code that SmartDec received was missing a key element–the back office. The new team extensively researched the best methods for implementing this for the Digitex exchange. They did this through back to back meetings with Adam and also by consulting external third parties more familiar with the issue. 
SmartDec have decided to integrate some third party elements into our back office in order to avoid reinventing the wheel and to cut down on development time. One example of this is the integration of Zendesk. And as SmartDec mentions in their report, “Everything that is not a third party component is now in development.”
The existing database from Dublin included many unused tables. The team quickly set about optimizing the code so that it can achieve super-fast performance and optimal uptime. 

Optimizing and Refactoring The Message Queue System and Futures Engine

By optimizing the existing message queue system SmartDec have taken its capacity from 20,000 messages per second to 500,000 messages per second. And extensive refactoring of the future engine means it is now capable of handling 40,000 transactions per second. One transaction consists of order placement, matching, creating a trade and then communicating this to observers, meaning that one transaction consists of up to 4 messages. With further optimization and testing this capacity is expected to rise.

Wrapping It Up

SmartDec points out that this latest report is a collection of notes from over the summer and that since then development has moved further along. In fact, these reports are always at least 2 weeks behind where they are currently at. The team continues building all the components of the exchange together to run them as a whole–as well as testing, testing, and more testing to deliver a fast, stable, and highly resilient futures exchange.