Technology :
spring boot 2.x + gradle (via start.spring.io), latest
JDK 15 via OpenJDK
Spring web, JPA via hibernate, Spring RabbitMQ, lombok (spring boot stack untuk development microservice)
Spring Rest repositories diperbolehkan untuk speed up CRUD API
Springdoc untuk create swagger
openfeign (untuk web client, hindari RestTemplate atau low-level client untuk reduce code)
resilience4j (untuk mekanisme resilisent API (e.g. retry / circuit breaker))
codecentric admin client (for monitoring)
sleuth
Unit test via JUnit : coverage target 60%
In case additional yech required :
freemarker (kalau perlu templating engine)
Quartz with persistence (e.g. database) scheduler, kalau perlu scheduler complex. Kalau schedulernya simple, silakan gunakan spring @Scheduled dengan durais di-externalize ke file .yml terpisah
Architecture & source code organization:
Adopt hexagonal architecture & CQS. Contact timo untuk detail template nya
Technology : spring boot 2.x + gradle (via start.spring.io), latest JDK 15 via OpenJDK
In case additional yech required :
Architecture & source code organization: