Customer Profile

Our Client is a leader in cybersecurity vulnerability management with more than 24,000 customers worldwide.

Problem Statement

The customers’ IT assets are globally distributed on cloud and computer platforms and are vulnerable to cyber attacks. The schema used by customers for asset information was different for AWS, Azure and GCP and none of them matched the scheme that our Client was using. This drove up the cost of integration, load testing and deployment on cloud. Delixus was tasked to design and develop several modules to import the customer asset information.

Delixus Approach

The Client was aligned to microservices architecture deployed on the cloud.Every new releaserequired integration and load testing with a spin up of 1000s of compute instances on each type of cloud platform. This drove up the cost tremendously.The Delixus approach was to migrate the Client software from microservices to serverless architecture. A separate service was conceived and designed that avoided the requirement of spinning up 1000s of compute instances on the cloud. The implementation required updating the client’s framework itself.

Delixus Solution

1. Delixus developed cloud-agnostic scalable microservices based modules that

a. import the assets for AWS, Azure and GCP;

b. Ingest the assets in AWS, Azure and GCP into client’s required format using Data Pipelines;

c. Loosely couple the Import and Ingest modules to make sure that no data is lost using Kafka, Kinesis and other publish/subscribe frameworks and tools

2. Delixus supported the deployment of the designed modules to

a. Capture the performance metrics using Datadog and Prometheus;

b. Provide dashboards for the monitoring of performance metric and load

c. Capture logs

d. Troubleshoot security incidences;

e. Supported united and integration testing

f. CI/CD on Jenkins for deploying the modules on Kubernetes and Docker

g. Swagger for API design.

Benefits

1. Our solution saved the customer millions of dollars in terms of cloud deployment costs.

2. Eliminated the cost of integration and load testing completely.

Factors of success

A host of skills were required on the project. Specialized skills in enterprise level applications as well as staff experience were key to project success. 

Languages: Java, Kotlin, Groovy and Python

Frameworks and tools: Spring, Hibernate, JPA, RestEasy, MyBatis, NodeJS, JAX ws rs (Java RX – Reactive Java)

Messaging/Publish & Subscribe/Notifications: Kafka, Kinesis, SQS, SNS, JMS

Pipes and Filters: AWS Lambda, Kafka Streams, Kafka Connect, Java Lambda

Metrics Management: JMX, DataDog, Prometheus

Logs and log aggregation: slf4j, Slunk and WatchDog

Databases: PostgreSQL, Citus, MySQL, ElasticSearch, MongoDB, Dynamo DB, Cassandra, SQLite, Hive>

Software Testing:JUnit, Spock, GUICE, Mockito, PyTest

Deployment:Kubernetes, Docker, Nginx, Jenkins, CI/CD