02 sep
|
Vortex
|
Buenos Aires
02 sep
Vortex
Buenos Aires
?????????? (Córdoba o Buenos Aires ??????????)
??????? ??????? Híbrida: ????-????
?Nos encontramos en búsqueda de un Desarrollador Java Backend Semi Senior con sólida experiencia en el diseño, desarrollo y mantenimiento de sistemas distribuidos de misión crítica, capaz de operar con autonomía en entornos de alta exigencia transaccional. La persona se sumará a un equipo que construye plataformas robustas, escalables y observables.
Requisitos técnicos excluyentes
Lenguaje y frameworks
Java: dominio avanzado de versiones LTS (Java 11, 17 y/o 21), incluyendo características modernas del lenguaje (Streams, Optional, Records, Sealed Classes, Pattern Matching, Virtual Threads).
Spring Boot (3.x preferentemente): desarrollo de microservicios, Spring Web/WebFlux, Spring Data, Spring Security, configuración avanzada, profiles y autoconfiguration.
Buenas prácticas de Clean Code, SOLID, Design Patterns y arquitecturas hexagonales / DDD.
Bases de datos
Experiencia comprobable con bases de datos relacionales (PostgreSQL, Oracle, MySQL o SQL Server): modelado, tuning de queries, índices, planes de ejecución, transaccionalidad y manejo de concurrencia.
Experiencia con bases de datos NoSQL (MongoDB, Redis, Cassandra o similares): modelado orientado a acceso, estrategias de sharding/replicación y casos de uso adecuados.
Manejo de JPA/Hibernate y enfoques alternativos (JDBC, MyBatis, jOOQ).
Mensajería y eventos
Sólida experiencia en Apache Kafka: producers/consumers, particionamiento, consumer groups, exactly-once semantics, esquemas (Avro/Protobuf), compactación y manejo de offsets.
Experiencia con brokers tipo MQ (IBM MQ, ActiveMQ, RabbitMQ): colas, topics, DLQs, garantías de entrega.
Diseño de arquitecturas event-driven y patrones asociados (Outbox, Saga, CQRS, Event Sourcing).
Resiliencia y diseño de soluciones
Diseño de soluciones resilientes y robustas: aplicación de patrones como Circuit Breaker, Retry, Bulkhead, Timeout, Rate Limiting, Fallback (Resilience4j, Hystrix).
Estrategias de idempotencia, consistencia eventual y manejo de fallos en sistemas distribuidos.
Diseño orientado a alta disponibilidad y tolerancia a fallos.
Alta performance / Alta TPS
Experiencia comprobable en el desarrollo y operación de sistemas con altas tasas de transacciones por segundo (TPS).
Capacidad de profiling, tuning de JVM (GC, heap, threads), optimización de throughput y latencia.
Pruebas de carga y estrés (JMeter, Gatling, k6) e interpretación de resultados.
Estrategias de caching (Redis, Caffeine, Hazelcast) y manejo eficiente de recursos.
Observabilidad
Implementación de logs estructurados (JSON, MDC, correlation IDs).
Métricas: Micrometer, Prometheus, Grafana.
Tracing distribuido: OpenTelemetry, Jaeger, Zipkin.
Experiencia con stacks tipo ELK / EFK, Datadog, Dynatrace, New Relic o similares.
Definición de SLIs/SLOs, dashboards y alertas accionables.
Troubleshooting
Capacidad demostrada de troubleshooting en producción: análisis de thread dumps, heap dumps, GC logs, latencias y cuellos de botella.
Diagnóstico de incidentes en sistemas distribuidos: correlación entre logs, métricas y traces.
Resolución de problemas de concurrencia, memory leaks, deadlocks y degradaciones de performance.
Requisitos deseables:
- Experiencia con contenedores y orquestación: Docker, Kubernetes, OpenShift.
- CI/CD: Jenkins, GitLab CI, GitHub Actions, ArgoCD.
- Cloud (AWS, Azure o GCP) y patrones cloud-native.
- Testing avanzado: JUnit 5, Mockito, Testcontainers, contract testing (Pact), mutation testing.
- Seguridad: OAuth2, OIDC, JWT, mTLS.
- Experiencia en sector financiero / bancario / fintech.
- Competencias y habilidades blandas
- Autonomía e iniciativa: capacidad comprobada de tomar un requerimiento, analizarlo, diseñar la solución y llevar adelante el desarrollo end-to-end sin necesidad de supervisión constante.
- Proactividad para identificar mejoras técnicas, deuda técnica y oportunidades de optimización.
- Pensamiento crítico.
- Orientación a la resolución de problemas complejos y desarrollo de soluciones.
- Comunicación clara con pares técnicos, líderes y áreas de negocio.
- Mentoring de desarrolladores semi-senior / juniors.
- Trabajo colaborativo en metodologías ágiles (Scrum / Kanban).
- Foco en calidad, mantenibilidad y entrega de valor.
- Experiencia mínima sugerida: +5/7 años de experiencia cualificado en desarrollo backend con Java.+3 años trabajando en sistemas distribuidos productivos de alta criticidad y/o alto volumen transaccional.
Beneficios:
- Día libre en el cumpleaños.
- Clases de inglés
- Cursos y capacitaciones
- Herramientas de trabajo
- Vacaciones flexibles
- Beneficio de GYM: SportClub
📌 Dev. Java SSR (Buenos Aires)
🏢 Vortex
📍 Buenos Aires