Performance by design, ik heb het nog nooit iemand horen zeggen, maar het is toch zeker belangrijk. Door de jaren heen heb ik me bedacht dat het een teken kan zijn tussen een echte senior en niet. Iemand die niet alleen een proces kan bouwen, maar dat op zo’n manier doet dat het ook presteert.
Ik zou bij Mexx twee verhalen kunnen vertellen over performance, of de afwezigheid daar van, maar aangezien het ene verhaal begint met “Microsoft heeft een nieuw ERP systeem gebouwd”. Heb ik bedacht om het andere verhaal te vertellen.
Zoals je misschien kan verwachten bij een kledingmerk, is het ook nodig dat artikelen verkocht kunnen worden. Daar is natuurlijk een PoS (Piece of Sh..Point of Sale) systeem voor nodig. Het exacte systeem wat gebruikt werd, weet ik niet meer, maar het deed op bit-niveau informatie doorgeven. PowerCenter vond dat niet zo makkelijk, dus er was besloten om Java in te zetten om dit probleem op te lossen. Java kan in een component gehangen worden binnen PowerCenter, dus het kan alsnog in de standaard workflows meedraaien.
Bij gebrek aan capaciteit werd een extra collega ingezet om dit specifieke project(je) op te pakken. Na een periode had deze collega zijn werk gedaan, en een andere collega had het Java component aangemaakt, zodat het proces draaide.
Al snel werd duidelijk dat dit proces iets langer draaide dan gewenst, het deed er 8 uur over om de PoS acties van de dag te verwerken. En jammer genoeg voor Mexx, zoveel tijd was gewoon niet nodig. Er werd van mij gevraagd of ik er naar kon kijken, om er uit te persen wat er in zat. Na enige analyse had ik het probleem gevonden. De referentiedata die eenmalig ingelezen zou moeten worden, werd voor elk record ingelezen. Enkele duizenden keren 8 duizend records inlezen duurt even. Een kleine wijziging later en het proces was iets sneller. In plaats van 8 uur duurde het nu ongeveer 30 seconden. Succes!
Dit was allemaal ongebruikelijk en niemand kon aangekeken worden dat er niet vanaf het begin rekening mee was gehouden, maar iets in mijn achterhoofd zegt dat het eerder had moeten opvallen.