InetumInetum

Desarrollador Java Md

Added 8 days ago

Objetivo del Puesto Diseñar, desarrollar y mantener soluciones back-end escalables, seguras y de alto rendimiento utilizando Java y tecnologías modernas, contribuyendo activamente a la arquitectura de los sistemas y colaborando con equipos multidisciplinarios para entregar software de alta calidad.

Responsabilidades

Desarrollo y Arquitectura

  • Diseñar e implementar soluciones back-end eficientes y escalables utilizando Java y frameworks como Spring Boot y tecnologías asociadas.
  • Definir y aplicar arquitecturas limpias como microservicios, event-driven y arquitectura hexagonal.
  • Garantizar el cumplimiento de buenas prácticas de desarrollo y calidad de código (SOLID, Clean Code, Sonar, Checkmarx, Fortify, BlackDuck).
  • Optimizar el rendimiento y resolver cuellos de botella en sistemas existentes.
  • Integrar aplicaciones con bases de datos, APIs REST/GraphQL, servicios externos y sistemas de mensajería.

Liderazgo Técnico

  • Mentorizar a desarrolladores junior y mid-level mediante code reviews, sesiones de pair programming y acompañamiento técnico.
  • Colaborar activamente con equipos cross-funcionales (Front-End, DevOps, QA, Producto) para la correcta integración de soluciones.

Calidad y Seguridad

  • Diseñar e implementar pruebas unitarias e integración utilizando JUnit, Mockito, asegurando una adecuada cobertura de código.
  • Aplicar estándares de seguridad siguiendo las recomendaciones OWASP.
  • Implementar mecanismos de autenticación y autorización como JWT y OAuth2.

DevOps y Cloud

  • Trabajar con infraestructura en la nube (AWS, Azure o GCP).
  • Utilizar contenedores y orquestadores como Docker y Kubernetes.
  • Automatizar procesos de build, testing y despliegue mediante CI/CD (Jenkins, GitHub Actions, GitLab CI).

Documentación

  • Documentar diseños técnicos, decisiones arquitectónicas y procesos clave para asegurar la disponibilidad y transferencia del conocimiento.

Requisitos

Habilidades Técnicas (Indispensables)

  • Java: Dominio avanzado (JDK 11+, lambdas, streams, concurrencia).
  • Frameworks: Spring Boot, Spring Security, Hibernate/JPA.
  • APIs: Diseño y consumo de APIs RESTful y conocimiento de GraphQL.
  • Bases de Datos:
    • Relacionales: PostgreSQL, MySQL
    • NoSQL: MongoDB, Redis, Cassandra
  • Eventos y Mensajería: Kafka, RabbitMQ, AWS SQS.
  • Control de Versiones: Git (GitHub / GitLab).
  • Infraestructura: Experiencia trabajando con plataformas cloud (AWS, Azure o GCP).

Requisitos Indispensables

  • Experiencia: Mínimo 5 años en desarrollo back-end con Java.
  • Inglés: Nivel intermedio / avanzado para lectura y escritura técnica.
  • Educación: Licenciatura en Ingeniería de Software, Sistemas o carrera afín (o experiencia equivalente).

Requisitos Deseables

  • Certificaciones en Java (Oracle Certified Professional) y/o Cloud (AWS, Azure).
  • Experiencia en arquitecturas serverless (ej. AWS Lambda).
  • Conocimiento en herramientas de observabilidad y monitoreo (Dynatrace, Prometheus, Grafana).
  • Familiaridad con patrones de resiliencia (Circuit Breaker, Retry, Timeout, Bulkhead).

Indicadores Clave de Desempeño (KPIs)**_(Deseables)_

  • Velocidad de Entrega

    • Cumplimiento de deadlines.
    • Tiempo de resolución de bugs.
    • Throughput de desarrollo.
  • Calidad del Software

    • Cobertura de pruebas superior al 80%.
    • Reducción de bugs e incidentes en producción.
  • Impacto en la Arquitectura

    • Reducción de latencia y mejora de rendimiento.
    • Escalabilidad lograda en componentes clave.
    • Reutilización de componentes y servicios.
  • Liderazgo Técnico

    • Mentoría efectiva.
    • Calidad y frecuencia de code reviews.
    • Adopción de buenas prácticas por el equipo.
  • Innovación

    • Propuestas de mejora implementadas.
    • Evaluación y adopción de nuevas tecnologías.
  • Colaboración

    • Retroalimentación positiva del equipo.
    • Participación activa en dinámicas de trabajo colaborativas.

Ingles intermedio