Supply-chain emissions calculations need consistent units, valid reference data, and a record of the factor used. The project also needed a repeatable delivery path that would stop a failing release before production.
My contribution
I developed the emissions-management API and its business rules, worked on the Oracle-to-MongoDB migration, and implemented containerization and CI/CD as part of the FIAP academic project.
How the system connects
Simplified application and delivery view, based on the repository documentation.Open full-size diagram ↗
Engineering decisions
01
Preserve the context of each calculation
The active MongoDB model uses five ESG collections. Emission documents embed activity data and the applied factor as snapshots, retaining the calculation context rather than relying only on a reference to a factor that may later change.
02
Test against the real persistence technology
Integration tests use the application and a disposable MongoDB container. They cover reference validation, decimal calculations, authorization, snapshots, and aggregates, providing evidence beyond isolated mocks.
03
Promote one immutable image
GitHub Actions builds and tests, publishes to Docker Hub, and promotes the same image digest through staging and production on AWS EC2. A failing staging verification blocks production; the environments use separate data resources.
What was delivered
MongoDB is the active persistence layer; historical Oracle code is isolated from the API.
The recorded CI recovery on October 12, 2026 reports 107 passing tests.
The repository preserves successful deployment evidence and a controlled staging-failure/recovery exercise.
Academic delivery exercise. The linked evidence records the staging and production pipeline on October 12, 2026.
Evidence
Actual repository evidence: the successful master pipeline recorded on October 12, 2026. Open the linked workflow for context.