REQUISITOS:
- Título técnico o universitario en Ingeniería de Sistemas, Computación, Informática o carreras afines.
- 1 a 2 años de experiencia en desarrollo Java (según nivel: junior, semi senior, senior).
- Experiencia en análisis y diseño de sistemas (deseable con UML).
- Experiencia en desarrollo de aplicaciones web y de escritorio.
FUNCIONES:
- Interpretar necesidades del cliente o usuario.
- Colaborar con el área de negocio para definir soluciones funcionales.
- Elaborar diagramas técnicos (clases, flujo, etc.).
- Definir estructura, componentes e interacciones del sistema.
- Programar aplicaciones Java usando frameworks como Spring y Hibernate.
- Implementar funcionalidades tanto en backend como frontend, según proyecto.
- Ejecutar pruebas unitarias con JUnit.
- Verificar que el software cumpla con los requerimientos y estándares.
- Crear documentación de diseño, uso y funcionamiento.
- Documentar el código de forma clara y estructurada.
- Atender incidencias y brindar soporte técnico.
- Optimizar y mejorar funcionalidades del sistema.
- Controlar versiones del código con Git o SVN.
- Participar en despliegues y configuración de entornos (test, producción).
CONOCIMIENTOS TÉCNICOS:
- Lenguajes: Java SE, Java EE.
- Frameworks: Spring (Boot, MVC), Hibernate, JSF, Apache Struts.
- Entornos de desarrollo: Eclipse, IntelliJ IDEA, NetBeans.
- Pruebas: JUnit.
- Bases de datos: MySQL, PostgreSQL, Oracle, SQL Server.
- Web: JSP, Servlets, HTML, CSS, JavaScript, Web Services RESTful y SOAP.
- Control de versiones: Git, SVN.
- Integración y despliegue: Jenkins, Maven, Docker.
- Patrones de diseño: MVC, Singleton, Factory, entre otros.