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
```