This repository showcases five projects designed to demonstrate backend engineering skills in Node.js, TypeScript, AWS, and Terraform, tailored for a Junior Backend Engineer role.
- Task Management API
- Serverless URL Shortener
- Real-Time Chat Application
- E-commerce Backend
- Infrastructure Automation with Terraform
- Getting Started
- Contact
A RESTful API to manage tasks with user authentication and role-based access control.
- User authentication using JWT.
- CRUD operations for tasks.
- Deployed on AWS with Terraform.
- Node.js, TypeScript, PostgreSQL.
- AWS ECS, Terraform.
- Navigate to the
task-management-api
folder:cd task-management-api
- Install dependencies:
npm install
- Set environment variables in
.env
(see.env.example
). - Run locally:
npm run dev
- Deploy to AWS:
terraform apply
A serverless backend that shortens URLs and retrieves the original URLs.
- Generate short links for long URLs.
- Set expiration dates for links.
- Deployed on AWS Lambda using Terraform.
- Node.js, TypeScript, DynamoDB, API Gateway.
- AWS Lambda, Terraform.
- Navigate to the
serverless-url-shortener
folder:cd serverless-url-shortener
- Install dependencies:
npm install
- Deploy to AWS:
terraform apply
- Test API endpoints using Postman or cURL.
A backend for a real-time chat application supporting multiple chat rooms.
- Real-time messaging using WebSockets.
- Multi-room support.
- User presence tracking with DynamoDB Streams.
- Node.js, TypeScript, WebSocket.
- AWS SNS/SQS, DynamoDB Streams.
- Navigate to the
real-time-chat
folder:cd real-time-chat
- Install dependencies:
npm install
- Start server locally:
npm run dev
- Deploy to AWS:
terraform apply
A scalable backend for managing products, user accounts, and orders for an e-commerce platform.
- Product inventory management.
- Secure user authentication and cart handling.
- Payment gateway integration.
- Node.js, TypeScript, PostgreSQL.
- AWS S3, RDS, Terraform.
- Navigate to the
ecommerce-backend
folder:cd ecommerce-backend
- Install dependencies:
npm install
- Set environment variables in
.env
. - Run locally:
npm run dev
- Deploy to AWS:
terraform apply
A reusable Terraform module for automating web application deployment on AWS.
- Automated provisioning of EC2, S3, and RDS.
- Outputs for application URLs, credentials, and logs.
- Reusable module for multiple projects.
- Terraform, AWS EC2, S3, RDS.
- Navigate to the
infrastructure-automation
folder:cd infrastructure-automation
- Update
variables.tf
with your AWS credentials. - Apply Terraform script:
terraform apply
Clone this repository to explore the projects:
git clone https://github.com/ericnabofa/Junior-Backend-Engineer-Portfolio.git
cd Junior-Backend-Engineer-Portfolio
Navigate to each project's folder for more details and instructions.
Oghenevwegba Eric Nabofa
- LinkedIn: linkedin.com/in/oghenevwegbaenabofa