Bedu: Streamlined Operations

Digico Solutions   ☁️   July 1, 2024   ☁️  

About Bedu

Bedu is an innovative booking platform tailored for travelers seeking unforgettable experiences in the MENA region with destinations ranging across the UAE, Lebanon, and Saudi Arabia.

Their user-friendly website serves as a comprehensive guide, showcasing entertainment and culinary hot-spots across these three countries. They enable users to plan and personalize their trips, providing a journey through the region’s cultural and culinary richness. With Bedu, users can effortlessly schedule reservations at their preferred establishments, ensuring a hassle-free and enjoyable travel experience.

The Challenge

Slow Delivery and Stagnation

Initially facing slow content delivery and disarrayed software life-cycle management across various development environments, Bedu sought a solution to elevate their online presence.

The abundance of static content and high-quality images on their website led to latency issues, impacting user experience, particularly for those accessing the site from distant locations. 

Another hurdle was their lack of an isolated development environment on AWS, which caused delays in implementing crucial changes on the production front.

Additionally, we tackled the challenge of re-organizing the application logic around Amazon Cognito for authentication. Using federated alongside native users in Cognito, had caused some discrepancies and unexpected behavior within the application.

The Solution

Achieving Agility

To overcome their challenges of latent content delivery, we implemented CloudFront for accelerated delivery using the AWS global edge locations, taking advantage of various caching policies to optimize the caching of different resources, including the static images.

In order to provide a more accurate representation of changes and their effects on the stable production environment, we used AWS CodePipeline to replicate the production pipeline and set up a separate development environment on AWS to streamline the development process. Additionally, to incorporate security features into the pipeline, we utilized ECR’s image scanning feature to proactively detect and resolve security vulnerabilities in the application, before pushing changes to production.

Regarding authentication, our objective was to optimize Amazon Cognito to establish a robust system that efficiently linked the identities of federated and native users, avoiding data duplication and ensuring consistency. This initiative not only enhanced security but also improved the overall reliability of user data.

In addition to this, we conducted a comprehensive Well-Architected review of Bedu’s production workloads and addressed their high-risk issues, transforming their workload according to industry best practices.

The Benefits

Rapid Delivery
The use of Amazon CloudFront and customizing the policies for the caching of different resources helped optimize the caching strategy in a manner tailored to Bedu’s website and resources. The deployment of the CloudFront distribution took advantage of all the global AWS locations, ensuring consistent user experiences regardless of their location.
Peak Performance
Following the recommendations of the Well-Architected review, we implemented detailed monitoring using CloudWatch and X-ray to identify and address performance issues in the deployed resources and application.
Optimized Deployment
Stepping in to manage the deployment of application and infrastructure changes and creating pipelines for each environment facilitated the deployment of changes to the production environment and ensured the stability of the website in production.
Clear Identities
The redundancy provided by the multi-Availability Zone setup with backup and disaster recovery on Amazon RDS MySQL ensured high availability and data protection.

Result Driven

Enhancing Website Reliability
The use of CloudFront and CodePipeline to expedite content delivery and optimize deployments of application changes helped make Bedu’s website more reliable, consistent, and responsive.
Improving System Performance
The Well-Architected review helped identify performance bottlenecks with other areas of improvement, allowing us to implement the recommended actions and ultimately enhancing their system making it more resilient, performant, and scalable.