Case Enterpay

Less infrastructure maintenance, more focus on core business.

Case Enterpay

Less infrastructure maintenance, more focus on core business.

Founded in 2013 in Helsinki, Finland, Enterpay is a fintech start-up with an international outlook. The team mixture of both strong experience in finance and payments and technical know-how and has innovation and collaboration at its core. Enterpay provides solutions for automating onboarding processes of business customers and managing the credit and fraud risks of invoice based orders.

Project description

The purpose of the project was to identify infrastructure and operations related tasks taking up developer’s time away from actual application developement and come up with infrastructure solutions that would reduce the amount of continous operational work and build/deployment complexity. The project also included containerisation and deployment of new services that were in development.

Challenge

Enterpay’s existing AWS infrastructure was utilising a Kubernetes cluster built on top of EC2 – instances for running the containerised applications. The container images were built manually on developer’s computers and environment specific configurations were baked into the container images and/or mounted to the container as files. Maintaining the Kubernetes cluster itself and keeping it running was taking a noticeable amount of the application developer’s time.

Solution

Gofore PLC was chosen as the partner to provide the infrastructure and containerisation of the applications while Enterpay’s software development team provided the application code.

It was decided that getting the new services containerised and deployed was the top priority and the existing production environment running on Kubernetes was to be migrated to the new platform later.

CloudFormation was chosen as the Infrastructure As A Code (IaC) – tool to build the new environment from scratch. The CloudFormation stacks were split into logical collections of resources and necessary information between the stacks was passed with CloudFormation outputs.

AWS ECS Fargate was chosen as the platform to run containers as it reduced the operational complexity and operating system/Kubernetes recurring maintenance requirements as AWS Fargate takes care of the operating systems and the container runtime environment.­­­­­­­­ Amazon Api Gateway was used to expose and secure Internet-facing services running in Fargate/ Lamda. ECS service discovery was used to enable services to connect to each other internally without a separate Internal load balancer.

Github Actions was used to automate the container builds and the environment specific configuration was re-configured to be injected to the container images with environmental variables. This allowed the same container image to be deployed into multiple different environments which improves reliability of the testing process. Bash scripts were used to deploy the container image to the different environments. The scripts were also written in a way that would make it easy to use the same scripts with Github Actions to automate the deployment of the images into the environments.

Benefits

With the new AWS ECS Fargate – based platform the amount of operational work to keep the new services running and up-to-date was significantly reduced. With less time spent on taking care of the underlying infrastructure, the developers can now focus on their core business.

By automating the container builds in a centralised way using the Github Actions, the build process of each service is now more consistent, reliable and better documented.

Project highlights

Check icon

Reduced operational overhead

AWS Fargate eliminates the need for the developers to keep the operating systems and container runtimes up-to-date
Check icon

More reliable testing process

Less bugs in the service and the service runs more smoothly
Check icon

Self-healing Architecture

Built scaling-ready to keep up with the increasing load

"Working with Gofore was smooth and easy. The development of the project went according to plan and the support did not end with the completion of the project. Additional questions and other support was met in a flexible manner even after the work was finished on Gofore's side."

Tapio Vepsäläinen

Product lead, Co-founder

Enterpay Oy

Capabilities

Which of our capabilities produced value in this project?

Interested? We would be happy to talk more

Jussi Puustinen

Cloud & Continuous Services