TableTop webshops (deel 3)
Tijdens mijn carrière bij XSARUS heb ik mogen werken aan heel veel webshops. Zoveel, dat ik deze onmogelijk allemaal een eigen portfolio item kan geven. In dit derde en laatste deel staat TableTop 5 centraal. De interne ontwikkeling van het TableTop CMS heeft eigenlijk nooit stil gestaan. Versie 2 was echter zo stabiel dat deze nog heel lang nog gebruik is gebleven. Uiteindelijk is de e-commerce module binnen TableTop 5 volledig nieuw opgebouwd met alle lessen uit het verleden in het achterhoofd en waarbij ook gekeken is naar een nog verder schaalbare oplossing. Zaken als caching en performance op piekmomenten zijn direct in het ontwerp meegenomen. Daarnaast hebben we de algehele opmaak van de beheeromgeving in een moderner jasje gestoken. Dat was met het oog op de gebruiksvriendelijkheid geen overbodige luxe.
Er was echter geen mogelijkheid om de verouderde TableTop 2 CMS omgevingen gemakkelijk te migreren naar de meest recente versie. De onderliggende technieken, het database model en zelfs zaken als de PHP-versies lagen zo ver uit elkaar dat de webshop volledig opnieuw gerealiseerd moest worden. Dit hebben we voor een aantal klanten gedaan, maar alleen op het moment dat de wens er was voor bijvoorbeeld een grote upgrade in het design.
Hoewel er met TableTop 5 ook weer de nodige webshops voor kleding- en schoenenwinkels zijn gerealiseerd, zoals de webshops voor Noppies en SuperTrash en de rebuild trajecten van Daka Sport en Le Ballon, zaten er toch ook wel een paar uitzonderingen tussen. Zo hebben voor voor twee winkels in bouwmaterialen een webshop mogen realiseren: St Middelkoop en het Belgische Mapeco. Belgische klanten hebben we sowieso ook meer en meer bediend. Sportwinkel United Brands en de winkels JBC en Mayerline zijn allen webshops voor onze zuiderburen.
Belangrijk: deze websites zijn gerealiseerd door XSARUS. Ik ben hierbij betrokken als (lead/senior) developer.
Met de komst van TableTop 5 heb mij wederom verder kunnen verdiepen in het ontwikkelen van complexe webshops. Niet alleen qua techniek. Hoewel zaken als caching en performance iets is om met het schrijven van code rekening te houden, de complexiteit zat hem vooral in de webshops die veel meer maatwerk nodig hadden. Voorbeeld van veel maatwerk is de B2B webshop van St. Middelkoop. Waar je kleding kunt kopen in een bepaalde maat, of mogelijk nog keuze hebt uit een paar kleuren, is het bij St. Middelkoop mogelijk om plaatmateriaal op maat te bestellen. Daarbij gelden prijzen per vierkante meter voor sommige producten, prijzen per strekkende meter voor andere producten, etc. Ook hier zat de nodige uitdaging in de berekening van verzendkosten; bezorging per vrachtwagen door de eigen bezorgdienst was mogelijk, maar de kosten verschilden per regio (de afstand tot een van de drie filialen was hierbij een factor).
De performance aanpassingen in TableTop 5 kwamen goed van pas toen we de webshop van JBC hebben gerealiseerd. Zij waren sponsor van het zowel in Vlaanderen als Nederland populaire tv-programma ‘K3 zoekt K3’. Tijdens de reclameblokken op tv trok de webshop massaal bezoekers vanuit de hele Benelux. Toen ook nog het speciale actieartikel (een K3 jurkje) te koop kwam hebben we de nodige aanpassingen moeten doen om alle bestellingen in zeer korte tijd te kunnen verwerken.
JBC was niet de enige klant die mijn/onze kennis en kunde op de proef heeft gesteld: ook de webshop van SuperTrash (destijds eigendom van Olcay Gulsen) heeft meermaals erg populaire artikelen aanboden die door veel mensen tegelijk besteld werden. Tijdens de aanloop naar het WK van 2014 bood SuperTrash een oranje jurkje aan in zowel dames- als kindermaat. Acties als deze zorgden er heel snel voor dat mijn kennis op het gebied van caching, load balancing en database optimalisatie enorm is gegroeid.
Binnen dit project gebruikte technieken: