```html EJERCICIO DE EVALUACIÓN - Xumtech (Requisitos REQ-01...REQ-30)

EJERCICIO DE EVALUACIÓN – Xumtech

Nota: A continuación se transcribe de manera literal y estructurada por requerimientos el enunciado del ejercicio.

PROPÓSITO DEL EJERCICIO

REQ-01
El propósito de esta evaluación es que las y los candidatos puedan mostrar sus habilidades y capacidades consultivas a un panel de entrevistas en una sesión posterior. Para este ejercicio, se dispone de 3 días calendario (después de haber recibido el enunciado) para prepararse y preparar todo el material necesario. Al cabo de estos 3 días, el candidato debe enviar a) un video haciendo un demo de su solución y b) el código fuente al equipo de reclutamiento de Xumtech por medio de correo electrónico, el cual le contactará nuevamente para coordinar la fecha de presentación con el panel de entrevistas. Para el video, puede utilizar la herramienta que más le convenga, pero un video privado de YouTube basta.
REQ-02
Para la siguiente asignación, se permitirá utilizar cualquier tecnología de preferencia del candidato(a), sea basada en tecnologías nube, entorno cliente-servidor, o corriendo de forma local en el equipo. Si se utiliza algún componente licenciado, el candidato(a) es responsable de cumplir con lo requerido por el fabricante. Se permite utilizar bibliotecas y/o componentes de desarrollo de acceso libre y gratuito para simplificar la solución diseñada. La única restricción es que no se permite utilizar ninguna tecnología específicamente diseñada para Chatbots, pues esto brindaría una solución que no requiere construcción de componentes o desarrollo de software e impediría realizar la evaluación buscada.
REQ-03
Es importante tener total claridad de las decisiones de diseño tomadas, y conocer con propiedad la función de cada uno de los elementos utilizados. En definitiva, el conocimiento total del código generado será imprescindible al momento de realizar la revisión con el equipo reclutador. Adicionalmente, se te solicitará realizar ajustes o mejoras durante la entrevista. Si deseas incluir
funciones no especificadas entre los requerimientos que consideras importantes, ¡son bienvenidas! Sin embargo, asegúrate antes de haber implementado las funciones requeridas que son esenciales para el equipo de reclutamiento.
REQ-04
Este ejercicio, aunque en principio busca evaluar el conjunto de habilidades técnicas e investigativas del candidato (a) entorno a plataformas de desarrollo web, cuenta con un fuerte componente de evaluación que va más allá del conocimiento técnico, y que incluye aspectos como capacidad resolutiva, tolerancia a la presión, toma de decisiones y ambigüedad. Es por esta razón que, si al cumplirse el tiempo límite, el candidato(a) no posee una solución suficientemente funcional o completa, se insta a siempre presentar su resultado, pues el objetivo es examinar y discutir la solución durante la entrevista. Si tienes alguna duda sobre la confección del ejercicio que te impide realizar tu entregable, ponte en contacto con tu reclutador(a). Recuerda que no responderemos dudas directamente relacionadas con la solución, pues eso forma parte de la evaluación.

INSTRUCCIONES GENERALES

REQ-05
Este ejercicio consiste en desarrollar un Bot conversacional o Chatbot, el cual deberá responder a al menos 10 consultas realizadas por el usuario.
REQ-06
Debe ejecutarse en un navegador web sin requerir la instalación de ningún componente adicional o de terceros por parte del usuario.
REQ-07
presentar el bot corriendo en cualquiera de los navegadores populares (Firefox, Chrome, Edge, Safari) en su última versión. No se requiere realizar pruebas en múltiples navegadores, seleccionarás un navegador y harás la presentación en este.
REQ-08
Debe mostrarse una página web en blanco o con algún contenido ligero, y en esa página tener empotrada la ventana de chat. Esta puede abrirse automáticamente al cargar la página, o por medio de alguna acción del usuario.
REQ-09
La ventana de chat debe permitir al usuario digitar las consultas que desea hacer al bot. El procesamiento de la consulta no debe tardar más de 5 segundos después de haber enviado el mensaje.
REQ-10
Aunque para efectos de la entrega solo debe mostrarse un máximo de 10 posibles preguntas al bot, se debe detallar en la entrevista el proceso para ingresar nuevas preguntas en el bot (aprendizaje o entrenamiento).
REQ-11
El bot debe realizar algún nivel de contextualización de la consulta del usuario, indicando al usuario si la consulta que realiza no fue comprendida, o si corresponde a alguna de las posibles consultas que puede responder.
REQ-12
Las consultas que puede responder el bot deben estar almacenadas en algún repositorio de almacenamiento, sea una base de datos, archivo, o similar. Cualquier otra configuración o información que se considere necesaria persistir, debe incluirse en este
repositorio.
REQ-13
La comunicación entre el bot y el repositorio de almacenamiento debe realizarse por medio de algún servicio web tipo REST. El acceso a este servicio web debe ser seguro, pensando en las mejores prácticas de comunicación vía HTTP.
REQ-14
Hablaremos de tus decisiones de diseño y elección de componentes para construir tu Chatbot. Debes justificar tus decisiones y plantear posibles mejoras.
REQ-15
Buscaremos entender cómo tu solución puede volverse escalable, qué cambios crees se deben hacer para que el Chatbot pueda recibir otras funcionalidades y pueda ser utilizado por miles de usuarios.
REQ-16
Detallar sobre las principales áreas en las que crees que tu solución fue muy limitada, o con lo que estás menos conforme de tu respuesta, ¿qué habrías hecho diferente?
REQ-17
Aspectos de seguridad importantes relacionados con la aplicación, detallar posibles riesgos, capacidades futuras de autenticación u otros casos de uso que pueden comprometer aspectos de seguridad.

Entregables

 

```