The Mexx Adventures: Scotty, I need more power!

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.

The Mexx Adventures: Trust is a fickle thing

L.S.,

Het grote Mexx project bestond uit een groot onderdeel en vele kleinere onderdeeltjes. Het grote onderdeel was een data warehouse volgens de data vault methodologie. Met wat externe hulp was een standaard manier van werken gecreëerd om het data warehouse te vullen van de vele verschillende bronnen. Een ontwikkelaar kon met behulp van een handleiding binnen korte tijd de vulling regelen. Nadat ik dit drie had gedaan verveelde me ik al kapot en vroeg of dat ik niet de kleinere onderdelen van het project op mocht pakken.
Het oude gedeelte van Mexx draaide op het rondsturen van bestanden. Duizenden bestanden per dag voor honderden systemen. Ook dit proces moest vervangen worden door iets nieuws. Gelukkig hadden we PowerCenter, in combinatie met B2B Data Transformation en VL-Trader, die dit allemaal voor ons kon regelen. Technisch was dit interessant genoeg, maar aangezien alles zo’n beetje werkte zoals het moest, wil ik het daar niet over hebben.
De uitdaging van dit project was niet de techniek, de uitdaging zat meer in de gebruiker. Deze gebruiker had namelijk iets te veel ervaring. Iets te veel negatieve ervaring. De gebruiker was bang dat dit project zijn leven moeilijker zou maken, in plaats van makkelijker. Om zijn zorgen te verminderen wilde hij ervan overtuigd zijn dat de ‘consultants’ weten wat hij nodig had. De enige manier waarop was door bij elke vraag en elk overleg van begin tot eind alles te vertellen. Alles wat hij weet over het systeem dat er nu draait, alles wat nagemaakt of vervangen moest worden. Ik zie mezelf niet als een erg sociaal persoon, maar ik realiseerde dat ik zijn vertrouwen moest winnen. Dus ik tolereerde zijn verhaal, keer op keer. Ik verzekerde hem er van dat ik begreep wat de bedoeling was. En ik liet hem zien wat ik aan het maken was. Op het einde is alles goed gekomen en hij was tevreden. En ik was trots op een elegant systeem dat de nodige duizenden bestanden in een uur kon verwerken en daar geen hele dag voor nodig had.

Mijn eerste contact met een klant die eigenlijk niet met je wil samenwerken, maar wel moet.

The Mexx Adventures: Tell me what you want, what you really really want

L.S.,

Een van mijn favoriete uitspraken in de ‘werk-wereld’ is: ‘goed werk wordt beloond met meer werk’. Het voordeel van mijn oplossing in het vorige verhaal was de positieve indruk die ik achterliet, en de tevredenheid van mijn werkgever dat zijn eerste aangenomen junior een resulterende investering was. Het nadeel is natuurlijk dat er steeds meer en hogere verwachtingen zijn.
Ik kreeg mijn eigen mini-projectje binnen het grote project dat Mexx was. Zoals je misschien kan verwachten bij een kledingbedrijf moeten zij kleding maken. Het maken van deze kleding gebeurd in de lage lonen landen van de wereld, zoals eigenlijk al het relatief simpele maak werk in de wereld. Het aansturen van dit fabriceren was een veel belangrijker, groter en complexer project waar een aantal collega’s aan werkten. Als deze kleding gemaakt is moet deze verstuurd worden naar de landen in de wereld waar Mexx haar waren probeerde te verkopen. Het versturen wordt geregistreerd in een ‘Electronic Freight Record (EFR)’. Hier staat in welke dozen, in welke containers, in welke schepen of vliegtuigen, waarheen gaan en wanneer deze daar verwacht worden of aangekomen zijn.
Deze bestanden met de EFRs erin werden regelmatig door fabrikanten naar Mexx toe gemaild, gecontroleerd door mijn proces, daarna de database geüpdatet waar nodig en klaargezet om ingezien te worden door de medewerkers van Mexx. Zij konden met behulp van deze informatie sturing toepassen richting de fabrikant of het transportbedrijf.
Om dit proces te kunnen bouwen was er een klein ontwerp gemaakt. Als een brave junior heb ik dit document van voor tot achter bestudeerd en er voor gezorgd dat elke letter geïmplementeerd is. Nadat ik er van overtuigd was dat alles goed ging is onze architect samen met de gebruiker er bij komen zitten om er doorheen te lopen. Hij was erg ontevreden, er ontbraken allerlei validaties! Met schrik in mijn hart zat ik daar, mijn eerste project en een ontevreden gebruiker! Gelukkig had de architect de tegenwoordigheid van geest om het originele ontwerp erbij te pakken. Het ontwerp geschreven door die gebruiker. Zoals ik al wist kon de klant niet aanwijzen in dit document waar die validaties moesten komen en hij gaf toe dat dit niet onderdeel was van de opdracht. Ik kon weer rustig ademhalen, in ieder geval totdat de klant het document had aangepast en de validaties had toegevoegd.

