Esta publicación está coescrita con Ilija Subanovic y Michael Rice de Workhuman.
El equipo de análisis y servicio al cliente de Workhuman se estaba ahogando en solicitudes de informes únicas de siete millones de usuarios en todo el mundo, un desafío común con las herramientas de informes heredadas a escala. Los administradores de inteligencia empresarial (BI) enfrentaron una presión cada vez mayor a medida que sus equipos se vieron abrumados con estas solicitudes. Al reconstruir su entrega de análisis con paneles de control de Amazon Quick Sight, eliminaron el cuello de botella de la generación manual de informes para requisitos específicos del cliente. Con este cambio, los clientes obtienen capacidades de generación de informes personalizados. Workhuman es un líder mundial en software de gestión del capital humano (HCM) y se especializa en soluciones de compromiso y reconocimiento de empleados. Al utilizar las soluciones de Workhuman, los empleados pueden reconocerse y recompensarse mutuamente, fomentando conexiones humanas auténticas en el lugar de trabajo.
Esta publicación explora cómo Workhuman transformó su modelo de entrega de análisis y las lecciones clave aprendidas de su implementación. Analizamos su enfoque de arquitectura, estrategia de implementación y los resultados comerciales que lograron, brindándole un plan práctico para agregar análisis integrados a sus propias aplicaciones de software como servicio (SaaS).
Workhuman ofrece capacidades SaaS para reconocimiento social, gestión continua del desempeño y análisis de la experiencia de los empleados a clientes empresariales. Con doble sede en Dublín, Irlanda, y Framingham, Massachusetts, Workhuman presta servicios a más de siete millones de usuarios en 180 países y brinda soporte a más de un millón de momentos de reconocimiento mensualmente.
El desafío empresarial
A medida que Workhuman creció para brindar servicio a usuarios de todo el mundo con herramientas de generación de informes heredadas, sus equipos de análisis y servicio al cliente se vieron abrumados por un volumen insostenible de solicitudes de informes manuales y únicos. Este modelo reactivo creó varios problemas críticos:
Limitaciones de recursos: la generación manual de informes consumió mucho tiempo del equipo, lo que provocó retrasos en la entrega de datos y mayores costos operativos. Cada solicitud de un informe personalizado requería la participación del desarrollador, lo que creaba un cuello de botella que ralentizaba la capacidad de Workhuman para atender a los clientes de forma eficaz. Flexibilidad limitada: los informes entregados a los clientes no se podían personalizar según sus necesidades específicas. Las modificaciones requirieron recursos de desarrollo adicionales, reiniciando el ciclo. Falta de autoservicio: los clientes no podían explorar y visualizar sus propios datos de forma independiente. La dependencia de equipos internos generó fricciones, redujo la agilidad y afectó la satisfacción del cliente. Brechas en el control de acceso: sin un mecanismo sólido para administrar el acceso a los informes o gestionar los privilegios de datos de forma segura, Workhuman enfrentó riesgos de seguridad y complejidad operativa a medida que crecía su base de clientes.
Workhuman necesitaba crear una solución para resolver su necesidad única de entregar informes a escala y al mismo tiempo permitir a los clientes administrarlos ellos mismos.
Descripción general de la solución
Workhuman necesitaba brindar experiencias de generación de informes intuitivas a los gerentes de programas, profesionales de recursos humanos y líderes de personal para que pudieran crear visualizaciones personalizadas según fuera necesario directamente en el producto de informes, todo ello respetando la necesidad de los administradores de recursos humanos de imponer privilegios de autorización de informes granulares y mantener un acceso personalizado al panel de control basado en el nivel de autorización de cada usuario.
Workhuman desarrolló una plataforma integral de análisis de autoservicio que aborda los desafíos únicos de los entornos SaaS multiinquilino con patrones de arquitectura que mantienen un estricto aislamiento de datos entre los clientes y al mismo tiempo maximizan la eficiencia de los recursos. La solución fue diseñada para permitir que los usuarios internos y clientes de Workhuman exploren, analicen y visualicen de forma independiente sus conjuntos de datos de reconocimiento seleccionados para obtener diversos conocimientos. Una fortaleza clave de la implementación de Workhuman es el uso estratégico de paneles integrados Quick Sight en aplicaciones existentes, seguido de enfoques de automatización que escalan la implementación de análisis en toda una base de clientes sin intervención manual.
La solución cubre las técnicas de seguridad a nivel de fila utilizadas para adoptar un control de acceso detallado dentro del entorno de cada inquilino, complementadas con prácticas de integración continua y entrega continua (CI/CD) para gestionar activos analíticos en entornos de desarrollo, ensayo y producción. Además, la solución muestra los resultados comerciales reales que logró Workhuman, incluida una reducción de los gastos operativos y mejores métricas de satisfacción del cliente que validan la inversión en análisis de autoservicio.
Workhuman seleccionó Quick Sight por sus funciones de aislamiento de activos y multiinquilino que abordaron directamente sus desafíos:
Arquitectura multiinquilino: la funcionalidad de espacio de nombres en Quick Sight crea un aislamiento lógico para cada organización de cliente, proporcionando una separación estricta de los activos analíticos a nivel de espacio de nombres y gestión de usuarios, manteniendo límites estrictos de datos, un requisito fundamental para cualquier solución SaaS multiinquilino. Capacidades de integración: el enfoque de integración de SDK y API primero permitió a Workhuman controlar la experiencia del usuario mientras aprovechaba los análisis de Quick Sight. Los equipos de desarrollo pueden personalizar la apariencia para que coincida con la marca de su aplicación y el patrón de interfaz de usuario. Seguridad a nivel de fila: los controles de acceso ayudan a los usuarios a ver solo los datos que están autorizados a ver según su función en la organización. Automatización impulsada por API: las API Quick Sight permiten la gestión programática de los aspectos de implementación de análisis, lo que respalda la gestión eficiente de los activos de análisis en toda una base de clientes sin intervención manual para cada cliente.
Descripción general de la arquitectura
Una solución de análisis multiinquilino requiere que varios componentes clave trabajen juntos para brindar una experiencia de análisis segura y segregada. La arquitectura de Workhuman organiza estos componentes a través de un flujo de trabajo cuidadosamente diseñado que equilibra el aislamiento con la eficiencia operativa. La arquitectura utiliza espacios de nombres dedicados para cada cliente y al mismo tiempo utiliza infraestructura y plantillas compartidas para reducir la complejidad.
Workhuman estructuró su enfoque en torno a estos componentes:
Centro de administración e informes: la aplicación central proporciona paneles Quick Sight integrados y administra el acceso de los usuarios. Administración del espacio de nombres Quick Sight: los espacios de nombres dedicados para cada inquilino mantienen el aislamiento. Creación y administración de análisis: plantillas maestras y análisis específicos del cliente. Publicación de paneles: análisis publicados como paneles para el consumo y la personalización de los usuarios del cliente a través de la experiencia de creación. Gestión de conjuntos de datos: conjuntos de datos con filtrado adecuado específico del cliente Inserción de paneles: URL de incrustación segura integradas en la aplicación Creación de paneles: los usuarios pueden crear copias personalizadas de los análisis existentes
La cuenta de AWS de Workhuman sirve como centro central y alberga el espacio de nombres predeterminado para operaciones internas y activos con plantillas con conjuntos de datos y herramientas de análisis predefinidos. Durante la incorporación, cada cliente recibe segmentos dedicados que administran sus activos específicos, incluidos conjuntos de datos filtrados adaptados a sus requisitos de datos únicos.
La aplicación Admin Hub and Reporting maneja la administración, autenticación y autorización de usuarios, interactuando con activos con plantillas para publicar paneles y análisis mediante una API. Una base de datos de Amazon Aurora PostgreSQL admite operaciones de backend, almacenando y administrando datos de clientes de forma segura.
La arquitectura confirma que cada cliente opera dentro de su propio entorno aislado, con recursos dedicados y controles de acceso a datos, mientras utiliza infraestructura y herramientas compartidas para lograr eficiencia y rentabilidad.
Workhuman desarrolló este flujo de trabajo estructurado, que se muestra en la figura anterior:
Administre las identidades de los usuarios en Quick Sight: cree cada usuario de creación de clientes dentro de un grupo de Quick Sight en un espacio de nombres personalizado. Cree análisis maestros: los analistas crean análisis maestros para áreas de características relevantes del producto basándose en conjuntos de datos del modelo central. Duplicar para los clientes: copie análisis para cada cliente y compártalos con los grupos de Quick Sight de clientes relevantes. Cree conjuntos de datos filtrados: cree conjuntos de datos específicos del cliente con filtros específicos del cliente y compártalos con los grupos de creación de clientes de Quick Sight. Actualizar análisis: modifique los análisis específicos del cliente para usar conjuntos de datos con filtros específicos del cliente Publicar paneles: generar paneles de clientes a partir de los análisis con conjuntos de datos actualizados Administrar la autorización: la capa de aplicación administra la configuración del usuario y realiza comprobaciones de autorización, aprovisionando usuarios a través de API cuando están autorizados Generar URL incrustadas: Quick Sight genera URL incrustadas de creación para análisis específicos del cliente Representar en la interfaz de usuario: la URL incrustada se representa en la interfaz de usuario
Implementación técnica
La implementación de Workhuman utiliza tres funciones principales de Quick Sight: aislamiento del espacio de nombres para la separación de inquilinos, personalización basada en plantillas para mantener la coherencia y control de acceso de seguridad a nivel de fila. Cada componente se basa en la base arquitectónica descrita anteriormente y trabaja en conjunto para crear una plataforma de análisis que escala de manera eficiente y al mismo tiempo mantiene estrictos límites de seguridad.
Aislamiento del espacio de nombres
Cada organización de clientes recibe un espacio de nombres dedicado en Quick Sight Enterprise Edition. Cada espacio de nombres contiene los recursos de un inquilino, lo que impide que los clientes accedan a los datos o análisis de los demás. Los espacios de nombres proporcionan la capa fundamental de aislamiento de usuarios necesaria para las aplicaciones SaaS multiinquilino, proporcionando una separación lógica de los usuarios, activos y datos de cada organización de cliente que permanecen lógicamente separados con límites que Quick Sight aplica automáticamente.
Plantillas maestras y personalización.
Las plantillas de análisis maestro incluyen KPI estándar, visualizaciones, marcas y filtros de marcador de posición. Durante la incorporación del cliente, la automatización genera versiones específicas del cliente a partir de estas plantillas, y el marco de automatización de la implementación genera automáticamente activos Quick Sight, lo que crea coherencia y reduce el esfuerzo manual.
Seguridad a nivel de fila
La seguridad a nivel de fila (RLS) restringe el acceso a los datos dentro del espacio de nombres de cada cliente según los roles de usuario. Las reglas RLS filtran datos utilizando valores de columna que coinciden con los atributos del usuario. La seguridad a nivel de fila complementa el aislamiento del espacio de nombres al restringir la visibilidad de los datos dentro del entorno de cada cliente según los roles y permisos del usuario.
Integración segura del panel de control
La integración del panel genera URL seguras y por tiempo limitado para cada sesión de usuario. Workhuman personalizó las opciones de interactividad y las integró con su sistema de autenticación existente.
Creación de paneles
Los usuarios de los clientes con experiencia en creación pueden crear versiones personalizadas de análisis Quick Sight integrados a través de un proceso desarrollado a medida:
Cree una copia del análisis original utilizando la API Quick Sight. Defina reglas RLS para el análisis. Cree un grupo Quick Sight asociado con los permisos RLS proporcionados utilizando la API. Agregue usuarios al grupo Quick Sight.
El proceso verifica que cada análisis personalizado tenga permisos y grupos asociados, lo que permite a los usuarios pertenecer a diferentes grupos de Quick Sight con diferentes conjuntos de permisos RLS para diferentes análisis. La siguiente imagen muestra la página de inicio del Administrador de informes que enumera todos los análisis disponibles.
Para crear un análisis personalizado, los usuarios del cliente ingresan el nombre del análisis y seleccionan el tipo de análisis en el cuadro de diálogo. Luego eligen un análisis creado previamente para utilizarlo como plantilla.
Gestión de activos estática y dinámica.
La implementación de Workhuman distingue entre dos tipos de activos de Quick Sight, cada uno de ellos administrado de manera diferente según su ciclo de vida y frecuencia de actualización.
Activos estáticos: los espacios de nombres, los análisis estándar, los paneles, las carpetas y los grupos de autores se mantienen relativamente estables entre los clientes. Los scripts de Python que utilizan la API Quick Sight generan estos recursos automáticamente. La automatización monitorea el estado de los activos de Quick Sight para cada cliente, valida las definiciones de análisis, detecta actualizaciones de definiciones de fuentes y aprovisiona activos automáticamente al detectar nuevas ID de clientes. Los datos de los informes del cliente provienen de una tabla centralizada de Amazon Redshift. Durante la creación del conjunto de datos Quick Sight, el sistema aplica filtros específicos del cliente basados en la ID del cliente para mantener el aislamiento de los datos. La gestión dinámica de activos maneja los recursos asociados con las experiencias de creación de análisis Quick Sight: análisis personalizados creados por los usuarios y los permisos asociados. La aplicación frontend utiliza la API Quick Sight, para que los usuarios puedan crear nuevos análisis y gestionar su ciclo de vida. Una base de datos PostgreSQL almacena conjuntos de permisos RLS y metadatos de análisis.
Durante la creación de análisis personalizados, el cuadro de diálogo de la interfaz de usuario enumera los análisis disponibles para su personalización. Los usuarios definen los permisos RLS derivados de las columnas y valores disponibles en el conjunto de datos. Los permisos se insertan en la base de datos RLS y se vinculan al conjunto de datos. Se crea el análisis y se crea un nuevo grupo Quick Sight.
La separación entre activos estáticos y dinámicos significa que Workhuman puede mantener un control centralizado sobre las plantillas estándar y, al mismo tiempo, brindar flexibilidad para personalizaciones específicas del cliente.
Canalización de CI/CD
El proceso de implementación automatiza las actualizaciones de activos de Quick Sight en tres etapas. El enfoque de tres etapas equilibra la agilidad del desarrollo con la estabilidad de la producción:
Desarrollo: los analistas crean y prueban nuevas plantillas de paneles de control en un entorno aislado. Puesta en escena: las plantillas se someten a pruebas con datos similares a los de producción para identificar problemas antes de la exposición del cliente. Producción: las plantillas validadas se implementan en los espacios de nombres de los clientes.
El proceso incluye puertas de aprobación entre etapas y capacidades de reversión en caso de que se detecten problemas. Terraform implementa infraestructura, mientras que las funciones AWS Lambda y los procesos AWS Batch ejecutan la automatización de la creación de activos Quick Sight.
La siguiente imagen es el flujo de trabajo de canalización de CI/CD. La arquitectura demuestra un flujo de trabajo de implementación automatizado que integra el control de versiones de GitLab con servicios de AWS como AWS Batch, Amazon Quick Sight, Amazon Lambda y Amazon Aurora para administrar paneles de análisis e informes.
Fuentes de datos
Amazon Redshift sirve como fuente de datos principal para los informes. Los flujos de trabajo de extracción, transformación y carga (ETL) dedicados crean tablas subyacentes de Amazon Redshift. Para mantener los datos actuales, las actualizaciones del conjunto de datos Quick Sight se activan automáticamente después de las actualizaciones de la tabla Redshift mediante la API del conjunto de datos de actualización. Las métricas de Amazon CloudWatch realizan un seguimiento de las marcas de tiempo de actualización, los recuentos de filas de datos y la duración del procesamiento. Los paneles y los mecanismos de alerta monitorean la actualización del conjunto de datos y ayudan a verificar la confiabilidad de los datos.
Paneles de control orientados al cliente
Los paneles de Workhuman con tecnología Quick Sight brindan a los clientes información útil a partir de los datos de reconocimiento de los empleados. Estos paneles demuestran los tipos de análisis a los que los clientes de Workhuman pueden acceder y personalizar:
Panel de distribución de premios: el panel, que se muestra en la siguiente captura de pantalla, realiza un seguimiento del alcance del reconocimiento en toda la organización. La métrica que muestra el 29,3% de los premios otorgados a personas en diferentes departamentos destaca el papel del reconocimiento en el fomento de la colaboración multifuncional. Las organizaciones pueden utilizar estas métricas para identificar brechas en la cobertura del reconocimiento y realizar un seguimiento de la efectividad del programa a lo largo del tiempo.
Panel de Executive Insights: la vista, que se muestra en la siguiente captura de pantalla, se centra en los patrones de reconocimiento interdepartamentales. En el ejemplo mostrado, el 89,29% de los empleados han recibido reconocimiento, lo que indica una fuerte adopción del programa y muestra que departamentos como Operaciones, Excelencia del Cliente y Tecnología reciben activamente premios externos a sus equipos, lo que indica una apreciación interfuncional saludable. Los ejecutivos utilizan este panel para evaluar la salud de la cultura organizacional e identificar departamentos que pueden necesitar estímulo para participar más activamente en programas de reconocimiento.
Panel de reconocimiento (destinatario): el análisis identifica qué premios y empleados influyen más en la cultura de la empresa. El ejemplo, que se muestra en la siguiente captura de pantalla, destaca a los empleados no gerenciales como contribuyentes importantes a la cultura del reconocimiento. Esta información ayuda a las organizaciones a comprender que la creación de cultura no se limita a los roles de liderazgo y puede informar el diseño del programa de reconocimiento.
Panel de reconocimiento por empleado: este panel analiza la actividad de reconocimiento por segmentos de empleados, incluido el país, el departamento y el estado gerencial. Las organizaciones utilizan esta visión para identificar y abordar las disparidades en la distribución del reconocimiento, confirmando la participación equitativa en el programa entre diferentes poblaciones de empleados. Nota: La moneda es USD para los montos que se muestran en los ejemplos del panel.
Beneficios y resultados
La plataforma de autoservicio de Workhuman redujo drásticamente las solicitudes de informes personalizados:
Solicitudes de informes personalizados reducidas: los clientes ahora crean y modifican sus propios informes, lo que libera al equipo de desarrollo para realizar otros trabajos. Mayor satisfacción del cliente: las capacidades de análisis de autoservicio recibieron comentarios positivos de los clientes de Workhuman, quienes aprecian la flexibilidad y el control. Dotar a los clientes de herramientas de autoservicio mejoró su experiencia general con el producto. Tiempo de obtención de información más rápido: los usuarios pueden acceder y analizar datos inmediatamente en lugar de esperar informes personalizados, cambiando la forma en que los clientes interactúan con sus datos y toman decisiones. Solución escalable: la arquitectura multiinquilino admite una base de clientes en crecimiento sin requerir aumentos proporcionales en los recursos de desarrollo. A medida que se unen nuevos clientes, el aprovisionamiento automatizado se encarga de la complejidad. Tiempo de desarrollo reducido: la canalización CI/CD automatizada implementa nuevas funciones de análisis más rápidamente. Lo que antes requería semanas de desarrollo personalizado ahora se puede implementar en toda la base de clientes en cuestión de días.
La solución también liberó recursos de desarrollo que antes se dedicaban a cumplir con solicitudes de informes personalizados, lo que permitió a Workhuman centrarse en la innovación de productos principales.
Mirando hacia el futuro
Workhuman planea agregar más opciones de personalización del panel, nuevos tipos de visualización para sus casos de uso específicos, agentes de chat, informes Pixel Perfect, obtención de información a partir de datos no estructurados y capacidades API ampliadas.
Conclusión
La implementación de Amazon Quick Sight por parte de Workhuman demuestra cómo las organizaciones pueden ofrecer poderosas capacidades de generación de informes de autoservicio mientras mantienen un estricto aislamiento de datos multiinquilino en aplicaciones SaaS. Al utilizar las funciones empresariales de Quick Sight, los equipos pueden crear soluciones escalables que mejoren la satisfacción del cliente y reduzcan los gastos generales de desarrollo.
Conclusiones clave
Aplique estas lecciones clave de la experiencia de Workhuman:
Utilice espacios de nombres para separar inquilinos: esto es fundamental para el análisis de múltiples inquilinos.
Implemente seguridad a nivel de fila para el control de datos: agregue seguridad a nivel de fila para control de datos adicional dentro de los espacios de nombres, lo que ayudará a verificar que los usuarios solo vean sus datos autorizados. Cree plantillas maestras para lograr coherencia: cree plantillas maestras para mantener la coherencia y al mismo tiempo permitir la personalización, equilibrando la estandarización con la flexibilidad. Automatice la implementación a través de CI/CD: implemente una sólida canalización de CI/CD para automatizar la implementación y las pruebas. La automatización es fundamental para gestionar los activos de análisis a escala en múltiples clientes. Utilice capacidades de integración para una experiencia nativa: aproveche las capacidades de integración proporcionadas por QuickSight para integrar análisis de forma natural en las aplicaciones, creando una experiencia de usuario coherente.
Más información
Para obtener más información sobre la implementación de análisis integrados con Quick Sight: