The importance of technology scaling in 2021

3 min read

LinkedInTwitterFacebookEmailCopy Link
The importance of technology scaling in 2021

When thinking about company strategy from a product point of view, most companies, including Flowbox, focus on 3 main levers:

  • Features: Enhancing existing features and developing new ones
  • Growth: Improving acquisition, retention and monetisation
  • Product market-fit expansion: Adapting the product to new markets and uses cases or creating complementary products

However it is important to realize that these alone are not enough. For a company to continue to grow, create, and capture value with its products over time, it needs to invest in supporting processes and infrastructure that enable those levers.

At Flowbox, we focus a lot on scaling our technology by making strategic investments in critical infrastructure to enable continued product success. This work is crucial to maintain the performance and reliability of our product.

When looking at technology scaling, we consider three main aspects of this process:

  • Platform and infrastructure work: anticipating technical issues that could lead to technical ceilings
  • Modernisation: revamping of UX and frameworks of existing products.
  • Debt management: maintaining a healthy backlog to avoid broken window effects, while refactoring, reengineering and keeping the product healthy.

Lets now dive deeper into what we here at Flowbox have changed in those areas.

Platform and infrastructure work

As we continued to grow our customer base this past year, having more and bigger customers, we anticipated the risk of hitting what is called an infrastructure ceiling, aka not being able to scale the service without downtime. This could mean that periods like Black Friday could be a nightmare for both our customers and our support teams.

So we decided to therefore modify the current architecture, whilst moving to a new cloud provider (AWS). The target of the move was to set ourselves up with automatic horizontal scalability and micro service architecture to increase the reliability of the system, while serving the demand peaks in those areas of the system that receive more traffic without any downtime. 

 This is an architecture where: 

  • Each box is a different application
  • Each box has its own size (resource)
  • Each box can scale horizontally

At the same time, we also improved our engineering life cycle, introducing a new CD/CI process using Github:

  • Push code in Version control (Github)
  • Github builds the application (docker image)
  • This Github action triggers CloudFormation to deploy the new build
  • CloudFormation smoothly deploys the new build 

All of this work means that we have the control of how much our services consume independently, meaning we can scale a single service according to the needs of the service or the moment – without downtime. We now have automatic deploys with less chances of human error factor on deployment. And all with an easy rollback.

And this has come with very positive results: we have increased the reliability of our platform with both BlackFriday and Christmas showing zero incidents. As always, our widgets are performing at great speed. 

Modernisation

Over the last year, we have refreshed the look and feel of the whole dashboard to improve the user experience and adapt it to the latest designs. We have enforced a full separation of layers by removing the use of Django templates and creating new dashboard designs in React. All of this work has given us: 

  1. A nice responsive design to support dashboard on mobile devices (coming soon)
  2. Integration capabilities: having a full separation of concerns will facilitate our Open API strategy and also simpler bidirectional integration with other services and platforms to add value to our product
  3. A better structured development team with clear responsibility areas.

Debt management

Technical debt tends to grow into a bigger problem the longer it is left unchecked. And therefore underinvesting in technical debt often results in having to stop production of those higher ROI work initiatives in order to fix things with overdue debt.

At Flowbox, we keep a good balance regarding technical debt management and, as such, we dedicate a few sprints every year to clearing up those areas that could impact the business if left unchecked.

Regarding our debt management, last year we upgraded to typescript and web pack 5 to help to:

  • Improve building performance with Persistent Caching
  • Enhancing Long Term Caching with better algorithms and defaults
  • Upgrading bundle size with better Tree Shaking and Code Generation
  • Refining compatibility with the web platform
  • Cleaning up internal structures
  • Preparing for future features by introducing breaking changes now

Our first few sprints of 2021 will be focused on refactoring, bug fixing and reengineering of certain product areas that need a check up. Plus, our new features, which, as we mentioned before, are key.

Here are some concrete examples of what this means for customers…

Our improved Email and Editorial Widgets enable brands to launch User Generated Content further into the online buying journey to improve communication with online customers. Our integration with Trustpilot allows brands to link customer text reviews within our widgets, heightening social proof within the online store. And, in compliance with accessibility laws, we have made our widgets fully accessible, facilitating the use of eCommerce for people with visual disabilities.

And there you have it! A brief summary of what the product team has been working on. But what’s coming next?

Here’s a little preview of what to look forward to in 2021…

  1. Social Media and Ads Integration – The improved facilitation of social media and ads integrations helps to make the broadcasting of customer content as efficient as possible.
  2. Advanced Media Rights – To further simplify the UGC process, our Advanced Media Rights uses batch processing to both save messages as templates and send messages in bulk.
  3. Auto-Influencer Collections – A continuation of Flowbox Collections, this feature enables users to automatically filter and display only images by a specific influencer within a widget.
  4. Top Products – This new analytics feature allows users to see which products are being sold thanks to specific images within their widgets.

The performance of our widgets, and thus the performance of our client’s websites, is incredibly important to us. We take on the responsibility of providing an excellent service with a top-notch product to heart and look to honor this every step of the way. That’s why we’re constantly working to improve our platform. All in all, it’s not a bad workout for maintaining a healthy product!