Project Overview
This project involves the deployment of a Node.js back-end application on AWS, leveraging a highly scalable and reliable infrastructure. The application is hosted on EC2 instances behind an Application Load Balancer (ALB) to handle incoming traffic, with data managed by an Amazon Aurora Serverless RDS database. The deployment process is automated using Bitbucket Pipeline and AWS CodeDeploy, while the infrastructure is provisioned using AWS CloudFormation. NGINX is used as the web server, running on Ubuntu within the EC2 instances.
Technologies and Services Used
Node.js: For developing the back-end application.
AWS EC2: To host the Node.js application.
AWS Application Load Balancer (ALB): To distribute incoming traffic across multiple EC2 instances.
Amazon Aurora Serverless RDS: For a scalable and serverless database solution.
NGINX: Used as a web server on Ubuntu instances.
AWS CodeDeploy: To automate application deployments to EC2.
Bitbucket: For source code management and version control.
Bitbucket Pipeline: For CI/CD automation, managing the build and deployment process.
AWS CloudFormation: To automate the provisioning and management of AWS resources.
Ubuntu: Operating system on the EC2 instances hosting the application.
Key Responsibilities:
Node.js Development: Developing and maintaining the back-end application.
Infrastructure as Code (IaC): Writing and managing AWS CloudFormation templates to automate the provisioning of EC2 instances, ALB, Aurora Serverless RDS, and other AWS resources.
Pipeline Configuration: Setting up Bitbucket Pipeline for continuous integration and deployment, integrating with AWS CodeDeploy for automated deployments.
AWS EC2 and NGINX Setup: Configuring EC2 instances with Ubuntu and setting up NGINX as a reverse proxy server.
Database Management: Configuring Amazon Aurora Serverless RDS to handle the database requirements of the application.
Load Balancing: Setting up and configuring an Application Load Balancer to distribute traffic efficiently across EC2 instances.
Automation and Deployment: Implementing automated deployments using Bitbucket Pipeline and AWS CodeDeploy, ensuring seamless and error-free deployment processes.
Project Outcomes
Scalable Back-End Infrastructure: Successfully deployed a Node.js back-end application on AWS with a scalable infrastructure, including EC2 instances, ALB, and Aurora Serverless RDS.
Automated Deployment Pipeline: Established a robust CI/CD pipeline using Bitbucket and AWS CodeDeploy, significantly reducing manual intervention and deployment time.
Efficient Traffic Management: Implemented an Application Load Balancer to ensure efficient traffic distribution, improving application performance and reliability.
Cost-Effective and Scalable Database: Leveraged Amazon Aurora Serverless RDS to provide a scalable, serverless database solution that adjusts to the application's needs.
Streamlined Infrastructure Management: Utilized AWS CloudFormation to manage infrastructure as code, enabling consistent and repeatable deployments.
Optimized Server Configuration: Configured NGINX on Ubuntu to handle requests efficiently, improving the overall performance and security of the application.
Latest Projects
Things I do

CLOUD
Amazon Web Services
AZURE Cloud
Google Cloud Platform
IBM Cloud
DevOps Tools
Jenkins
Ansible for software provisioning
Packer for automated machine images
AWS CodePipeline
AWS CodeDeploy
Azure Pipelines
Chef
Github Actions
GitLab CI/CD
CircleCI
Microservices
Kubernetes
Docker
AWS ECS
AWS EKS
AKS
Azure Container Apps
Monitoring and Alerting
Telegraf
Prometheus
Grafana
Pagerduty
Infrastructure as Code
CloudFormation
Terraform
AWS CDK (Python & Typescript)
Operating System
Most of Linux Server Distributions
Window Server 2019/2022
Databases
MySQL
MariaDB
MongoDB
PostgreSQL
MSSQL
Scripting
Shell Scripting
Python
YAML
PowerShell
My Certifications


Let's Talk
Book a call to talk regarding the current vacancy at your organization.
@2024 RAJ PATEL