About the Client

Our client owns and operates media companies whose publications reach over 1M readers in 17 countries. They have engaged us in multiple initiatives, from platform development to database management.

As part of this project, we cooperated with the client’s Irish branch. This agency maintains custom solutions for managing marketing campaigns, user journeys, orders, and subscriptions.

Challenge

Built on the now unsupported .NET Framework 4.8, the client’s existing campaign management platform had slow performance. Over the years, the codebase contained inconsistent coding styles, produced by multiple in-house and outside developers. As a result, maintenance tasks congested the backlog and limited scalability.

The company had plans for business application modernization. However, while introducing new technologies and approaches, we had to preserve some critical features of the legacy platform.

Cooperation Structure

We set off the application modernization process in July 2024. From Exoft's side, there are three frontend developers, one backend engineer, and one QA expert.

As an integral part of the team, our specialists participate in all clients’ processes and procedures. We follow bi-weekly Scrum sprints and participate in backlog grooming, sprint planning, daily syncs, retrospectives, and product documentation.

Our team cooperates with the client’s Product Owner, who allocates workload, prioritizes tasks, and shapes enterprise application strategy. We can, too, offer suggestions for product improvements, whether it's a more efficient pattern or a smarter library choice.

Scope of Work

We helped the client modernize the enterprise app platform – a solution that helped media companies manage their marketing campaign and order placements. Our overall task was to re-architect and re-develop a solution. As a result, we:

  • Migrated from a monolith to scalable microservices and an event-driven architecture
  • Replaced .NET Framework 4.8 with .NET 8, and Microsoft SQL Server with PostgreSQL
  • Sped up backend operations, improved system performance, and simplified maintenance.
  • Applied domain-driven design principles to align the system architecture with the client’s key business entities
  • Integrated and managed analytics within the solution, enabling publishers to monitor key performance indicators
  • Implemented logging to support system monitoring and incident management
  • Performed manual and automated testing on every feature before deployment
  • Produced integration and unit tests

On the front end, we switched to the latest version of Next.js and KendoReact, which let us use ready-made components and produce more responsive designs. We preserved familiar UI/UX elements to simplify adoption for existing users.

We use a trunk-based development for better version control and more frequent updates. This way, we have improved CI/CD pipelines and sped up the software delivery process.

Solution

The new enterprise app platform helps marketing teams build campaigns, manage user journeys, and then track their performance in detail. Marketers can create multiple campaign components and connect them into a single flow. These include:

  • landing pages
  • push notifications
  • chatbots
  • pop-up ads
  • banners

Marketing teams can add custom visuals and texts, create promo codes, and personalize content per customer (e.g., embed discounts based on previous user interactions). Once ready, the platform generates HTML code to integrate components into any website.

The platform provides end-to-end user journey tracking, from the moment a visitor lands on a page to order submission. It captures performance data for each campaign. You can track clicks, traffic sources, URLs, traffic, conversions, and much more.

The enterprise app platform supports internal team collaboration. Marketing teams can issue, review, and approve campaigns directly within the system.

Achieved Value

With Exoft's support, the client had a successful enterprise application transformation within one year. In the next quarter, we are planning the next release.

The new enterprise app platform has several improvements:

  • Performance. The solution has better performance metrics: faster load times, better responsiveness, lower error rate, and fewer bugs.
  • Validation and verification. Validation on both the front and backend helps us ensure data accuracy. It minimizes data inconsistencies and adds an additional security layer.
  • Security and code quality. We applied coding best practices: it is clean, readable, consistently styled, and less complex than it was before.
  • Scalability. The architecture supports platform expansion. New features and integrations can be added without impacting the enterprise app platform’s performance.