Java Developer Semisenior
Sobre la posición
Cliente: Banca
Esquema: Hibrido Lima (2 a 3 veces presencial en la semana) - (Si vives en provincia es remoto)
Contrato: Indeterminado con 6 meses de periodo de prueba
Buscamos un/a Java Developer Semi Senior para integrarse a un equipo de desarrollo enfocado en la construcción, evolución y mantenimiento de soluciones Cloud Native, utilizando tecnologías Java y servicios de Microsoft Azure.
La persona ideal deberá contar con experiencia sólida en desarrollo backend, diseño de APIs y servicios, arquitectura de software, contenedores y entornos cloud, así como capacidad para participar activamente en decisiones técnicas y en la implementación de soluciones escalables, resilientes y mantenibles.
Responsabilidades
- Diseñar, desarrollar y mantener aplicaciones y servicios backend utilizando Java.
- Implementar soluciones con Spring y/o Quarkus.
- Desarrollar y consumir APIs REST/RESTful, utilizando herramientas como Swagger/OpenAPI.
- Participar en el diseño de arquitecturas de software basadas en capas, componentes y microservicios.
- Aplicar patrones de diseño y arquitectura, incluyendo SAGA y Cache Aside.
- Construir, empaquetar y administrar aplicaciones utilizando Maven y/o Gradle.
- Diseñar y administrar imágenes y contenedores utilizando Docker.
- Implementar soluciones sobre Kubernetes y AKS (Azure Kubernetes Service).
- Trabajar bajo principios y prácticas de Cloud Native.
- Integrar aplicaciones con servicios de Azure PaaS, incluyendo:Azure API Management (APIM) Azure Application Gateway Azure App Service Azure Functions Azure Data Factory / Pipelines Azure Kubernetes Service (AKS)
- Participar en procesos de integración, despliegue y operación de aplicaciones en ambientes cloud.
- Contribuir al diseño y optimización de soluciones de persistencia NoSQL, considerando tablas, índices, consultas y modelos de consistencia.
- Aplicar conceptos de ACID vs. BASE según las necesidades de cada solución.
- Participar en el diseño y evolución de soluciones orientadas a datos, considerando conceptos de OLTP, OLAP, DataMart y Data Vault.
- Aplicar principios de SRE, observabilidad y monitoreo, incluyendo conceptos de APM.
- Colaborar con equipos de arquitectura, DevOps, Data y Cloud para implementar soluciones robustas y escalables.
- Participar en revisiones de código, análisis técnico y resolución de problemas en ambientes productivos.
Requisitos técnicos
Java
- Experiencia sólida en desarrollo con Java.
- Conocimiento de JDK 8, 11 y 17.
- Experiencia con Spring y/o Quarkus.
- Desarrollo de APIs REST/RESTful.
- Uso de Swagger/OpenAPI.
- Experiencia con Maven y/o Gradle.
Arquitectura y desarrollo
- Conocimiento de arquitectura de software.
- Arquitectura por capas, componentes y servicios.
- Experiencia con patrones de arquitectura y diseño.
- Conocimiento de patrones como SAGA y Cache Aside.
- Experiencia en arquitecturas distribuidas y/o microservicios.
Docker y Kubernetes
- Conocimiento práctico de Docker, incluyendo:Creación y administración de imágenes. Contenedores. Volúmenes. Redes. Docker Compose.
- Conocimientos de Kubernetes.
- Experiencia o conocimientos de AKS (Azure Kubernetes Service).
- Familiaridad con principios Cloud Native.
Microsoft Azure
- Experiencia con servicios Azure PaaS.
- Conocimientos de:Azure API Management (APIM). Azure Application Gateway. Azure App Service. Azure Functions. Azure Data Factory / Pipelines. Azure Kubernetes Service (AKS).
Bases de datos y Data
- Conocimientos de diseño de bases de datos NoSQL.
- Manejo de tablas/colecciones, índices y consultas.
- Conocimiento de conceptos ACID vs. BASE.
- Familiaridad con conceptos de Data Warehouse:OLTP vs. OLAP. DataMart. Data Vault.
Habilidades deseables
- Experiencia trabajando bajo metodologías ágiles (Scrum/Kanban).
- Experiencia en equipos multidisciplinarios.
- Capacidad para analizar problemas técnicos y proponer soluciones.
- Buenas prácticas de desarrollo, clean code y principios SOLID.
- Experiencia con integración continua y despliegue continuo (CI/CD).
- Capacidad para documentar soluciones técnicas y APIs.
- Inglés técnico para lectura de documentación.
Perfil
Buscamos una persona proactiva, analítica y orientada a resultados, con capacidad para trabajar de manera colaborativa y asumir ownership sobre sus desarrollos.
Debe ser capaz de desenvolverse en ambientes tecnológicos modernos, entender no solo el desarrollo de código sino también los principios de arquitectura, cloud, contenedores, datos y operación de aplicaciones, participando en todo el ciclo de vida de las soluciones.
Nivel de experiencia
Semi Senior ? aproximadamente 3 a 5 años de experiencia en desarrollo backend, idealmente con experiencia comprobable en Java, APIs, microservicios y ambientes cloud.