New Terraform configuration to simple NodeJS API Deployment

Job ID: 31881336

Budget: $250 – $750 USD

What we'll need:
- Route 53 to manage the domain and subdomains to services (basically "api." to the API load balancer and "files." to the files S3 bucket)
- RDS for PostgreSQL
- Redis service
- MongoDB (or mongo-like database)
- 1 instance to run the Queue System (no need external access, only reads incomings from Redis and fires its jobs)
- 1 instance to run the API (with automatically scale up in case of high traffic)
- Load balancer to distribute accesses between API instances
- 1 S3 bucket to store files uploaded to the API
- CloudFront to serve S3 bucket files
- CodePipeline to continuous deployment from GitHub repository
- Lambda function for thumbnail video generator (I already have all the code), fired every time use uploads a video to the S3 bucket