About the Project

The client (under NDA) is a Public sector healthcare company, a developer of software products whose aim is to help with accurately quantifying medical images. Their solutions have assisted clinicians in their CT, MR, X-Ray and Ultrasound procedures for over thirty years. Powered by artificial intelligence, their software speeds up workflow, improves reproducibility, and supports healthcare professionals to determine the most accurate diagnosis and related treatment strategies for all patients.

Goals of the Project

Create a cost-efficient infrastructure for automated tests of the main application, to offload the internal infrastructure and speed up the development process.

Challenge

Before the release, the main company’s application has to be validated with automated test suites. Those tests were running on self-hosted dedicated servers with limited capacity. Since the load was not constant and happened only once or twice daily, it was not efficient to keep the server running all the time in an idle state. Our team decided to automate the process of instantiation of the temporary EC2 VMs that are used only during the test procedure. The resulting infrastructure is flexible enough to cover any test suites that the user has and may be executed on a different set of node types.

Why AWS?

Choosing AWS as a cloud provider that can meet all of a company’s needs seems to be the most sensible solution for a variety of reasons. The main benefit is the high variety of instance types and the ability to provide a custom AMI (such as Windows 10 or Windows 11), that allows the client to serve his application natively and do it efficiently- not only in terms of cost, but also from the resource perspective.

Benefits
The client got a solution that completes tests 14x faster compared to the on-premise results. This solution allows the client to increase their release frequency and application quality, since more test suites may be executed in a more efficient way.
Next steps
During the next iterations, we are going to improve the security of the infrastructure and reduce costs by using SPOT instance types.
Technologies we use