Laptop

HP, una empresa líder en tecnología, tenía una herramienta global de ventas existente que se construyó sobre una tecnología obsoleta. La herramienta era utilizada por los equipos de ventas de HP en todo el mundo para gestionar los pedidos de los clientes y proporcionar información de productos de HP de manera sencilla y rápida. Sin embargo, la herramienta era lenta, tenía errores y era difícil de mantener.

HP contactó con nosotros para reescribir la herramienta de ventas (Care Pack Central, o CPC a partir de ahora) utilizando tecnologías modernas y mejorar su rendimiento y usabilidad. La nueva herramienta debía ser escalable, fácil de mantener y accesible para los equipos de ventas globales de HP.

Después de analizar la base de código existente, decidimos reconstruir la herramienta utilizando Node.js y React. Node.js proporcionó un entorno de servidor rápido, escalable y eficiente, mientras que React nos permitió construir una interfaz de usuario rápida y receptiva. También utilizamos sus APIs y bases de datos internas, donde están centralizados todos sus productos.

Seguimos una metodología de desarrollo ágil y trabajamos codo con codo con los equipos de producto de HP para comprender sus necesidades y requisitos. Priorizamos las características y funcionalidades en función de sus comentarios y entregamos la nueva herramienta por fases.

Definitivamente, éste fue uno de los proyectos más desafiantes que hayamos desarrollado. Reescribir una herramienta básica para todo el equipo de ventas global de HP no fue tarea fácil. Definimos meticulosamente cada tarea, establecimos claramente las expectativas con cada uno de los stakeholders del proyecto y comenzamos a trabajar en el proyecto, aprovechando nuestra previa experiencia de trabajo con empresas de la lista Fortune 500, así como el conocimiento de nuestro equipo experimentado.

Tecnologías del proyecto

Node.js

Node.js es un entorno de ejecución de JavaScript en el lado del servidor y permite ejecutar código JavaScript fuera de un navegador web.

React

React es una biblioteca de JavaScript de código abierto y gratuita para el desarrollo de interfaces de usuario basadas en componentes.

Redis

Redis es un sistema utilizado como una base de datos distribuida en memoria de clave-valor, caché y broker de mensajes, con durabilidad opcional.

Elasticsearch

Proporciona un motor de búsqueda de texto completo distribuido, con una interfaz web HTTP y documentos JSON sin esquema.

La nueva herramienta de ventas tiene varias características clave que la hacen más fácil de usar y eficiente que la anterior. Estas incluyen:

  1. Actualizaciones de datos en tiempo real: La nueva herramienta utiliza mejores conexiones para proporcionar actualizaciones en tiempo real a los equipos de ventas, lo que les permite responder rápidamente a los cambios en los productos en base de datos.

  2. Búsqueda y filtrado mejorados: Implementamos una potente funcionalidad de búsqueda y filtrado que permite a los equipos de ventas encontrar y gestionar fácilmente sus pedidos.

  3. Mejor UI: La nueva herramienta ha sido repensada a nivel de usabilidad para que los usuarios puedan encontrar los productos de una manera más intuitiva y más eficiente.

  4. Integración con sus herramientas: Integramos la nueva herramienta con el conjunto existente de herramientas internas y plataformas de infraestructura de HP, para cumplir con las estrictas políticas de seguridad de HP a nivel global.

El nuevo CPC ha sido un gran éxito y ampliamente adoptada por los equipos de ventas globales de HP. El rendimiento y la usabilidad de la herramienta mejoran considerablemente, lo que resulta en un aumento de la productividad y los ingresos. La nueva herramienta también reduce los costos de mantenimiento y mejora la confiabilidad del sistema en general.

  • Comunicación constante -> Trabajamos de forma asíncrona para compensar las nueve horas de diferencia con el equipo del cliente. Para ello, lideramos nosotros la comunicación, enviando reports semanales y convocando reuniones específicas solamente para temas críticos, y podernos focalizar más en la ejecución, manteniendo las expectativas bien alineadas.

  • Conocimiento del contexto de negocio -> Desarrollamos la aplicación desde cero y pudimos aprender y comprender de forma autónoma el contexto de negocio de la aplicación, además de los sistemas subyacentes que ingestan datos en la aplicación. Este nivel de ownership aceleró la resolución de problemas y, redujo el número de iteraciones y la dependencia del equipo técnico del cliente.

  • Equipo estable -> Priorizamos una dinámica de equipo estable para garantizar la mantenibilidad a largo plazo del proyecto. Aunque normalmente rotamos empleados entre diferentes proyectos cada 12-18 meses, mantuvimos a las mismas personas en el proyecto incluso durante 3 años.

  • Estrategia de caché avanzada -> La implementación de una estrategia de almacenamiento en caché avanzada y el uso de tecnologías como ElasticSearch, hicieron que el bajo rendimiento de los sistemas subyacentes fuera completamente transparente para el usuario. Aunque el proyecto dependía de datos de sistemas externos lentos, logramos optimizar la velocidad y respuesta en la indexación y consulta de grandes volúmenes de datos en tiempo real, asegurando una experiencia de usuario fluida y eficiente.

La reescritura de la herramienta CPC para HP utilizando Node.js y React ha sido un proyecto desafiante y gratificante para MarsBased. Hemos podido ofrecer una solución moderna, escalable y eficiente que satisface las necesidades comerciales de HP, superando sus expectativas. Este proyecto demuestra nuestra experiencia en tecnologías modernas, desarrollo ágil y colaboración con el cliente.

Podéis visitar el resultado final aquí.