Vuelve a tus resultados:Ingeniero/a De / Santo Domingo

Ingeniero/a de Calidad de Software (QA) - Asistente Virtual LISA

1. Resumen del Puesto:
Responsable de planificar, distribuir y ejecutar los distintos tipos de pruebas requeridos para el asistente virtual LISA en CrecerLab, desplegado en múltiples ambientes de desarrollo. Realizará pruebas manuales y automatizadas, abarcando tanto la interfaz de usuario (UI) como el backend, asegurando que la aplicación, incluyendo sus capacidades de procesamiento de lenguaje natural y flujos conversacionales, funcione de manera óptima. Este rol contribuye directamente a la mejora de la experiencia del usuario y la fiabilidad de LISA, cumpliendo con los más altos estándares de calidad establecidos por la empresa. Buscamos a alguien apasionado por la calidad del software y la innovación en el campo de la inteligencia artificial.

2. Responsabilidades y Tareas Principales:

Definir la estrategia y los tipos de pruebas necesarios, incluyendo pruebas funcionales, de integración, de regresión, de rendimiento, de usabilidad y específicas para IA.

Planificar, diseñar y estimar el esfuerzo de las pruebas en colaboración con el equipo de desarrollo.

Definir y documentar casos de uso, escenarios de prueba y criterios de aceptación, con especial énfasis en flujos conversacionales, lógica de IA y la interacción en plataformas como WhatsApp y web.

Diseñar y ejecutar pruebas específicas para validar la comprensión del lenguaje natural (NLU/NLP), la gestión de diálogos, la personalización y la precisión de las respuestas del asistente virtual.

Codificar, mantener y mejorar continuamente scripts y frameworks de pruebas automatizadas utilizando Python (principalmente) y, si es necesario para herramientas específicas, Java, para UI (Selenium, Appium) y backend (APIs).

Gestionar y mantener los conjuntos de datos de prueba relevantes para los modelos de IA, asegurando su diversidad y representatividad.

Ejecutar pruebas de calidad manuales exploratorias y basadas en casos de uso cuando sea necesario.

Reportar, documentar y dar seguimiento exhaustivo a los defectos encontrados, utilizando herramientas de gestión de incidencias (e.g., Jira), y colaborar en su priorización.

Analizar los resultados de las pruebas, identificar patrones de fallo, tendencias y generar informes de calidad claros y accionables.

Colaborar estrechamente con los equipos de desarrollo, producto, y especialistas en IA para asegurar la calidad integral del producto y proponer mejoras.

Participar activamente en las ceremonias de metodologías ágiles (e.g., Scrum, Kanban), aportando la perspectiva de calidad y promoviendo las mejores prácticas de testing.

Mantenerse actualizado sobre las nuevas herramientas, tecnologías y metodologías en el ámbito del testing de software y la IA.

3. Requisitos del Puesto:

Educación:

Título universitario en Ingeniería en Sistemas, Ciencias de la Computación, Ingeniería en Software o campos relacionados.

Sólido conocimiento en desarrollo de software, aseguramiento de la calidad y metodologías de pruebas.

Se valorará muy positivamente la formación adicional, el conocimiento o interés demostrable en Inteligencia Artificial, Machine Learning o Procesamiento de Lenguaje Natural.

Experiencia:

Mínimo 2-3 años de experiencia comprobada en pruebas de software, con un enfoque demostrable en la automatización de pruebas para aplicaciones complejas (UI y backend).

Experiencia en la creación y documentación de planes de prueba, casos de prueba detallados y reportes de resultados.

Experiencia probada en pruebas de interfaz de usuario (UI) y pruebas de backend, incluyendo pruebas de APIs (RESTful y/o WebSockets).

Experiencia práctica con herramientas de automatización de pruebas (ver sección de Competencias Técnicas) y gestión de incidencias (e.g., Jira, TestRail o similar).

Experiencia en la realización de pruebas de estrés y validación de aplicaciones en entornos de desarrollo y pre-productivos.

Experiencia trabajando con herramientas de control de versiones (indispensable Git).

Capacidad para coordinarse eficazmente con equipos multidisciplinares de desarrollo, producto y otros departamentos.

Deseable:
Experiencia previa probando chatbots, asistentes virtuales, sistemas basados en IA o aplicaciones con componentes de NLP.

Deseable:
Experiencia en la creación, configuración y mantenimiento de entornos de prueba.

Habilidades:

Sólidos conocimientos de programación orientada a la automatización de pruebas, especialmente en Python (y Java si es requerido para herramientas o frameworks específicos).

Habilidad para el análisis de riesgos y la identificación proactiva de vulnerabilidades funcionales, de usabilidad y de lógica de negocio.

Excelentes habilidades de planificación, organización y estimación de tareas de prueba en contextos ágiles.

Fuerte capacidad analítica para la identificación, diagnóstico preciso y documentación clara de problemas.

Atención meticulosa al detalle y pensamiento crítico orientado a la calidad.

Excelentes habilidades de comunicación oral y escrita, para interactuar efectivamente con perfiles técnicos y no técnicos.

Comprensión de los principios de prueba para sistemas de IA, incluyendo la validación de modelos y flujos conversacionales.

Capacidad para analizar logs de aplicación y comprender arquitecturas de sistemas distribuidos para facilitar el diagnóstico.

Deseable:
Conocimiento de SQL y/o bases de datos NoSQL para validación de datos en backend.

Certificaciones:

Certificaciones como ISTQB (Certified Tester Foundation Level - CTFL o superior) son altamente valoradas.

Certificaciones adicionales en herramientas de automatización de pruebas (e.g., Selenium, Appium) o metodologías ágiles (e.g., Certified Agile Tester, Scrum Master) serán consideradas un plus importante.

Cursos o certificaciones relacionadas con Inteligencia Artificial, Machine Learning o pruebas de software para IA son un diferenciador positivo.

4. Competencias Técnicas Clave:

Dominio de Python para la automatización de pruebas, incluyendo librerías y frameworks relevantes (e.g., PyTest, Requests, Unittest).

Conocimiento avanzado de Selenium WebDriver para la automatización de pruebas web.

Conocimiento avanzado de Appium para la automatización de pruebas en el contexto de aplicaciones móviles o interacciones con WhatsApp.

Experiencia con frameworks de pruebas para Java como JUnit o TestNG (si aplica a proyectos o herramientas específicas de automatización).

Experiencia práctica con herramientas de pruebas de API como Postman (o mediante código con librerías como Requests en Python).

Experiencia con herramientas de pruebas de carga y estrés (e.g., JMeter) y visualización de resultados (e.g., Grafana).

Familiaridad con herramientas y plataformas de CI/CD (e.g., Jenkins, GitLab CI, GitHub Actions) para la integración continua de pruebas.

Habilidad para utilizar Excel u otras herramientas para el análisis de datos de prueba, seguimiento de cobertura y la generación de reportes.

Deseable:
Conocimiento de Gherkin (e.g., Behave para Python, Cucumber para Java) para el desarrollo guiado por comportamiento (BDD).

Deseable:
Familiaridad con tecnologías de contenedores (e.g., Docker) para la gestión de entornos de prueba.