SBC News Navigating growth and scalability: the tech behind Flows’ success

Navigating growth and scalability: the tech behind Flows’ success

In the rapidly evolving tech landscape, scalability and robust performance are crucial for maintaining a competitive edge. For Flows, this is the driving force for success. The critical component that could make the difference between standing still and forging ahead of competitors.

In the latest conversation with SBC News, CTO MIke Broughton delves into the unique protocols, technological advancements, and strategic approaches that have been implemented to ensure that performance remains uncompromised amid increasing volumes.

In addition, an exploration into how the no-code automation platform has successfully navigated substantial growth, and the challenges associated with scaling operations, is also offered.

SBC News: Flows has endured a consistent uplift in growth and performance. To begin, could you talk us through what protocols and procedures had to be implemented to ensure that no drop-off in performance occurred during this process?

Mike Broughton: Firstly, thanks for recognising the growth and performance improvements we’ve experienced at Flows. We basically tried to keep to the KISS principle as much as possible – If we, as a small team, can keep it simple yet service our customers then it’s a win-win. To break it down a bit:

Scalable infrastructure – we ensured that our infrastructure was designed to scale with our growth. From optimising our databases, and designing the engine from ground up to be horizontally scalable and investing in cloud solutions that could handle increased traffic and demand without compromising speed or reliability.

Continuous monitoring – we set up robust monitoring systems to track performance metrics in real-time. This allowed us to quickly identify and address any potential issues before they could impact our operations or user experience.  

At the same time, these metrics are actually sent to the clients, so a badly performing flow due to a 3rd party API call for example, will be automatically flagged to both us and the customer along with potential resolutions.

Agile development practices – to ensure that our development cycles were rapid and adaptable, we adopted agile methodologies to ensure that our development cycles were rapid and adaptable. This meant that we could quickly iterate on new features, fix bugs, and make improvements without disrupting ongoing operations.

Automated testing and deployment – to minimise the risk of errors during updates, we implemented automated testing and deployment pipelines. To be fair, the automation is relatively new but the testing is our own version of the test driven process (TDD) and has been built in from the start.

User feedback Integration – we established a system to continuously gather and integrate user feedback into our development process. This ensured that we were not only maintaining performance but also enhancing our product in ways that resonated with our users.  

I stated before that one of the keys to Flows success is having very clever people working at Flows, and listening to their feedback. If ‘this feature’ is confusing to our internal team who know nearly everything, then the poor old customer is going to get lost.  This kind of feedback is priceless.

SBCN: What processes are in place to ensure that scaling operations do not compromise the quality of service provided to all clients?

MB: We’ve implemented several processes to safeguard the high standards our clients expect:

Capacity planning – at the end of the day, Flows is real time – and to keep it real time we have to know and be prepared for the load of our customers.  

We regularly conduct capacity planning exercises to forecast future demand based on current growth trends. This allows us to pre-emptively allocate resources, ensuring that our systems are always equipped to handle increased loads without any degradation in service quality.

Redundancy and failover systems – to prevent any single point of failure, we have built-in redundancy and failover systems across our infrastructure. 

Regular performance audits – we carry out regular performance audits of our systems and services. These audits help us identify any areas where performance may be slipping as we scale, allowing us to make timely adjustments and maintain consistent quality.  

We have a set of Flows that we run on our staging and production environment that really stress Flows.  We ensure that new releases only increase the performance of these Flows, and anything detrimental is keenly monitored/changed.

Pesky customers – with the best will in the world, people can write a bad Flow, just like a bad piece of code.  By ensuring the automated monitoring is up to the task at hand, we protect all customers from themselves.

SBCN: Could you discuss any particular challenges faced during this period of rapid growth and how Flows overcame them?

MB: We were lucky in that the track record of the staff meant we knew what was roughly going to our achilles heel in the near and far future. With this in mind, the original code was written to be very lightweight, self spawning in event of catastrophe (glad to say this has yet to be tested in prod) and as always performant.

We chose DigitalOcean to be our hosts, but all cloud servers have similar features, so when the load ramps up we can just increase the servers and a few minutes later everything has rebalanced etc.

But I always believe in the people – you must have thirsty, clever people working for you who are motivated and believe in their, and all other colleagues, goals. By getting this resource correct, over half your battles are already won.

SBCN: What role does automation play in managing the increased workload and ensuring consistent performance?

MB:  Automation, even though it saves time and increases productivity eventually, has a resource requirement. You need people who understand it from the ground roots up, and to implement it properly. Without a solid foundation, poorly implemented automation can create more problems than it solves. 

At Flows, automation has been a key focus, but we prioritised doing it right rather than rushing into it. We now have a nearly complete end-to-end system, including automated performance testing on both production and staging environments after releases. 

This robust system allows us to identify potential issues early and maintain consistent performance. However, we waited until we had the necessary capacity and expertise to ensure the automation was implemented properly from the start, recognising that a well-executed system is far more valuable than a rushed, incomplete one.

SBCN: How does Flows handle the consistent uplift in volume that is being witnessed? And what tech upgrades/improvements had to be implemented to deal with this, especially considering the demands from Light & Wonder?

MB: When Flows was a pipe dream and starting to solidify, we spent many hours just chatting about what should happen if we start to get the big boys. Volume etc is just one of the problems when you start playing in the serious leagues. Your system should of course scale, but it should also do what it says on the tin when under that load. 

It should always behave in the same way, process and safeguard all data and be simple and easy to use for clients authoring Flows themselves.

We designed lots of (I think) unique solutions so that we can redirect traffic if so desired, have run once functionality options so that even in recovery mode we do not process 2 bits of data twice (or the customer gets confused and starts sending data twice).  

We also have a neat solution for time ordered events coming in out of sequence – and how to unscramble it all into proper sequence.

SBCN: Following a record-breaking July, it was said that Flows’ platform “is demonstrating unparalleled robustness and versatility.” What would you identify as the key to this success?

MB: Clever thirsty engaged colleagues.  Full stop.

SBCN: How will Flows’ flexibility enable the company to continue to progress month on month? Are any further enhancements in the works to nudge this along?

MB: We are always looking for the next great vertical to move into. We have many smaller projects about to launch in the coming months that will really enable us and our clients to interact with their customers on a new level.

SBCN: How does Flows stay ahead of technological trends to ensure it can handle future increases in volume and scale?

MB: We like shiny things when they have been proven. We are not afraid of changing technology stacks or paradigms if one comes along and is shown to be a better fit than that we currently have.  

Our scale solution from design has proven to work, and will continue to scale happily into the future – meaning we can concentrate on delivering new functionality and tools to our client base.

I could of course just reel off the standard list of teaming up with industry leaders, proactive testing, scalability tests and investment into research but honestly, who doesn’t know this and those that fail to implement these will ultimately die a death.  

If you want a one liner, in Mike style then it would be this: if you hire the right people, you get all of the above.

Check Also

SBC News Flows recognised for its top security standard with ISO certification

Flows recognised for its top security standard with ISO certification

Flows has announced that it has gained ISO certification after being recognised for its commitment …

customer retention concept

Flows: boosting partners’ player retention with FlowsWave launch

In the second part of a Q&A marking the launch of a new suite of …

James King Flows

Flows: offering agility and productivity with our no-code apps

Ahead of the addition of a new suite of apps to its product portfolio, Flows …