Reto
EOS necesitaba una nueva plataforma para integrar en su página web, donde sus usuarios pudieran registrarse, pero era necesario un formulario que funcionara solo cuando el usuario o visitante entrara para ingresar sus datos.
Nuestra solución
Rootstack ofreció a EOSchools un equipo de expertos ingenieros de software que están trabajando en la creación de una nueva plataforma para EOSchools donde los usuarios de esta organización pueden registrarse. El objetivo es construir un segundo portal que funcione bajo demanda: cada vez que alguien inicia sesión, se activa y luego vuelve a estar inactivo.
El equipo de ingenieros trabajó de la mano con los colaboradores de EOS, pudiendo así atender las necesidades de frente y no dejar nada de lado. Una de las primeras tareas en la que se trabajó fue hacer que ambas plataformas, la vieja y la nueva, funcionaran al mismo tiempo y así no perder ningún posible registro.
Una de las metas fue derribar la primera versión y deja solo la segunda versión con todas las mejoras. Además de lograr la creación de un portal liviano, fácil de realizar cambios y que permita Business Intelligence.
Se hizo implementación del frontend y backend de la aplicación, creación de un formulario de registro, creación de componentes básicos, integración de soluciones SSO con Snowflake, AWS y Azure y definición de grupos en Azure AD para la administración de roles y permisos.
Otras de las tareas que realizó el equipo de Rootstack en el proyecto con EOS fueron:
- Configuración de Windows AutoPilot para inscribir equipos en el dominio de Intune
- Desarrollo de un proceso para el alta de dispositivos móviles también bajo intune
- Desarrollo de lógica de datos a nivel de backend
- Colaborar con el equipo frontend y DevOps para integrar los desarrollos y lograr los objetivos de desarrollo establecidos
- Construcción de la infraestructura de datos que el cliente necesita para su nueva base de datos
- Desarrollo de nuevos módulos utilizando tecnologías React y AWS en el nuevo portal 2.0.
- Corrección de errores.
- Integración continua, utilizando AWS, infraestructura como código, pendiente de que se despliegue toda la infraestructura del proyecto con comandos específicos, que sean fáciles de replicar en caso de ser necesario.
- Realización de pipelines y soporte a la infraestructura AWS del cliente
- Soporte con la migración y creación del data lake y data warehouse
- Desarrollo del ETL y estrategias para mover los datos
- Desarrollo de la aplicación, realizando las validaciones de los archivos que suben los usuarios y la exposición de los datos de dichos archivos.
- Proceso UX: Investigación, Definición e Ideación. Una vez finalizada esta fase del proyecto, las tareas a cargo corresponderá al proceso de UI: Ideación, Prototipado y Testeo.
- Creación de nuevos componentes: barra de herramientas dinámica con iconos
- Creación de animaciones para usar en la aplicación.
El equipo estuvo conformado por dos data analysts, cuatro developers, un diseñador UX y un DevOps. Se trabajó con la metodología scrum.
Servicio de DevOps para Equal Opportunity Schools
En este proyecto, el ingeniero DevOps trabajó con AWS, y estuvo encargado de realizar pipelines y soportar la infraestructura AWS del cliente. El uso de AWS para DevOps proporciona una plataforma de infraestructura escalable, flexible, rentable, confiable y segura que le permite automatizar y optimizar sus procesos de DevOps, acelerar la entrega de software y mejorar la colaboración y la innovación dentro de su organización.
Tecnologías
Para este proyecto, el equipo de ingenieros y desarrolladores trabajó con múltiples tecnologías debido a su gran escala. Se usaron AWS glue, AWS athena, Snowflake, Postgres, AWS lambda, AWS S3, AWS SQS, AWS SNS, Pyspark, Python, SQL, Nestjs, Nextjs y Git.
La plataforma de computación en la nube AWS le permitió a nuestro equipo contar con múltiples herramientas para cualquier necesidad que presentará el proyecto a medida que estaban trabajando, evitando así algún contratiempo que pudiera retrasar la entrega o la ejecución de la nueva plataforma.