ePrintCenter

HP’s web-enabled printers receive print jobs over the Internet and run apps similar to a phone or tablet. These features are configured by customers at the ePrintCenter website.

Problem

Scampersand founders Aron & Amy⁠—employed by HP at the time⁠—joined the ePrintCenter team shortly after the initial release. Schedule pressure had forced compromises such as copying data manually between servers, and this was coming back to bite in the form of customer-visible bugs. Integration testing was non-existent because teams hadn’t built staging servers for other teams to develop against. Site deployments were synchronized with printer hardware releases, taking a toll on the developers in the form of late-night “deployment parties.” Meanwhile the servers struggled as traffic surged.

It was an exciting time to jump in.

Solution

We contributed to numerous feature releases during our year and a half on the team. Here are some of the highlights:

  • Coordinating with a team in India, we built the prototype of an app provisioning service to act as a central authority governing which apps were available to be installed on a given printer. This would eventually replace manually copied data with an API designed to meet the needs of the various stakeholders. Among those was ePrintCenter itself, which we ported to use the new service.
  • We built a cluster of virtual machines so that remote teams could run integration tests against ePrintCenter snapshots with production parity.
  • To decouple site updates from printer hardware releases, we added run-time configuration flags with date triggers so that deployments could proceed on their own schedule.
  • We added localized page delivery for the ePrintCenter site using Akamai, to handle the increased customer traffic taking country and language into account.
  • Unique Features

  • Site translated into 26 languages
  • Restricted content by country and printer model
  • Red Hat Cluster for integration VMs
  • Global development collaboration

Django Development • Front-End Development • API Integration • Deployment & Scaling