SourceCloud were asked by Delivering-Demand to build a beauty comparison / Clinic finder site on behalf of one of their clients, MedFX who is a single-source supplier for Aesthetics and Skin Rejuvenation product.
WHAT WAS THE PROBLEM?
MedFX are sole suppliers for Galderma products in the UK and as part of their marketing strategy, they required a comparison site for clinic users to be able to compare clinics that offer Galderma products. Once they have viewed the nearest clinic to them geographically or selected whichever clinic they required, they can book the selected treatment at their preferred clinic, at a time and date convenient for the clinic user.
The Clinic comparison site is only available to MedFX clinics, All clinics need to be verified against there MedFX ID for them to appear on the comparison site. Once a verified clinic has access to Mirror Mirror, they can then update their profile, bio, opening times and price ranges to give the clinic user an informed choice.
WHAT WERE THE CHALLENGES?
SourceCloud needed to create all the relevant portal for end-users admin and clinics
WHAT WAS THE SOLUTION?
After an initial face to face startup, SourceCloud worked with the client remotely further refining their requirements and creating stories and wireframes to create a comprehensive backlog. As with many projects startup costs were a priority and developing a scaleable solution was key. A serverless solution was recommend which offers very lower startup costs when there is little or no traffic as cost relate to storage and traffic without the need to pay for web servers explicitly. Developing an Angular.js solution for the front-end hosted in AWS S3 being delivered by a Content Delivery Network for the front-end. Backend connectivity was don via an API layer hosted in Lambda and delivered by an API gateway. Finally the database layer was hosted using a managed database solution in AWS’s Relational Database Service providing a cost effective High Availability managed solution. This resilient solution allows for the failover of any individual component or a complete datacenter yet has minimal technical debt when running at a small scale.
As with all SourceCloud project a full DevOPS pipeline was developed to deploy the infrastructure as well as the code through defined environments from development through to production providing a full release audit trail.
WHAT WAS THE OUTCOME?
Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius. Claritas est etiam processus dynamicus, qui sequitur mutationem consuetudium lectorum. Mirum est notare quam littera gothica, quam nunc putamus parum claram, anteposuerit litterarum formas humanitatis per seacula quarta decima et quinta decima.
WHAT TECHNOLOGY DID WE USE?
SourceCloud built Mirror Mirror in AWS utilizing a number of technologies to keep technical debt to a minimum whilst ensuring maximum resilience and scalability. The front-end Angular.js code is pushed to an S3 bucket from our devops pipeline. S3 ensures the published files are highly resilient hosted in multiple geographic locations. Implementing AWS CloudFront as the CDN with a Custom Domain Name in front of S3 ensure the front end site was accessible and fast. The front-end code communicated to the backend via the AWS API Gateway which in turn points to the AWS Lambda functions. The AWS Lambda functions were developed in dotnetcore with the schema being defined using Swagger and again deployed from our devops pipleine using ‘serverless’ and Cloudformation. The database is hosted using MySQL using AWS RDS with the Multi Availability Zone enable allowing automatic fail over between sites and is again deployed via our devops pipeline using Cloudformation and Liquibase to version control the schema.