Shutterfly allows millions of people to enjoy, store and share billions of photos. The multi-brand conglomerate produces award-winning photo books, meaningful cards, innovative photo gifts and home decor under the Shutterfly, tinyprints, Snapfish, Spoonflower and Shutterfly Business Solutions brands.
Limitations to growth
Printing operations are at the core of Shutterfly’s $750M business.
At the time of engagement, the printing operations division had numerous disparate
applications served from a single instance. While providing an ease of deplyment on the back-end
and robust functionality on the front-end, the disparate tech stack and monolith architecture
presented maintainability issues, scalability challenges and hampereed development speed.
The downstream effects were usability issues and lack of technological adoption, which ultimately,
drove inefficiencies and limited growth, respectively.
The division had outgrown their software system.
Core problem assessment
In order to fully understand the root of the problem we led a discovery process
that involved multiple facility assessments, stakeholder and SME interviews and
a software audit. Through discovery we uncovered opportunities to use UX heuristics to
improve usability, upgrade the data pipeline to make data analytics more accessible and
provide features that simplified QA and reduced waste. We also identified the need for a new
application that would provide a single source of truth for printing operations and built a
prototype to demonstrate the value.
Finally, we identified how switching from a monolithic application to a microservices architecture would help the division scale and grow.
Usability studies, interviews & software audits provided insight.
Deep DevOps & front-end expertise informed a custom strategy.
Cloud based platform reduced server costs.
Microservices-based infrastructure improved scalability.
Design system & component library improved consistency and speed.
System improvements reduced waste and increased productivity.
Building a the new system
After securing buy-in from operators and executives we converted the monolith system into a lean
collection of microservices on the back-end and provided several new applications on the front-end
which streamlined functionality. We worked with designers to create a new UI and UX and quickly iterated
to reach optimal usability based on user feedback. Each application consisted of a library of
standardized and reusable components and a modern framework. This provided
the flexiblity to build new features quickly and easily.
The net result was a single unified system that drove efficiency, reduced training times, supported ever-evolving product lines and improved work experiences for those working the line.