Evolving BBM’s messaging app to a complete social platform on google cloud platform

Company Overview

Since it was created in 2005, the BBM messenger app has evolved from text and video messaging to a social ecosystem that unifies chat, social, commerce and services, including bill payment, top-up, vouchers/coupons, games, video, comics, shopping, travel, career and polls. The tens of millions of users worldwide include 60 million monthly active users in Indonesia alone.

Business Needs

In June of 2016, one of Indonesia’s largest media groups licensed BBM’s app technology and needed to move the infrastructure from an onpremises data center in Waterloo, Canada to Asia. This move would help them better serve their largest user base, which is located in Asia. With media consumption growing at
lightning speed, BBM recognized that migrating to the cloud would bring the elasticity, scale and cost effectiveness they needed as well as the geographic proximity to their largest user base. The move would also ensure high availability by taking advantage of redundancy over two cloud zones in Southeast Asia to help protect against unexpected failures. Google Cloud Platform (GCP) was chosen as the cloud provider for its future-proof architecture to support the product as it evolves. Moving the app, which serves 60 million consumers, onto GCP was not a simple undertaking, and this wasn’t only because of its massive size. The inherent challenges involved in migrating an application to the cloud that was never designed for that environment were compounded by the fact that the system’s original designers were no longer available to provide insights or advice. Adding to the complexity of the project was the need to capture every consumer interaction with the system for analysis. Together, these factors made it necessary to take a more complex approach. This meant finding a service partner with a uniquely diverse set of skills, including expertise that encompassed both cloud and legacy systems, Google-specific cloud capabilities, big data knowledge, and cloud application architecture. Facing time constraints and lacking adequate cloud expertise, BBM turned to Pythian to help with the migration. As a Google Cloud Platform Premier Partner with significant experience managing big data deployments and performing GCP migrations, along with the ability to scale to meet the required timelines, Pythian offered assurance that they could migrate the complex IT infrastructure to the cloud on time and with minimal risk. Pythian’s deep experience managing big data deployments was also an important consideration.
... Read MoreLess

Solution

The app technology was one of the first of its kind in the industry and is consequently a dozen years old with inherited technical debt. The platform blazed a trail recently with new messaging platforms—text, voice and video chat on a common backbone. All of these components had to be
dismantled and moved to GCP on an aggressive timeline without sacrificing stability. To add to the challenge, not all of the source code was available and none of the original developers were available to help or advise. The Pythian team’s extensive knowledge of GCP, application modernization and databases enabled them to act as a trusted advisor, troubleshooting and providing guidance on best practices for repurposing a large legacy application to run more effectively on the cloud. Bare-metal servers needed to be replaced with cloud virtual machines and GCP services. Legacy Oracle database needed to be migrated to a mix of open-source databases, including Cassandra, PostgreSQL and MySQL. The original storage system was replaced by elastic, cost effective Google Cloud Storage. The big data component was critical because the application data is used for auditing and analytics to monetize the app. A modern data pipeline needed to be built on Google Cloud Dataflow and Google BigQuery for big data analytics. The pipeline data was largely unformatted and needed to be standardized so it could be parsed and translated. The resulting terabytes of essential log data pushed Google Pub/Sub to its limits. The sheer amount of data in play with the app was staggering—a petabyte of data per day. Pythian’s 20 years of data experience ensured that the process of wrangling a petabyte of data a day ended up as a robust and automated one, using Pub/Sub, Dataflow and Elasticsearch.

More than a lift-and-shift

Pythian applied its full-stack experience to go beyond a traditional “liftand-shift”, architecting a cloud solution that will be automated to take full advantage of the agility and scalability of GCP services and to best use all of Google’s services. A continuous integration and continuous deployment (CI/CD) pipeline developed by Pythian’s DevOps team will bring automated deployment of new consumer-oriented features in the future. This automation will replace manual, error-prone deployment work with automated deployment of new consumer-oriented features, improve software quality and also speed the deployment process. Ensuring there was no service interruption throughout the project—including during the migration—was critical to avoiding customer churn, but this added to the complexity of the engagement. The approach was to move users to GCP and, if there were problems, they would be moved back to the data center with zero downtime. A further challenge was the need to take a phased approach, leaving some users on the original system for contractual reasons while others were moved.

The Pythian difference

Pythian’s delivery model was a good fit. BBM needed a partner who shared their sense of urgency and could accommodate their needs as the business evolved in both North America and Asia. Pythian’s global remote service delivery model allowed BBM to scale as required on short notice and even around the clock, providing the required flexibility. It took a multidisciplinary team to accomplish such a complex project. More than 30 engineers from both Pythian and BBM in North America and Southeast Asia were involved in the re-architecture and transitioning of the platform to run on GCP. To meet the aggressive timelines, the team needed to work seamlessly in lockstep, coordinating Agile development and on-the-fly testing.
... Read MoreLess

Result

The BBM Messenger app now lives on a future-ready architecture that will support the app as it evolves to meet the growing demands of mobile consumers

Explore Pythian’s popular services:

Technologies

  • Google Cloud Platform
  • Google Cloud Engine
  • Google Cloud Storage
  • Google Cloud SQL
  • Cloud Dataflow
  • Google Cloud Connect
  • Google Load Balancer
  • Google Compute Engine
  • Google Cloud Pub/Sub
  • Elasticsearch
  • Cassandra
  • PostgreSQL
  • Kafka

Looking to learn more about Cloud Migrations?