Transforming Fintech Connectivity: Our Client's Journey to Overcome Lambda Function Timeouts and Enhance Security

Mar 16,2024

Problem Statement

The customer was looking for support to assess, document, and remediate a feature issue. Intuitive assisted in implementing CI/CD for lambda functions, Lambda UT coverage, Network isolation, code changes on lambda and technical testing. The project consisted of 4 Work packages WP1, WP3, WP5, WP6 as phase 1 remediation. 
WP1 – Optimized code for 2 lambdas, In which modification from synchronous API calls to asynchronous. Also benchmarked the performance of optimized code.
WP3 – Network Isolation for lambda functions and implementing security groups.
WP5 – Implemented CI/CD pipeline for lambdas.
WP6 – We implemented unit test cases for Ice node lambda and 2 endpoints of encompass communicator lambda.

Proposed Solution & Architecture

The proposed solution involves three parallel streams of work:

The Application Team addressed excessive processing time and timeouts in Encompass Communicator and Ice Node Lambda by implementing asynchronous processing and introducing delays to prevent API Gateway timeouts. They also created Unit Test Cases for ICE-Node-Document and Encompass-Communicator Lambda, using mocked dependent functions.

The Cloud Infrastructure Team established network isolation and security groups for Ice Node Document and Encompass Communicator Lambdas along with API Gateway REST API.

The DevOps Team developed a CI/CD pipeline using AWS CodePipeline and CodeBuild to deploy code from Bitbucket to AWS Lambda.

Challenges included resolving dependencies, converting code from synchronous to asynchronous without altering business logic, and implementing logging for the Unit Testing Mock Framework. Solutions were implemented in NodeJS using Jest as the mock framework.

The proposed architecture involves AWS Lambda functions for asynchronous processing, network isolation, and security groups for secure communication, and a CI/CD pipeline for automated deployment from Bitbucket to Lambda.

Outcomes of Project & Success Metrics

We designed and deployed 2 API Gateway REST APIs backed by lambda functions, performed the network isolation for both the lambdas and created a private infrastructure, designed and developed a CI/CD pipeline using Code Build and Code Pipeline and setup webhooks on Bitbucket to trigger the CI/CD workflow.

TCO Analysis Performed

The customer's application issue remediation project encompassed various cost factors, including infrastructure optimization, development efforts, and ongoing maintenance. By implementing CI/CD pipelines for Lambda functions, optimizing code for improved performance, and enhancing network isolation and security measures, Intuitive aimed to streamline development processes, reduce operational overhead, and minimize potential downtime. The transition to serverless architecture using API Gateway and Lambda Functions also contributed to cost savings by eliminating the need for managing traditional infrastructure.

Lessons Learned

The Cloud Infrastructure Team's establishment of network isolation and security groups for Lambdas and API Gateway contributed to enhancing the security posture of the system. This emphasizes the necessity of implementing robust security measures to safeguard against potential threats and vulnerabilities.

The Application Team's approach of implementing asynchronous processing and introducing delays proved effective in mitigating excessive processing time and timeouts. This highlights the importance of considering asynchronous processing methods to improve system performance and reliability.

Creating Unit Test Cases for critical components such as ICE-Node-Document and Encompass-Communicator Lambda using mocked dependent functions helped ensure the reliability and stability of the system. This underscores the significance of comprehensive unit testing in identifying and resolving potential issues early in the development process.

The DevOps Team's development of a CI/CD pipeline using AWS CodePipeline and CodeBuild facilitated seamless and automated deployment from Bitbucket to Lambda. This highlights the importance of adopting CI/CD practices to streamline development, testing, and deployment processes, ultimately improving efficiency and reducing deployment errors.

Main Logo
Rocket