Year: 2020 Duration: 3 Months
From the beginning of 2020, I got this freelance from a startup to develop and simple web app for people to organize, manage and follow up their finances in a very straightforward way. It was concluded in 3 months, and the backend and the API layer is in Spring Boot (Java) divided in a microservices architecture, using Consul as the service discovery, and Spring Cloud Gateway as the API Gateway between the services, where the Gateway microservice also contains security and authentication filters.
The authentication is using AWS Cognito, the database is MySQL, the frontend is a simple dashboard that communicates with the API microservices built in ReactJS, using Redux as state management, webpack for building, and the bundle files are uploaded to a S3 bucket as a static website host configuration.
The deployment of the microservices are in docker containers on a ECS cluster of 3 nodes, plus an EC2 instance inside the same VPC to host the Consul main server. Each node of the ECS cluster has a Consul agent for allowing communication between the agents and the server.