Remote Monitoring and Management Software for Media Publishers
- Custom workflow management SaaS
Integration with internal systems
Microservices-based architecture design
Usability audit and UX improvements
Iflexion helped the customer implement real-time remote monitoring and management software as well as digitize workflows based on Agile development practices.
The customer is a global network of 30+ affiliated media publishers with more than four million subscribers. The company was developing their custom workflow management system to support advanced content distribution and marketing. Designed for marketers by marketers, it was an all-in-one suite of tools for creating and scheduling marketing campaigns as well as managing content and promotions.
The customer’s major goal was to find a full-cycle development partner for comprehensive technical enablement of their system, while ensuring intuitive user experience along the way.
One of our past customers recommended Iflexion as a reliable technology partner, capable of establishing smooth software development processes and having a proven record of projects for media and entertainment. As a result, the customer chose Iflexion as a dedicated development team.
In the course of our 10-year cooperation, we moved the customer’s system from the outdated ASP technology to a modern technology stack using .NET, adopted a SaaS model, ran UX audit and redesign, changed the solution’s architecture to a microservices-based one, phased out legacy features, and added new functionality.
Moving to SaaS
Initially, the marketing solution was developed just for one media publisher. Once other affiliated publishers recognized its value and set about adopting it, we would create a new instance as soon as in one week. Moreover, when a new feature was added to the application, we had to manually set it up for all the organizations. To simplify these processes and save time, we moved the system to the SaaS model.
Our team merged different setups into a single base, implemented organization management, and configured user roles and permissions, which cut the process of adding a new organization down to an hour. Currently, more than 30 media publishers are using the app.
UX Audit and Redesign
When new publishers joined the solution, each of them required their set of new features, which were not always relevant for other SaaS subscribers. As a result, the solution became so complicated for new users that onboarding could take weeks. To improve user experience and ensure efficient onboarding, we ran UX audit.
Based on the findings, we revised the structural design of the information space so that users could fulfill their tasks in a few clicks. To simplify the navigation, we eliminated the major content division in the Marketing and Mailings sections and instead provided simultaneous access to them.
Next, our team separated user account and user management workflows and introduced an independent analytics and reporting component. To make all workflow entities discoverable at once, we suggested pushing them to the global menu dropdown.
Taking into account end users’ and stakeholders’ feedback, we redesigned the search tool by joining three interactive search panels and simplifying long-nested filter dropdowns by grouping filters into logical units.
Additionally, we improved the weekly planner UX by bringing third-party calendar and scheduler views under a single interface.
Our dedicated team revised the solution’s architecture for the following reasons:
As a monolithic system, the solution was difficult to support as the number of new features grew.
It was costly to scale in case traffic increased, since it required new resources.
Some of the system’s features were no longer relevant as their users became defunct while many new affiliates joined.
The customer wanted to move from fee-based Windows servers to free-of-charge Linux servers.
Considering these issues, we offered to redevelop the solution from scratch and move it from a monolithic architecture to a microservices-based one.
Together with the customer, we revised the application and agreed on redundant features. One half of our team was supporting the existing solution, while the other started developing the new system.
We used Docker for services containerization and OpenShift for managing the containers. To develop user interfaces, our team leveraged React. We also applied TypeScript to simplify development of complex interfaces. We chose .NET Core for developing backend services and deploying Docker containers on Linux. Microsoft SQL Server was chosen for managing database files, while Redis was used for database caching. We used RabbitMQ as a message broker, which is easy to configure and maintain.
Apart from phasing out legacy features, we also added new functionality to the new system. For instance, we digitized customer journey mapping for better productivity. Each customer’s journey included multiple steps, like adding a new user to the subscribers base, redirecting users to a landing page, sending an email if a user didn’t complete the registration process, and more. Previously, marketers had to map all those steps manually, which led to messy diagrams and errors. We automated those processes, enabling marketers to create customer journeys right in the system.
We also implemented the feature for creating targeted campaigns and emails, with each campaign having a unique tracking code. We then enabled real-time marketing analytics with automatic hourly updates in place of their legacy error-prone system, which was based on spreadsheets and scattered across several backend solutions.
Additionally, Iflexion integrated the solution with the customer’s internal systems, including their CRM system, email engine and lead processing tool used to verify emails, run them against the blacklist, and more.
To ensure data security, we introduced the functionality that required all newly subscribed publishers and their employees to be registered in the customer’s Active Directory to get access to the application. The solution was also equipped with single sign-on so that users could enter their login credentials only once to access all the available solutions. It was the safest option as it reduced the likelihood of error while also improving user experience.
Additionally, we made sure sensitive user data was encrypted to provide GDPR compliance and protection.
Iflexion was fully responsible for developing and supporting the solution. For 10+ years of collaboration, our team grew from 2 to 35 specialists. We had four teams working alongside, with each of them responsible for a specific part, such as the admin panel, the marketing campaigns functionality, the frontend, and DevOps.
Initially, we practiced Scrum with 3-week sprints but soon moved to Kanban to accommodate dynamic changes posed by the customer’s business. We released new features several times a week and could make flexible plans, reprioritizing tasks as needed. Despite returning to Scrum when developing the microservices-based system, we kept the by-feature release schedule.
Our team implemented automated tests, including unit, server and end-to-end tests. Automated testing allowed us to reduce test execution time from two days to a few hours. To streamline release cycles, we also involved our DevOps engineers, who set up a CI/CD pipeline using Bamboo and Bitbucket. To ensure high software quality and team cohesion, we also practiced code review.
During more than 10 years of collaboration, we became a trusted technology advisor and development partner to the network of 30+ media publishers. Our team was fully responsible for developing the content distribution and marketing workflow management solution, delivering new features, migrating to the SaaS model and microservices-based architecture, and incorporating Agile development practices.
During our cooperation, we achieved the following results:
We helped increase the number of affiliated media publishers using the solution from one to more than 30.
We implemented real-time remote monitoring and management software and enabled the customer to get data updates hourly instead of weekly.
We improved the application scalability by moving from a monolithic architecture to a microservices-based one.
We automated software testing and deployment by setting up a CI/CD pipeline and running automated tests.
WANT TO START A PROJECT?