I used a Amazon RDS for Postgresql to create the tables used in the challenge.
I created the secrets such as the database parameters using AWS Secrets Manager.
Once a development was ready to test it out, I created an image using docker build -t <tag> . and uploaded it to ECR. This guide was helpful to achieve it.
I used ECS to launch Fargate, creating a Task Definition and running a service on a cluster.
If everything worked correctly, I commited the changes to the repo.
Repeated step 3 to 5.
TODO
Add an API Token to restric access.
Add tests.
Use Python CDK to automate deployment.
Use Github Actions for CI.
My original idea was to save an CSV file into S3, then Lambda function would be triggered passing the S3 URL to the API & upload the file to the database. It would be a nice to have.
Number of employees hired for each job and department in 2021 divided by quarter. The table must be ordered alphabetically by department and job.
List of ids, name and number of employees hired of each department that hired more employees than the mean of employees hired in 2021 for all the departments, ordered by the number of employees hired (descending).