Desafío Técnico - Backend Node.js

¡Bienvenido/a! Imagina que formas parte del equipo de desarrollo de Alegra. Hoy te enfrentas a una misión desafiante: crear una solución backend sólida, escalable y de calidad, que demuestre tu dominio en Node.js, arquitectura moderna, buenas prácticas, atención al detalle y foco en el usuario.


🍔 ****¿En qué consiste?

Un reconocido restaurante ha decidido lanzar una jornada de donación de comida gratis. Por lo tanto, esperan una gran cantidad de comensales, quienes recibirán un plato aleatorio de las 6 recetas disponibles para este evento en el menú.

Actualmente el gerente del restaurante presiona un botón para iniciar la preparación de los platos. La cocina selecciona aleatoriamente una receta, solicita los ingredientes a la bodega, y si esta no los tiene, los compra en la plaza de mercado. Una vez recibe los ingredientes, la cocina prepara y entrega el plato al comensal.

Gestionar manualmente este proceso y cada pedido es una tarea casi imposible para el gerente en esta jornada de donación masiva, es por ello que nos ha pedido apoyo.

➡️ Tu misión es: Desarrollar un sistema que automatice la solicitud de platos, la gestión de ingredientes y la entrega final a los comensales, optimizando los tiempos y asegurando que todos sean atendidos sin demoras. Adicional, debe tener una interfaz intuitiva para que el gerente pueda entenderlo de una manera rápida y amigable, ya que es algo nuevo para él. Ah, y es exigente: solo aceptará lo mejor. 😉


🔄  Flujo del sistema

  1. El gerente del restaurante presiona un botón que envía una orden a la cocina para preparar una cantidad de platos requerida.
  2. La cocina selecciona recetas aleatorias de un total de 6 disponibles (que tú definirás), todas con al menos un ingrediente de la siguiente lista (ver lista de ingredientes en la parte final del texto). Cada receta debe contener los ingredientes que la componen, y la cantidad requerida de cada uno.
  3. Por cada plato solicitado:
  1. La plaza de mercado se encuentra ubicada en la dirección: **https://recruitment.alegra.com/api/farmers-market/buy**