ID- superadmin@gmail.com, Pass- super
- Language: Java 17
- Build Tool: Gradle
- Spring Boot: 2.7.6
- Database:
- REST API - Books [CRUD]
- Add Validation & Constraints for REST API & DB Entity
- Auditing [Config]
- Soft Delete [Config]
- DB Versioning: Liquibase or Flyway [Config]
- Global Exception Handling [Config]
- Logging [Config]
- Checkstyle/Code Formatter [Config]
- API Doc: Swagger [Config]
- Mapper: Mapstruct [Config]
- i18n [Config]
- Security: [Config]
- CI/CD [Config]
- Unit & Integration Testing [Test]
- API Versioning [Config]
- Code Quality Check: SonarLint [Config]
- Handle Time Zone Properly
- Apply Dynamic Query via JPA Specification
- Follow a Git Branching Strategy
- Always use CLI, be comfortable with commands instead of GUI
- Data Transfer Objects (DTOs) are objects created to only contain values and have no business logic except for getter and setter methods.
- If you want to write a git commit message properly, you should use the imperative mood (e.g. Reformat the code)