Oncompass Medicine

Dr. István Peták's profile picture
They are a truly relationship-driven software development company whose meticulousness and clarity is second to none. They understand and share our goals, working with them is like working with a trusted partner. I can only recommend this team to anyone who is looking for professional software development.
Dr. István Peták
CEO

Client


Description

Oncompass is a health information company, which helps oncologists and cancer patients to find and access the best cancer therapies. Uniquely in the world, the Oncompass's Realtime Oncology Treatment Calculator is able, based on available scientific evidence, to rank personalised, targeted therapeutic options within 20 milliseconds for 405 cancer types, in 52,000 mutations, based on 26,838 medico-biological norms, and from among 1,417 medicinal active agents.


Challenge

Understanding complex domain and computations: We needed to become familiar with the basics of genetics, oncology, and scientific evidence databases in order to communicate effectively with the team of scientists supporting the development process. Lack of documentation made it difficult to understand and improve the complex computational algorithms of core functions. Migrating a monolithic system to microservices: Unlike the monolithic application, whose components communicate via internal synchronous method calls, the event-driven microservices communicate via a message broker (Apache Kafka), which requires new approaches to transaction and error handling. Another migration challenge was that physicians and scientists used the system during the migration process. Migrating to a modern UI framework: Due to the obvious drawbacks of the old AngularJS framework, we had to sacrifice our usual development flow, which resulted in a software that did not work the way we expected. We knew from the beginning that we needed a flexible and powerful tool that came with great developer experience to build a sustainable product. For these reasons, React and Next.js were a clear choice for us.


Solution

Redesigned architecture: Recognizing the problems and limitations of the old architecture, we sat down with the technical team of Oncompass Medicine to discuss how we could create a more resilient system. We followed the principles of Domain Driven Design to thoroughly analyze the structure and relationships of the components so we could define the bounded contexts that formed the basis for the microservice architecture. Modern technologies: The new technology stack consisting of Next.js, Java 11, Apache Kafka, Nomad, and Kong, made it possible to build a scalable and resilient system with reduced time to market and improved developer experience (DX). Feature migration: Since users were actively using the previous system, so we had to thoroughly investigate the biggest dependencies and tried to start our migration process with those functionalities. During this time, we provided the usual maintenance support to the scientists and physicians.


Image Gallery