Mijn eerste les dat een klant soms wat begeleiding nodig heeft in vragen wat die wenst.

The Mexx Adventures: 404 – Brilliance not found

L.S.,

Daar zijn we dan, mijn eerste echte project, een project waar ik ‘in het diepe’ gegooid word. Het punt waar ik geïntroduceerd word is het ontsluiten van een webservice via PowerCenter. Voor de mensen die niet bekend zijn met webservices (en helemaal in 2012), deze communiceren vaak in XML. En voor de mensen die niet bekend zijn met PowerCenter (of bijna elke ETL tool), XML is een drama! Dus na mijn 3 dagen PowerCenter training, welke kort samengevat kan worden in: ‘Zo ziet PowerCenter eruit, deze knopjes staan hier. Veel plezier.’, mocht ik meteen aan de bak. Tot iedereens verrassing was het daadwerkelijk verbinding maken met de webservice relatief probleemloos. Het probleem begon pas nadat we de verbinding hadden gemaakt.
Het proces moest op basis van een lijst de webservice aflopen om per item op de lijst wat bijbehorende informatie op te halen. Voor de items die aanwezig waren aan de andere kant van de webservice ging dit vlekkeloos. Als dit item echter niet aanwezig was gebeurde hier wat onverwachts. Ieder normaal systeem zou in dit geval een leeg resultaat terugsturen, ter informatie dat hier geen informatie voor aanwezig is. De ontwikkelaar van dit systeem had het briljante idee om in plaats daar van een HTTP fout code te hergebruiken. PowerCenter is echter niet flexibel genoeg dat je hem kan vertellen foutcodes te negeren. Dus op het moment dat een item niet gevonden werd en de webservice zijn foutcode terugstuurde, deed PowerCenter het enige wat PowerCenter kan doen. Hij knalt eruit op een technische fout en weigert verder te gaan.
Een uitgebreide ‘high-level’ meeting verder zijn we tot de beslissing gekomen dat de uitbater van de webservice dom bezig is geweest. Zij kunnen met liefde een wijziging doorvoeren in de webservice om een daadwerkelijk nuttige boodschap terug te sturen als iets niet gevonden kan worden. Verwacht levertijd: 6 maanden. Gelukkig heeft PowerCenter een wanhoop functie: custom Java componenten. Ik heb dus een stuk code mogen schrijven in Java om de webservice uit te lezen en niet te steigeren op deze specifieke foutmelding. Die vervolgens in PowerCenter kunnen hangen om toch nog onze taken uit te kunnen voeren.
Later zou ik realiseren dat dit de essentie is van IT werk. Er gaat altijd iets gebeuren wat je niet verwacht of wenst en jouw werk is een oplossing vinden om het probleem heen. Gelukkig word het vinden van oplossingen voor onmogelijke problemen erg gewaardeerd door beide werkgevers en klanten.

Fisher Price, my first (real) job

Goedendag,

Voor sommigen een voordeel en voor anderen een nadeel, maar het gevolg van je studie succesvol afronden is dat er van je verwacht wordt een baan te vinden. Zoals al in een eerder verhaal beschreven is dat als IT-er bijna niet eerlijk. Voordat ik mijn afstuderen geheel had afgerond had ik al een dozijn berichten in mijn inbox van LinkedIn met het verzoek voor een kennismakingsgesprek. Jammer genoeg waren dit allemaal grote bedrijven (a la Capgemini en Accenture) waar mijn angst om een ‘nummertje’ te worden in de ogen van de hoge heren er voor zorgde dat ik deze berichten negeerde of negatief beantwoordde.
Het leek er dus bijna op dat ik daadwerkelijk een vacature moest gaan zoeken, tot mijn moeder op een donderdag avond omhoog kwam lopen met de telefoon en deze aan mij gaf met de melding: ‘Ene Ivo-Paul aan de lijn’. Continue reading Fisher Price, my first (real) job

Afstuderen

Goedendag,

Het afstuderen, de belangrijkste opdracht van je studie, het meest intensieve, slopende en stressvol project van je schoolcarrière. 5 Maanden om een specifieke opdracht uit te voeren en aan te tonen dat jij een HBO diploma verdiend, dat jij kan functioneren in “het echte leven”. Zo begon onze coördinator zijn verhaaltje over het afstuderen. Maar zie eerst maar een bedrijf te vinden dat een opdracht heeft die je interessant lijkt, die voldoet aan de eisen die gesteld worden aan een afstudeeropdracht en die jou zou willen!

