Case Study

Using AWS cloud to build dynamic consumer applications

Introduction

Mobilabonnemang is a web platform that contains valuable information about mobile operators and their subscriptions, and is unique in that it works on a deeper level to calculate the actual monthly subscription costs as well as providing the standard mobile plan comparisons. The objective for Miracle Mill was to design a cost-effective solution using cloud technology, and this challenge provided the perfect opportunity to showcase the capability of a wide range of AWS services in creating a dynamic consumer application.

About Fictional Factory Inc

Fictional Factory Inc is an Android game developer that has been active since 2012. The current app portfolio contains 2 games, all of which are listed in the category "Board". Two of the most important apps from Fictional Factory Inc are Yatzy Online and Farkle Online. Both of them have been installed more than 100 thousand times.

The Challenge

Mobilabonnemang.eu is a web platform that provides valuable information about mobile operators and mobile subscriptions. The platform is especially unique in that it not only offers simple mobile plan comparisons but works on a deeper level to calculate the actual monthly subscription costs. This highly customizable feature of the site will work out an actual monthly bill per subscription type and according to the users' unique usage patterns.

The platform outlines monthly plans offerings so customers can get a full picture of the services they are using. This allows them to see exactly what they are paying for and choose if they want to keep the same subscription or change to a different one.

With its comprehensive display of prices and features from all the operators in the Swedish and UK markets, mobile phone users finally have a full picture of their true monthly cost. Along with this, they get a better understanding of whether they should stick with the same operator and subscription, or to switch to a package more suitable to their needs and budget.

The platform also has a smart cost calculator that lets customers choose the desired volume of mobile data, calls, and SMS that they want to use every month. Based on these parameters the platform will suggest the cheapest and most optimal choices.

Users can choose to filter which operators they see, from the largest mobile companies and networks to the smallest (virtual) ones, while also choosing the subscription types and periods of commitment. Likewise, customers can see cost predictions for the next two years in addition to the cost overview and all the additional info for every mobile subscription. However, probably the most unique feature of the platform is that it offers a comparison of mobile operators as well simply the subscription packages themselves.

The Solution

The work for the platform was divided into two parts. The first involved building a Content Management System (CMS) and the second part was related to building the actual Web Application.

The CMS project utilizes JavaScript and Node.js as the primary technologies and the following Amazon Web Services:

  • Amazon Simple Storage Service (S3) for storage and protection of data for a range of use-cases 
  • Amazon Cognito for user sign-up, sign-in, and access control 
  • Amazon CloudFront as a fast content delivery network (CDN) service that securely delivers data and applications 
  • AWS CodeCommit to host highly scalable private Git repositories 
  • AWS CodeBuild for building and testing codes with continuous scaling 
  • AWS CodePipeline to automate continuous delivery pipelines for fast and reliable updates. 

The Web Application portion utilizes AngularJS, JavaScript, and Node.js as the core technologies, with Angular for the frontend and Node.js for the backend Lambda functions. The app also uses the following Amazon Web Services: AWS Lambda for running code, Amazon API Gateway for creating, publishing maintaining, monitoring and securing APIs, AWS CodeCommit, AWS CodeBuild, AWS CodePipeline, Amazon Simple Storage Service (S3) (as mentioned earlier), Amazon Virtual Private Cloud (Amazon VPC) for launching AWS resources in a predefined virtual network, Amazon Simple Email Service (Amazon SES) as a cloud-based email sending service and Amazon CloudWatch for effective monitoring and responding to system-wide performance changes.

The high-performance capability made AWS a great choice for this project with its fast, flexible, secure, and budget-friendly solutions. With AWS we were able to select the programming language, operating system, database, and other assets so that we could create a solution that works best for our team.

In addition to the AWS services outlined above, the Miracle Mill team is currently working on migrating the database from MongoDB to DynamoDB. We believe that this migration will increase cost-savings and increase the functionality of the platform.

Results and Benefits

One of the biggest advantages that AWS offered to this project is the scalability, whereby the application can scale up and down without any performance issues, along with a variety of flexible storage solutions. Reliability and security are two further areas of fundamental importance to our work, and AWS have a huge reach with a giant team of tech experts, allowing them to build a solid network that has proved to be dependable, consistent, and secure.

About Miracle Mill

At Miracle Mill, we are passionate entrepreneurs and engineers, that work to utilise modern cutting-edge cloud technology. We are a cloud-first company focused on building scalable applications utilising AWS cloud services.

We provide cloud consulting services with an Agile iterative approach to software development using DevOps methodologies.

Continue Reading

Article
Security Optimisation with the AWS Well-Architected Framework

The Security Pillar offers practical guidelines to help businesses secure their cloud environment, ensuring data protection, compliance, and cost efficiency.

Learn more
Article
Building a Secure Cloud: An Introduction to Threat Modelling

Threat modelling is a security analysis technique that helps organizations identify and mitigate potential threats to their systems, and can help you avoid costly data breaches and other security incidents.

Learn more
See all

Let's work together

Scotland
Arrow Down