CASE STUDY
AUTOMATED SOFTWARE DELIVERY

Building Single Page Application Architecture for Australian Financial Services

Industry

Financial Services


Customer Overview

Our customer is a large Australian financial services company that provides the Australian and New Zealand market with finance in the form of credit cards, car loans, insurance and personal loans.


Business Challenge

Our customer wanted to standardise their run infrastructure by moving onto AWS, rather than running infrastructure on multiple cloud environments.

They already had great patterns and pipelines for build package and deploy for APIs, however didn’t have patterns for static content sites nor for Single Page App browser-based javascript applications.

The organisation was looking for a solution that was cheap and performant, easily changeable and most importantly wanted to limit any security risk exposure through running code on any computer.

Solution

Working with our customer, Cevo generated build package and deploy pipelines for static-based applications within the existing CI toolchain of docker-based build containers running on Buildkite.

The architecture consisted of an S3 bucket, CloudFront distribution and lambda@edge functionality. The deployment target was an S3 bucket that was securely controlled by CloudFront, with appropriate level of access and governance.

The responsibility of the lambda@edge functionality was two-fold:

  • Firstly, to support a development practice to enable the development team to quickly iterate upon content in a safe and repeatable way.


  • Secondly, to support Search Engine Optimisation (SEO) workflow that was implemented in a previous mod-rewrite ruleset. The lamba@edge lambas largely replicated the key functionality of a traditional web server, for instance the ‘defaultIndex’ page workflow, as well as regular expression rewrite rules.

Further to this, the solution included a significant uplift of the build, package deploy, log monitor, and alerting platform used for brochureware websites.

Additional Tech Stack:

  • Route53 hosted checks, and CloudWatch, with DataDog was used for uptime and performance monitoring
  • PagerDuty was used as an alerting engine
  • SumoLogic ingesting CloudFront logs was used as a diagnosis tool
  • A downstream integration between the CloudFront Logs and MarkMontor was used to implement a scraping and brand security workflow
  • Buildkite was used as the Continuous Integration tool of choice
  • Gastby was used as the website framework of choice.



Benefits

As a result of this project, our customer has realised a number of benefits:

  • Most significantly, it now takes our customer only 30 minutes to make changes to their websites in a secure, repeatable and controlled way, with minimal risk of failure and zero security compute risk. In contrast, the incumbent platform would take three hours, with a high degree of deployment failure with runtime security risk.


  • Web development teams are now able to adopt the infrastructure pattern for new projects meaning they can self-service a brand new website in a fraction of the time than previously


  • Given that the web content is cached by CloudFront, the websites have a far faster time-to-first-bite and full page render time.