Gelukkig zit ik in de ICT en heb ik al regelmatig een vriend of vriendin uit een andere branche jaloers kunnen maken over het relatieve gemak waarmee ik een opdracht heb kunnen scoren. Mijn stage had ik geregeld (of eigenlijk laten regelen) via Studentenbureau en ik had dit bedrijf wederom ingeschakeld om een afstudeerstage voor mij te vinden. Echter een paar gesprekken later zonder resultaten waren voor mij voldoende reden om rond te kijken op de afstudeermarkt van de HRO. Hier kwam ik een jongedame tegen Continue reading Afstuderen

Just another WordPress site

L.S.,

Aangezien je een trouwe lezer bent is het je natuurlijk meteen opgevallen dat de website veranderd is. Na 7 jaar leek het mij tijd voor een kleine update.
In plaats van zelfs weer iets te ontwikkelen (volgens het motto: “beter goed gestolen dan slecht gemaakt”) heb ik gekozen om WordPress te installeren. Dit ging gelukkig met slechts een druk op de knop, wat mij prima bevalt. Mocht het allemaal niet zo lekker werken als ik zou willen heb ik nog een aantal andere knoppen die ik kan proberen.

Ik vraag me af of het weer 7 jaar gaat duren…

HBO informatica op de Hogeschool Rotterdam

Goedendag,

Als u mij kent of mijn CV hebt bekeken zult u al gezien hebben dat ik HBO informatica heb gestudeerd aan de Hogeschool Rotterdam. Na een lang beraad waar Leiden en Rotterdam aan elkaar afgewogen werden is het Rotterdam geworden o.a. vanwege gemak (redelijk dicht bij huis), gezelschap (een goede vriend ging ook naar Rotterdam) en het feit dat de informatica opleiding in Rotterdam al vele jaren bestaat, hierom verwacht je dan dat ze weten wat ze aan het doen zijn.

Echter dat viel niet altijd terug te vinden. Hoewel de lessen inhoudelijk van degelijke kwaliteit zijn (sommige iets meer dan anderen…) is de administratieve rompslomp hieromheen bijna bedroevend te noemen. Meer dan eens kwam het voor dat je rooster niet  klopte of in ieder geval niet overeen kwam met het rooster van de leraar (als je je rooster al had), cijfers invoeren/publiceren had geen haast (hoewel dit richting het einde wel steeds vlotter ging) en algehele indicaties van knulligheid (wel eens 50 leerlingen in een lokaal voor 30 mensen proberen te stoppen?). Continue reading HBO informatica op de Hogeschool Rotterdam

Doel van deze site

Goedendag,

Ik wilde van deze gelegenheid gebruik maken om even uit te leggen wat het doel is van deze site. Ik ben geen fan van sociale media (Facebook, Twitter, Hyves) dus het ligt totaal niet in mijn aard om mijn leven online te zetten. Echter realiseer ik me ook dat (potentiële) werkgevers hier wel veel aandacht aan schenken. Daarom heb ik besloten om dit domein niet alleen te gebruiken voor mailadressen, maar om ook daadwerkelijk nuttige informatie op te zetten.
Zo ben ik van plan om per (groot) project een korte samenvatting te geven van mijn activiteiten, mogelijk evaluaties schrijven over software waar ik mee werk en een algehele indruk te geven van waar ik mee bezig ben. Nu klinkt dit allemaal heel enthousiast en ik weet nu al dat in de toekomst hier grote vertragingen in gaan komen, maar aangezien ik de hoeveelheid actieve lezers in de buurt van “0” schat denk ik niet dat ik veel geklaag zal horen.
Mochten er vragen en of opmerkingen zijn betreft mijn activiteiten of het gebrek daarvan (of in ieder geval de documentatie) schroom dan alstublieft niet.

Met vriendelijke groet,

Steven de Jong

Hello world!

Goedendag,

Na enkele jaren is het eindelijk tijd om de lay-out van deze site aan te passen. In plaats van het geheel zelf (of met behulp van een vriend) te bouwen heb ik besloten om gebruik te maken van een van de vele opties die webdevelopers tegenwoordig hebben. Bij gebrek aan ervaring met deze activiteiten heb ik besloten om maar te proberen tot ik tegenkom wat me bevalt. Op het moment is dit WordPress.

Met vriendelijke groet,

Steven de Jong

Personal website of a BI and Data integration specialist