For a publicly traded brokerage group, we built mission-critical applications for real-time trading on Forex/CFD markets – over ten products on one architectural foundation, delivered in days instead of months, and running in production for six years.

Client

A leading Forex and CFD brokerage group – one of the largest publicly traded FX brokerage companies in the world, operating from offices in 11 countries under the supervision of financial regulators in each of its markets. The group is recognized for its technological excellence, an exceptionally broad offering of over 5000 instruments, and ambitious marketing campaigns fronted by figures such as Mads Mikkelsen and Jose Mourinho.

Delivering into an organization of this size means working where uptime, data integrity and regulatory expectations are non-negotiable, and where every new application has to coexist with the core systems the business runs on. Software that merely passes review is not enough here. It has to hold under real market conditions.

Problem

XTB served demanding clients – who wanted to trade fast and on the best available market terms – with sophisticated needs, especially in terms of technology. As the client base grew over the years and the market shifted towards ubiquitous Internet access and mobile devices, those needs became increasingly diversified and increasingly specific to individual segments, partners and jurisdictions.

XTB developed a significant part of its software in-house, but serving the long tail of client and partner requirements would have meant diverting engineering capacity away from the core platform. The group's answer was to open parts of its infrastructure through xAPI – a controlled interface for external integrations – and to select delivery partners capable of developing custom software on top of it, to clients' requirements.

That decision put a specific demand on the vendor. A brokerage does not need a supplier that turns tickets into code; it needs a partner that can translate a business requirement into a system which will still be dependable years later, under production load, with someone clearly accountable for its architecture. The core stayed with XTB; the surrounding portfolio went to partners trusted with production access to a regulated trading platform.

What we did

The engagement started with a single project, namely a web application for trading on multiple accounts at the same time. We delivered it on schedule and the scope expanded from there. Within a year, a portfolio of over ten applications, commissioned by different business units of XTB, was available in xStore – the group's marketplace for tools that extend the standard XTB infrastructure.

A second stream of work followed: institutional partners establishing white-label brokerages on XTB infrastructure, in cooperation with X Open Hub – a company specialized in supplying technological support for institutional partners. Just as with XTB's own business units, these partners regularly needed capabilities that the standard toolset did not cover, and rarely just one of them. Each white-label engagement brought a comprehensive set of applications rather than a single deliverable, and several such partners onboarded over the following years.

That growth is the part worth noting. The portfolio expanded across business units, partners and markets without the delivery process degrading – because each new application was added to a foundation designed to carry them, not bolted onto the previous one.

We can recommend Makimo as a trustworthy software vendor.

Jakub Zabłocki, XTB

Timeline

Cooperation with XTB began in 2012, with the first applications live before the year ended. In 2013 we started delivering for white-label partners. The most intensive development phase ran until 2015, with individual projects continuing until 2017. From each application's first day in the production environment we provided ongoing support and maintenance, and continued to do so until the whole initiative was wound down in 2018 – six years of continuous responsibility for systems people traded real money on. Cooperation with the white-label companies extended far beyond that date.

Technology stack

The initial versions of the first applications, back in 2012, were developed on the Java EE platform, with Ajax-powered JSF. They worked exactly as specified – and that turned out not to be the same thing as working. Under real trading conditions, especially with volatile instruments, the stack could not keep up: state-of-the-art web technologies of the day were simply too slow for the latency the business actually required.

The available options were to keep optimizing around the constraint or to change the foundation. Patching would have bought a few months and left every subsequent application paying interest on the same limitation, so we proposed moving to Web Sockets, at that moment a new technology. It was still unsupported in older browsers; however, that constraint proved acceptable in this market, because XTB clients were technologically conscious and asking them to update a browser was a manageable trade-off – agreed with the client as a deliberate decision, not assumed on their behalf.

We therefore rewrote the initial applications and built every subsequent product on the new stack: Node.js with MongoDB in the backend – back then still considered rather niche technologies in financial services – with a modern JavaScript frontend connected over WebSockets, using the Socket.IO library to preserve backward compatibility where it was needed. Performance achieved with the new architecture was drastically improved, on par with the Flash clients widely used in web browsers for this purpose at the time, and even with native applications. Ten years on, the architectural decision made in 2012 is the reason the portfolio kept scaling instead of stalling.

Our unique contribution

Aside from the technological improvements, the decisive factor was our working knowledge of Forex markets and investing processes, from members of our team investing personally in various types of instruments – shares, commodities and Forex. That removed an entire phase most vendors have to go through: instead of lengthy discussions establishing how the markets work, what the exchanged data means and how the trading process looks, requirements gathering went straight to the core business processes each application was meant to implement. Nothing drifted between what the business asked for and what was built, because there was no translation layer to drift in.

The other lasting outcome of the cooperation was a set of reusable components – a live feed chart, trading panels, a list of tickers with current instrument prices. After the first successful deployments, it gave us the ability to create applications from scratch for testing in a matter of days, while still customizing every part of the application, maintaining a great velocity–flexibility ratio across the portfolio. This is speed of a specific kind: not chaotic acceleration followed by months of correcting earlier decisions, but structured, predictable delivery on top of a foundation that had already proven itself in production.

For XTB and its partners it meant new product ideas could be validated at a cost that made experimentation viable, and that the tools their clients used were ones competitors could not simply buy off the shelf. The code was never the deliverable. The outcome was: a trading platform ecosystem that kept working as the organization around it grew.

And if you are looking for a long-term technology partner for systems that have to hold under real conditions – not just pass review...

Let's talk
Krzysztof Rychlicki-Kicior

Partner @ Makimo. I am an adapter, a connector, a link - I bring together business & IT by advising how to use & adapt software wisely to achieve real business benefits. Current Associate Professor & Former Dean of CS Studies at UEHS, Warsaw; Education & Public Advocacy Expert at SoDA & podcaster at Software z każdej strony.