Por favor, déjenos sus contactos, le enviaremos nuestra presentación por correo electrónico
Autorizo el tratamiento de mis datos personales para el envío de material publicitario personalizado de conformidad con la Política de privacidad.
El formulario se ha enviado correctamente. Encontrará más información en su buzón de correo electrónico.
Innowise Group es una empresa internacional de desarrollo de software de ciclo completo de software de ciclo completo fundada en 2007. Somos un equipo de más de 1400 profesionales de TI que desarrollan software para otros profesionales de todo el mundo.
Quiénes somos
Innowise Group es una empresa internacional de desarrollo de software de ciclo completo de software de ciclo completo fundada en 2007. Somos un equipo de más de 1400 profesionales de TI que desarrollan software para otros profesionales de todo el mundo.

Sistema de recogida de datos de usuario para tienda en línea

La solución basada en Python tiene como objetivo la automatización del sistema de recogida de datos de los usuarios y la mejora de sus análisis.

Cliente

Industria
Comercio electrónico
Región
EE.UU.
Cliente desde
2019

Nuestro cliente es una importante tienda online de Estados Unidos. La gama principal de la tienda es ropa diversificada de varias marcas para hombres, mujeres y niños.

La información detallada sobre el cliente no puede divulgarse en virtud de las disposiciones del acuerdo de confidencialidad.

Desafío

Hemos estado trabajando con una plataforma en línea que ofrece la oportunidad de comprar ropa y accesorios de varias marcas.

Nuestro cliente nos trajo una arquitectura de sistema de recomendación en desarrollo activo para la analítica y la recopilación de datos sobre la actividad de los usuarios.

Solución

Nuestro objetivo era crear un sistema de recopilación y tratamiento de datos para ofrecer a los compradores recomendaciones sobre los productos más adecuados y al cliente información más pertinente sobre su actividad en un solo lugar.

Análisis de datos de usuarios

La plataforma no se desarrolló desde cero, sino que la modificamos en función de las tareas del cliente. La solución se basa en tecnologías en la nube, un enfoque de desarrollo moderno que permite ahorrar en DevOps, ya que los servicios en la nube ofrecen todo lo necesario dentro de una nube.

Los datos se recogen en función de lo que los clientes compran o añaden al carrito, sus clics, movimientos del ratón, etc. Además, el sistema crea modelos que ofrecerán a los compradores productos potencialmente deseados. Nos hemos encargado de organizar una recogida de datos precisa.

OPTIMIZACIÓN DE LAS CONSULTAS PARA CARGAR MÉTRICAS EN SNOWFLAKE

Nos proporcionaron un archivo enorme compuesto por varias filas (un par de miles) con diferentes consultas SQL. El cliente recopilaba datos de diferentes tablas y calculaba varias métricas. Había muchas partes repetitivas del código, y necesitábamos crear un generador de consultas que, basándose en varias plantillas de código, cambiara los valores de entrada de las consultas y las ejecutara en lugar de ejecutar las mismas consultas múltiples. Esto permitió crear una herramienta cómoda, flexible y escalable para añadir consultas de forma rápida y dinámica con el fin de calcular nuevas métricas.

Análisis de datos de usuarios

AUTOMATIZACIÓN DE LA GESTIÓN DE DATOS

AWS es una plataforma en la nube de Amazon que permite a los proveedores de aplicaciones, ISV y vendedores alojar sus soluciones de forma rápida y segura, tanto si se trata de una aplicación existente como de una nueva aplicación basada en SaaS. AWS Systems Manager Parameter Store garantiza un repositorio seguro para administrar datos de configuración y contraseñas. Nuestra tarea consistía en automatizar la adición de configuraciones nuevas o el cambio de configuraciones obsoletas o contraseñas o datos confidenciales para que el usuario no tuviera que hacerlo manualmente a través de la interfaz gráfica.

AJUSTE DEL FLUJO DE AIRE

En Airflow, los flujos de trabajo se diseñan y expresan como DAGs, donde cada paso del DAG se define como una tarea específica. Se ha diseñado con el conocimiento de que todos los procesos de extracción, transformación, carga y manipulación de datos se expresan mejor como código y, como tal, es una plataforma basada en código que permite iterar flujos de trabajo de forma rápida y eficiente. Dado que Airflow es muy eficaz a la hora de organizar y programar flujos de trabajo de canalización de datos, lo utilizamos para configurar los eventos preprogramados. El DAG puede ejecutarse cada hora o, por ejemplo, cada 3 horas y 30 minutos, y así sucesivamente. Si todas las tareas del DAG se completaron con éxito, entonces se considera que el DAG se ha completado con éxito. Es conveniente porque los DAG se ejecutan en todo momento sin necesidad de acciones manuales.  
Sistema de recogida de datos de usuario para tienda en línea

