The evolving retail space demanded Carphone Warehouse PLC to provide tailored experiences for their customers, especially when choosing handsets and tariffs. As part of the development team, I contributed to the conception and execution of the innovative Pinpoint application and the versatile Beeswax platform, both pushing the boundaries of technology to amplify customer experiences.
Given the diverse range of handsets and tariffs, there was an imperative need for Carphone Warehouse to equip its store representatives with an intuitive tool that personalises customer recommendations. Furthermore, with the rising administrative processes lacking API support, a pressing question arose: how can these systems be unified and made more efficient?
The primary goal was the development of the Pinpoint application, a potent tool aiming to empower store representatives by offering tailored handset and tariff recommendations efficiently. Beyond this, there was a focus on the architecture and creation of Beeswax. This platform was envisioned as a powerful backend system designed to bridge the gap where API support was absent, with a special concentration on streamlining hardware activations.
Pinpoint
Leveraging MarionetteJS and BackboneJS, we developed an extensive client-side application, primarily in JavaScript. This was hosted within a Symfony 2 framework, complemented by integration with Solr for data feeds and ADFS for seamless authentication.
Beeswax
A highly scalable, distributed application built on Symfony 2 and Sliex, designed following SOA principles. We incorporated Apache Thrift for data transportation between distributed services, while Behat integrated with Mink and PhantomJS catered to site parsing. MongoDB enriched the system by offering service logging, application definition, and configuration. My role encapsulated architecting this system, leading the development team, and providing essential integration support, especially for the Java-based systems.