Bridestory Uses Containers on AWS to Improve Agility

Bridestory

Growing Pains

Bridestory was launched in 2014 as a one-stop shop for brides to find wedding inspiration and connect with potential vendors. Headquartered in Indonesia, the Bridestory app boasts a rapidly expanding user base with some 700,000 visitors, including users in the Philippines and Singapore. Two years post-launch, the startup was experiencing growing pains borne of its monolithic architecture. Slow iteration and difficulty in deploying and scaling were interfering with time-to-market, which was a top priority. Bridestory had built its original architecture in the Amazon Web Services (AWS) Cloud and began consulting with AWS Cloud architects about migrating to a container-based infrastructure.

“Since the end of 2018, we have been hitting our metrics. Previously, we were averaging three weeks to launch one big feature, whereas now our developers are empowered to conduct small releases daily, with less than a 1 percent failure rate.”

Doni Hanafi, Chief Technology Officer, Bridestory

  • About Bridestory
  • Benefits
  • AWS Services Used
  • About Bridestory
  • Bridestory is a web and mobile application developed to inspire brides and help them connect with wedding vendors. The site has up to 700,000 visitors each month and is expanding globally, with users in Indonesia, Singapore and the Philippines. 

  • Benefits
    • Performs daily deployments versus every 3 weeks
    • Achieves less than a 1% failure rate
    • Autoscales to accommodate expanding global user base
    • Speeds time-to-market threefold for a new brand
    • Improves productivity and employee job satisfaction, which boosts retention
  • AWS Services Used

Monolith to Microservices

Doni Hanafi, Chief Technology Officer at Bridestory, worked with his team to start splitting the application into smaller services and setting up Docker containers with Amazon Elastic Container Service (Amazon ECS). With time-to-market and reliability as its key criteria, Bridestory aimed to deploy smaller features every few days to lower the rate of failure.

The first three to four months were spent exploring technology stacks to find the right infrastructure for targeted workloads, aiming for a solution that would improve agility with autoscaling. The startup then began progressive decoupling, starting by building new features in the microservices environment. Bridestory uses Amazon Relational Database Service (Amazon RDS) to store all transaction data, and it found AWS Database Migration Service (AWS DMS) particularly helpful during the migration process. Hanafi says, “By using AWS DMS, we can copy data in real time, syncing it from our old Amazon RDS database in the monolith to the new microservices database. In addition, we can easily create a replication in Amazon RDS, which we use a lot for our BI tools. The replication is very reliable, and we haven’t had any significant data issues so far.”

Same Architecture, Different Brand

The new microservices architecture has transformed operations. Hanafi reports, “Since the end of 2018, we have been hitting our metrics. Previously, we were averaging three weeks to launch one big feature, whereas now our developers are empowered to conduct small releases daily, with less than a 1 percent failure rate.” The company has also launched a new app called Parentstory using its containerized infrastructure. “Isolation is the key to our new multi-tenancy microservices model,” he explains. “We are constantly exploring with AWS architects how we can use the same architecture with the same source code, but with a totally different brand, different customers, and different database.” With this “recycled” approach, the team was able to launch the Parentstory app nearly three times faster than Bridestory.

By using AWS, Hanafi’s team has also become more efficient. He concludes, “Currently, we are shifting to Amazon Elastic Container Service for Kubernetes (Amazon EKS), which gives us more flexibility in isolating resources. With AWS, we are discovering new ways of learning and experimenting, which is key for engineers and leads to high employee retention.”

The diagram below illustrates the AWS infrastructure at Bridestory and Parentstory:

AWS infrastructure at Bridestory and Parentstory

Learn More

To learn more, visit Containers.