GESTIÓN DE DATABRICKS

Creamos nuevas tareas que leían datos del bucket de S3 del cliente, realizaban cierto procesamiento y nos cargaban los datos directamente en DynamoDB. Estas tareas se añadieron como parte de los DAG de Airflow para automatizar este proceso".

APLICACIÓN DE CI/CD

Mientras trabajábamos en el proyecto, configuramos CI/CD, una de las prácticas DevOps que permite a los desarrolladores desplegar cambios de software con mayor frecuencia y fiabilidad, minimizar errores, aumentar la velocidad de desarrollo y mejorar la calidad del producto final. Lo hemos habilitado entre GitHub y Databricks. Así, cuando algo ha cambiado en GitHub, se muestra automáticamente en nuestro Databricks. Y como resultado, el cliente obtiene una solución de mayor calidad con un número mínimo de bolsas.

Tecnologías y herramientas

Principales lenguajes de programación
Python, Scala, Java, SQL
Análisis de datos
Scala, Python, Tableau
Servicios en la nube
AWS (EC2, MWAA, Lambda, S3, SSM, CloudWatch, IAM, CloudFormation, CodeBuild, EMR), DataDog
Bases de datos
Snowflake, Databricks, Kafka, DynamoDB
Marcos
Hadoop, Spark

Proceso

Teniendo en cuenta todos los requisitos del cliente y las especificidades del proyecto, propusimos Scrum como metodología de ciclo de vida de desarrollo de software utilizando Jira y Confluence. En cuanto a la herramienta de comunicación, el cliente sugirió utilizar Microsoft Teams.

Basándonos en nuestra amplia experiencia en el desarrollo de diversas aplicaciones web y sistemas de gestión de datos, nuestro equipo propuso la pila tecnológica más adecuada.

A lo largo del proyecto, celebramos reuniones diarias y semanales, revisiones técnicas, revisiones de sprints, retro, planificación y reuniones individuales constantes con el jefe de equipo para cualquier pregunta o duda.

Gracias a un flujo de trabajo bien planificado y a unos procesos de comunicación oportunos y transparentes, podemos ofrecer resultados con mayor rapidez y eficacia.

Equipo

4
Ingenieros de datos
6
Analistas de datos
1
Jefe de proyecto
1
Jefe de producto
1
Ingeniero de control de calidad

Resultados

Tras completar la fase activa del proyecto, que se refiere a la actualización del sistema de análisis de datos y recomendaciones, la plataforma de compras en línea ha ganado en rendimiento, estabilidad y usabilidad, con lo que han aumentado sus oportunidades de marketing y sus ventas.

El equipo del proyecto fue reconocido como profesional por su amplia formación técnica y su gran capacidad de comunicación. Como conseguimos organizar con éxito la cooperación con el cliente en la fase activa del proyecto, nuestros expertos en TI siguieron cooperando con el cliente, proporcionándole apoyo a largo plazo para la solución.

Duración del proyecto
  • Desde 2022
  • El proyecto sigue en curso, en esta fase damos soporte a la plataforma e implementamos nuevas funcionalidades

¿Necesita una solución tecnológica? Póngase en contacto con nosotros

    Le informamos de que cuando haga clic en el botón Enviar, el Grupo Innowise procesará sus datos personales de acuerdo con nuestra Política de privacidad con el fin de proporcionarle la información adecuada.

    ¿Y ahora qué?

    1

    Una vez recibida y procesada su solicitud, nos pondremos en contacto con usted para detallar las necesidades de su proyecto y firmar un acuerdo de confidencialidad que garantice la confidencialidad de la información.

    2

    Tras examinar los requisitos, nuestros analistas y desarrolladores elaboran una propuesta de proyecto con el alcance de las obras, el tamaño del equipo, el tiempo y los costes estimados. y costes.

    3

    Organizamos una reunión con usted para discutir la oferta y llegar a un acuerdo. acuerdo.

    4

    Firmamos un contrato y empezamos a trabajar en su proyecto lo antes posible. posible.

    Gracias.

    Su mensaje ha sido enviado.
    Procesaremos su solicitud y nos pondremos en contacto con usted lo antes posible.

    flecha