App Modernization

Etainement Enhances Their App and Boosts Productivity with D3V’s Expertise

Overview

Etainement empowers content rights holders to control and optimize their ticketing distribution & pricing with superior fan experience. D3V consulted with Etainement to deliver cloud foundation workshops on Google Cloud to their development team to suggest best practices, architecture redesign, ramp up the team on Google Cloud technologies and work closely with the Client team to modernize their application deployed on Google Cloud Platform.

The Challenge

The current application had the following drawbacks

  • Operational complexity and maintenance – GCE VMs needed to be patched with OS updates on a regular basis added to that the complexity to push code changes to all VMs in the group via SSH. Capacity planning always needed to be kept in mind.
  • Slower software release cycles – Manual deployments lead to increased software release cycles and lower developer velocity
  • Manual Intervention Needed for Scaling – With an unmanaged Instance group increasing capacity would mean manually adding additional VMs. Also the frontend and backend cannot be scaled independently by virtue of being a monolith.

Our Solution

  • D3V refactored the monolith application into two separate microservices that were deployed securely using Cloud Run –
  • D3V created a DevOps pipeline for automatic deployments.

Business Impact

  • Migrating from a single large monolith application to a modular microservices facilitated faster software feature releases to their application, increased reliability and prepared for future capacity demand by providing a more developer friendly platform.
  • Long term business value in terms of security, maintenance and cost

Key Accomplishments

  • Ecosystem Benefits: Ease and Speed of development with React compared to the plain JavaScript that existed prior to refactoring. With React’s vibrant ecosystem that includes a wide range of libraries, tools, and community support it simplified frontend development and provided access to a wealth of resources.
  • Development Speed & Flexibility: Development teams can now work more independently. Frontend developers focus on user interface and user experience (UI/UX) while Backend developers focus on APIs and server-side logic. This lead to faster development cycles.
  • Separation of Concerns: Cleaner and more maintainable architecture. It adheres to the Single Responsibility Principle and can make it easier to scale and extend your application.
  • Scalability: You can independently scale and optimize each component to handle increased load.
    • Operational Efficiency – No more OS patching for the VM, capacity planning and also manual SSH’ing to VM for the deployments
    • Portability – Cloud Run runs docker containers so your application is portable and easily extensible to run on any container platform.
    • Out of box integration with CI/CD – Cloud run comes with a default CI/CD integration out of the box using Cloud Build
    • Traffic Splitting / Canary Deployments – Cloud Run allows traffic splitting thereby allowing to have multiple versions of your apps running at same time
    • Costs – Cloud Run is serverless and can scale to 0 instances you are only billed when the instance receives requests although there is an always-on CPU mode.
  • Improved User Experience: React, a popular and powerful frontend library, enhances the user experience with interactive and responsive UI components.