Professional work
RATITEC · energy project backend
The Spring Boot backend of a platform that connects renewable-energy projects, field interventions and billing.
- Delivered during the internship
- In a pair
- Confidential
- Spring Boot REST APIs
- 12+
- projects tracked on the platform
- 15+
- links: project, intervention, invoice, payment
- 4
- from design to delivery
- 2 months
01Starting point
Context & mission
The problem
In renewable energy, a company follows its projects, dispatches technicians to the field and bills its clients. These activities need to be connected and traceable, not scattered across separate tools.
The mission
During this summer internship, co-design and build the platform’s backend in a pair: projects, field interventions and billing, plus a few integration tasks on the React front end.
As a pair
My scope within the pair: the billing logic and the field-intervention module, plus small integration tasks on the React front end.
02Execution
What I did
Layered REST APIs
Controller, Service, Repository, DTO: each layer has one clear responsibility.
Data model
Projects, clients, technicians, interventions and invoices persisted with Spring Data JPA, Hibernate and MySQL, with operation traceability.
Billing
Validation rules, invoice generation, payment lifecycle and notification triggers.
Field interventions
Status management and operation history, exposed to the React front end through REST APIs.
Teamwork
Scrum (sprints, reviews, an evolving backlog) and Git day to day.
03Design
Architecture
A layered Spring Boot API: controllers expose DTOs, services hold the business rules (validation, billing, statuses), Spring Data JPA repositories persist entities in MySQL through Hibernate. The React front end consumes these APIs.
- ProjectClients · technicians
- InterventionStatuses · history
- InvoiceValidation · generation
- PaymentLifecycle · notifications
- ReactFront end
- ControllerREST · DTOs
- ServiceBusiness rules
- RepositorySpring Data JPA
- MySQLHibernate
04Impact
Results
- A backend covering the whole chain: project, intervention, invoice, payment.
- Business rules enforced server-side, with a history for every intervention.
- APIs consumed by the React front end, delivered within the two-month internship.
05Wrap-up
Takeaways
What this project provesThat I can turn a real business into reliable, traceable backend rules, as part of a team and on a short timeline.
06Technology
Full stack
- Java
- Spring Boot
- Spring Data JPA
- Hibernate
- MySQL
- React
- JUnit
- Mockito
- Git
- Scrum