E-commerce

Online store

On a store, every extra step between the product and the payment is paid for in lost orders.

Shoe store: categories, filters and a product grid with prices.
Interface illustration, recreated for this presentation. It is not a screenshot of the final deliverable.

Context

An online store lives on two sources of traffic: organic search, which requires indexable and fast product pages, and returning customers, which requires a frictionless purchase journey. Both requirements bear on technical choices made very early.

The problem

Catalogues built in a hurry almost always suffer the same ailments.

  • Product pages rendered client-side, and therefore poorly indexed
  • Search that slows down as soon as the number of filters grows
  • A cart that empties when the customer changes device
  • Stock kept in a spreadsheet, out of step with what the customer sees

The solution

A server-rendered site for public pages, faceted search planned into the data model, and a back office that makes the team self-sufficient.

  • Category and product pages rendered server-side, for indexing and first paint
  • Faceted search: category, size, brand, price, with counts
  • Persistent cart, attached to the customer account on sign-in
  • A short checkout, with payment handled by an external provider
  • Back office for orders, stock and discounts

My role

Site architecture, catalogue and stock model, API, public interface, back office and payment integration. The groundwork went into the catalogue data model, because it determines whether the filters stay fast.

Constraints

  • Public pages indexable and fast, including on mobile
  • Filters combinable without degrading response time
  • Displayed stock has to reflect real stock, including on simultaneous purchases
  • Payment data never stored by the application
  • Numerous product images, to be served without weighing pages down

Outcome

An indexable catalogue, a search that stays fast as it gets more complex, and a team managing its own products and orders.

  • Product pages are served rendered, so search engines can use them
  • The cart survives a change of device
  • Stock is held in the tool, no longer in a parallel file

Outcomes are described by the capability delivered. No commercial performance metric is claimed here: usage figures belong to the client, and I do not publish numbers I cannot substantiate.

A project of this kind?

Describe your need in a few lines. I will tell you what is feasible, what is not, and where to start.

Get in touch