En BCNC Group buscamos incorporar un/a Senior Backend Developer Java, con al menos 4-5 años de experiencia, para participar en una iniciativa tecnológica de nueva creación, orientada a modernizar y optimizar procesos de logística y distribución a escala global.
Responsabilidades
- Participarás desde el inicio en la construcción de una plataforma tecnológica destinada a estandarizar procesos logísticos, mejorar los tiempos operativos y aumentar la eficiencia y escalabilidad de la distribución de productos.
- Al tratarse de un desarrollo desde cero , tendrás capacidad real para intervenir en las decisiones de diseño, arquitectura y evolución tecnológica.
- Trabajarás directamente con otro desarrollador y un responsable técnico, dentro de un entorno ágil y colaborativo con perfiles backend, frontend, producto y arquitectura.
- Buscamos una persona que disfrute construyendo producto, proponiendo mejoras y participando en decisiones técnicas, más allá de ejecutar desarrollos previamente definidos.
- Diseñar y desarrollar microservicios con Java 21 y Spring Boot.
- Participar en la definición de arquitecturas basadas en servicios distribuidos.
- Diseñar y desarrollar APIs siguiendo una estrategia API First.
- Aplicar DDD, arquitectura hexagonal , principios SOLID y Clean Code.
- Construir soluciones escalables para entornos de alto rendimiento y concurrencia.
- Implementar integraciones y procesos asíncronos con Apache Kafka.
- Trabajar con PostgreSQL y, cuando sea necesario , MongoDB.
- Desarrollar pruebas unitarias con JUnit y Mockito.
- Participar en revisiones de código y procesos de integración y despliegue continuo.
- Garantizar la calidad del software mediante SonarQube y SonarLint.
- Colaborar en la evolución del stack tecnológico.
- Proponer herramientas, métodos o tecnologías que aporten valor al producto.
- Compartir conocimiento y velar por el cumplimiento de los estándares técnicos.
- Participar en sprints Scrum de dos semanas, asumiendo junto al equipo los compromisos adquiridos.
Stack tecnológico
- Spring Boot
- Microservicios
- Kafka
- PostgreSQL
- MongoDB
- API First
- DDD
- Arquitectura hexagonal
- Maven
- Jenkins
- CI/CD
- SonarQube
- SonarLint
- JUnit
- Mockito
- OpenAPI
- Protobuf
- gRPC
- AWS
Requisitos imprescindibles
- A AWS
- Experiencia sólida desarrollando aplicaciones backend con Java y Spring Boot.
- Experiencia con Java 21 o versiones recientes.
- Experiencia en arquitecturas de microservicios y sistemas distribuidos.
- Experiencia práctica con Apache Kafka.
- Conocimientos de PostgreSQL.
- Experiencia diseñando y desarrollando APIs.
- Conocimiento y aplicación práctica de API First.
- Conocimientos sólidos de Domain-Driven Design.
- Experiencia o conocimiento de arquitectura hexagonal.
- Experiencia en sistemas de alto rendimiento o alta concurrencia.
- Aplicación habitual de principios SOLID y Clean Code.
- Experiencia con pruebas unitarias utilizando JUnit y Mockito.
- Conocimientos de SonarQube y SonarLint.
- Experiencia con Maven, Jenkins e integración continua.
- Experiencia trabajando en equipos Scrum.
- Conocimiento profundo de patrones de diseño y arquitectura en Java.
- Se valorará especialmente Experiencia con AWS u otras plataformas cloud.
- Conocimientos de MongoDB.
- Experiencia o proyectos prácticos con Protobuf y gRPC.
- Conocimiento de OpenAPI, AsyncAPI o RAML.
- Participación en la definición de estrategias de APIs.
- Experiencia con feature flags y despliegues continuos.
- Experiencia en logística, distribución o comercio electrónico.
- Conocimientos de observabilidad, resiliencia y escalabilidad.
- Experiencia en plataformas críticas de alcance internacional.
Perfil buscado
Una persona autónoma, dinámica y proactiva, capaz de aportar desde el primer momento. Alguien que comunique sus ideas con claridad, cuestione de manera constructiva y mantenga sus conocimientos técnicos actualizados. Valoramos especialmente: Compromiso con el producto. Trabajo en equipo y apoyo a los compañeros. Transparencia y comunicación directa. Proactividad y capacidad analítica. Autoexigencia y orientación a la calidad. Capacidad para gestionar situaciones de presión o incertidumbre. Tolerancia a la frustración. Interés por compartir conocimiento. Identificación con los valores y principios de Scrum.
Qué encontrarás en BCNC Group
Una iniciativa tecnológica de nueva creación y alcance internacional. Capacidad para participar en decisiones técnicas y arquitectónicas. Un stack moderno basado en Java 21, microservicios, eventos y cloud. Un entorno colaborativo con profesionales especializados. Cultura de entrega continua, calidad de código y mejora constante. Oportunidad de trabajar en una plataforma con elevados requisitos de rendimiento, escalabilidad y disponibilidad. Debido al carácter crítico y global de las operaciones, el área presta soporte 24x7. La posible participación en una rotación de guardias, así como su frecuencia y compensación, se detallará durante el proceso de selección.