Tech Stack
GradleGroovyHAProxyJavaKotlinLinuxMicroservicesNGINXPostgresRedis
About the role
- Design and develop microservices under a 4-layer architecture (REST Interface, Routing, Business Logic, and DAO) following SOLID principles.
- Implement APIs in two layers (public API and internal unitary services) with clear segregation of responsibilities.
- Develop IDE-agnostic code using Gradle v7 with Kotlin DSL as the build tool.
- Integrate PostgreSQL and Redis databases for temporary storage and caching.
- Configure and implement logging with SLF4J and Log4J2, ensuring correct parameterization of log levels (INFO, WARN, ERROR).
- Manage external configurations through JSON files.
- Guarantee 100% coverage in unit tests and document code according to established standards.
- Generate and maintain embedded API documentation in the code using OpenAPI/Swagger.
- Prepare and execute deployments on Linux Debian 10 or higher, using Nginx and HAProxy as load balancers.
- Collaborate with the team to integrate Groovy/Grails in complementary or legacy projects.
- Maintain best practices for versioning, continuous integration, and continuous deployment (CI/CD).
Requirements
- Proven experience in Java 11 development.
- Solid knowledge of microservices and SOLID principles.
- Experience with PostgreSQL and/or Redis.
- Proficiency with Gradle v7 and Kotlin DSL.
- Strong experience with SLF4J and Log4J2, including log level configuration.
- Experience deploying on Linux Debian 10+.
- Knowledge of Nginx and HAProxy.
- Experience with unit tests achieving full coverage.
- Experience with embedded API documentation using OpenAPI/Swagger.