El cliente

Fundada en 1999, Shutterfly Inc. es una compañía estadounidense que ofrece una completa gama de productos para compartir, imprimir y preservar los momentos especiales que marcan la vida de las personas, a través de álbumes de fotos, regalos, artículos de papelería y tarjetas personalizadas para cada ocasión (como casamientos, nacimientos, titulaciones, navidad, vacaciones, entre otros), a través de su robusta plataforma tecnológica y procesos de manufactura.

La compañía se hizo pública en 2006 y comenzó a adquirir otras marcas. Shutterfly, Inc. también opera Shutterfly Business Solutions, que ofrece servicios de impresión digital de alta calidad para el mercado empresarial, y Lifetouch, el líder en fotografía escolar.

En 2015, Shutterfly alcanzó más de USD 1 mil millones en ingresos por primera vez y en 2019, al celebrar 20 años de existencia, fue adquirida por Apollo Global Management por USD 2.7 mil millones.

Redwood City, CA

USD 1,961 mil millones en ingresos en 2018

+10.000 empleados

Visión general

Al ser un e-commerce muy visitado con un alto nivel de complejidad en términos de las tecnologías que usan, el rendimiento del sistema de Shutterfly.com es un componente crítico del éxito y la premiada experiencia del cliente de la compañía.

Shutterfly tiene un equipo dedicado para probar y monitorear el rendimiento de su sitio para que, incluso en los días con peaks de compras o después del lanzamiento de una nueva versión, todo funcione sin inconvenientes.

Tener una comprensión clara del comportamiento del sistema, le permite a Shutterfly intuir cuándo pueden ocurrir problemas y tomar las medidas necesarias para mantener su reputación como una compañía confiable.

La necesidad

Para llevar a cabo con éxito su esquema de pruebas continuas, Shutterfly necesitaba la ayuda de un equipo de ingeniería en performance con experiencia en Gatling, Jenkins y análisis de performance para que los ayudara principalmente con tres tareas:

  • Ejecución de pruebas de performance:
    El equipo ejecuta alrededor de 300 pruebas diarias para lo que necesitaba de alguien que revisará los resultados, con el propósito de determinar si alguna prueba que fallara eran falsos negativos (debido a problemas con la prueba, infraestructura de prueba, datos, compilación, etc.) o si correspondía a un problema real y de ser así, reportarlo.

  • Consolidación de las pruebas:
    Como el tiempo para las pruebas siempre es limitado y Shutterfly tiene diferentes equipos que entregan nuevas pruebas frecuentemente, se hacía necesario consolidarlas. Una tarea importante con la que necesitaba ayuda, era encontrar pruebas que cubrieran funcionalidades similares y combinarlas, o incluso ejecutarlas en paralelo si se mantenían los niveles de rendimiento que el equipo intentó alcanzar desde el principio.

  • Mantener afirmaciones de prueba y pruebas de perfil:
    También era imprescindible que alguien mantuviera todas las validaciones de las pruebas. Periódicamente, necesitaban que alguien verificara que dichas validaciones se ajustaran al nivel correcto para que continúen reportando un error cuando haya una degradación del rendimiento. Esto se lograría calibrando las pruebas, identificando su punto de quiebre dentro de la infraestructura (el número de usuarios virtuales a través de los cuales todo comienza a degradarse) y ajustando las pruebas para que se ejecuten con ese número de usuarios virtuales concurrentes, y con las validaciones correspondientes de la forma más estricta posible.

Nuestra solución

Durante un período de cinco meses, un ingeniero de rendimiento de Abstracta altamente capacitado, ayudó al equipo con las tres tareas anteriormente mencionadas.

Nuestro ingeniero colaboró ​​a la perfección con el equipo de Shutterfly, asistiendo a cada reunión diaria por videoconferencia, proporcionando sugerencias útiles para mejorar (cuando fuera apropiado) y agregando constantemente valor al equipo.

Abstracta obtuvo rápidamente la comprensión necesaria de la metodología única de Shutterfly para realizar pruebas continuas y adaptarse a ella.

El ingeniero de Abstracta se aseguró de registrar todos los errores detectados con la mayor cantidad de información posible, y revisó cuidadosamente cada una de las pruebas según fuera necesario.

Resultados

Abstracta tuvo un importante papel dentro del equipo de ingeniería en performance de Shutterfly para:

  • Mantener su pipeline de CI creado con Gatling y Jenkins que permitió al equipo detectar de forma instantánea, cuándo una línea de código causó una degradación en el rendimiento.
  • Mantener una alta trazabilidad entre pruebas e incidentes.
  • Proporcionar información cabal a los desarrolladores sobre cada incidente.
  • Aumentar la eficiencia de cada prueba.
  • Defender la ventaja competitiva del sitio web para ofrecer una experiencia superior al cliente.
ilustración testing ágil

Otros casos de éxito

Framework de automatización de pruebas para app líder de delivery

VER CASO DE ÉXITO

Administradora de fondos de pensiones reduce 5x el tiempo de respuesta del sistema

VER CASO DE ÉXITO

Cadena de librerías #1 de EUA reduce el tiempo de respuesta en un 46%

VER CASO DE ÉXITO