Jeffrey Slort
BI Developer

Werken bij All Your BI: De week van Jeffrey

BI-dev (1)

Hi! Mijn naam is Jeffrey en ik ben BI developer bij All Your BI .
Opgeleid als technische bedrijfskundige maar na de studie al snel de IT ingerold. In het begin heb ik mijzelf leren programmeren en nu een kleine 7 jaar ervaring heb opgebouwd in de bouw en beheer van diverse (BI) platformen.

Bij All Your BI werk ik op het snijvlak van Business en IT, voornamelijk aan de technische oplossingen om, op basis van data, versnelling te kunnen creëren voor onze klanten. Daarnaast werk ik ook aan een aantal producten die wij intern ontwikkelen.

Met deze blog post laat ik je zien hoe mijn werkweek eruitziet.

Maandag

Om een uurtje of half 8 klap ik mijn laptop open. Ik kom momenteel nog een keer per week op ons clubhuis (wij vinden het geen kantoor). Hier begroet ik vanaf de 11de etage de opkomende zon over de Rotterdamse haven, gepaard met een dubbele kop koffie. Ik kan je vertellen dat het een uitzicht is dat niet snel went. Om kwart voor 9 stap ik de dagelijkse daily van het team in, waar we bespreken wat iedereen die dag gaat doen.

De maandag start altijd met een snelle check naar onze monitoringsystemen. In het weekend hebben een drietal “event driven” Azure Logic Apps succesvol gelopen en de load op onze servers is zeer stabiel geweest. Een goed begin van de dag.

Halverwege de ochtend is het tijd voor een online kennismakingsgesprek met een nieuwe klant. Zij maken radioactieve hulpstoffen (met behulp van deeltjesversnellers) voor het opsporen van bijvoorbeeld kankercellen in patiënten. We krijgen een digitale rondleiding door middel van een presentatie, waarbij we één van deze deeltjesversnellers te zien krijgen. Het verbaast me soms aan wat voor een toffe projecten wij kunnen bijdragen. Met een BI Discovery traject gaan wij een Proof of Concept opleveren gebaseerd op Excel bronnen.

Ons Clubhuis op de Lloydstraat 210 in Rotterdam

Dinsdag

Vandaag duik ik in een complex probleem! Een klant wil de data vanuit hun boekhoudpakket toevoegen aan een al bestaande dataset. Er is slechts één minuscuul probleempje: het boekhoudpakket wordt gehost door hun IT-leverancier en wij kunnen geen directe toegang krijgen vanuit onze Azure omgeving.

Maar het wordt nog leuker: het boekhoudpakket blijkt op een zeer verouderde database te draaien waarvan de drivers om connectie te kunnen maken niet langer worden ondersteund. Als kers op de taart krijg ik te horen van de implementatie partner, die destijds de installatie van het pakket heeft verzorgd, dat het contactpersoon er inmiddels niet meer werkt. Dit wordt een bittere pil, maar we laten ons niet uit het veld slaan!

Tijdens de conference call met de implementatie partner lopen we samen door een aantal oplossingen heen. Direct de database van de applicatie benaderen is niet mogelijk. Ook is er geen API waarmee we de data uit het systeem kunnen halen. De opties worden zo wel beperkt. Al besprekend komen we op het idee geautomatiseerde CSV-exports te genereren en via SFTP op een gedeelde locatie te zetten. Bij een eerste test komen we erachter dat het niet mogelijk is een SFTP-verbinding op te zetten vanuit het netwerk van de applicatie. Het vereist soms best wat creativiteit om data van de ene plaats naar de andere plaats te krijgen. In de uiteindelijke oplossing krijgen wij de bestanden elke nacht versleuteld via de mail binnen en verwerken deze in het datawarehouse van de klant. Dit is verre weg van een ideale oplossing maar op deze manier hebben we de klant toch weer een stap verder kunnen helpen. 

Moe maar tevreden klap ik mijn laptop dicht.

Woensdag

Druk bezig om de feedback te verwerken van de Proof Of Concept brainstormsessie.

We breken de week doormidden met de oplevering van een Power BI Discovery voor de Gemeente Rotterdam. ’s Ochtends loop ik nog één keer door de presentatie heen, maak nog wat kleine aanpassingen en pak nog snel een kop koffie voordat ik de call start.

Voor het Proof Of Concept hebben we op basis van extracten van data uit twee verschillende systemen een gecombineerde dataset gemaakt om onder andere de Overall Equipment Effectiveness (OEE) van de door de klant beheerde assets te berekenen. In het dashboard dat we hierbij opleveren is het mogelijk om een diepere analyse te doen op de oorzaken van bijvoorbeeld de verminderde beschikbaarheid van deze assets. Hiermee kan ook een inzicht worden gegeven in de effectiviteit van het onderhoudsplan en de benodigde budgetten voor de komende jaren om het onderhoudsplan aan te scherpen.

Door mijn scherm te delen loods ik de klant door ons proces heen en geef een korte demonstratie van het eerste dashboard. Het blijft mooi hoe je ook met relatief weinig data alsnog waardevolle inzichten kan geven aan organisaties. Vanuit de demo belanden we gelijk in een brainstorm over wat er allemaal mogelijk is met de uitkomsten. Bijvoorbeeld welke inzichten nog meer mogelijk zijn als we meer bronnen toevoegen aan het datamodel. 

Tijdens sparringsessies met klanten zitten de energie- en enthousiasmelevels vaak hoog, er is zoveel mogelijk. Na de call ga ik dan ook direct aan de slag met het verwerken van de feedback en maak ik een begin aan het vervolgtraject op basis van de brainstormsessie.

Donderdag

Vandaag focus ik mij op één specifiek project, namelijk aan de ontwikkeling onze Datahub. We zijn bezig een hub te bouwen (we zoeken nog een goede naam) waarbij elke organisatie zijn systemen op kan aansluiten (voorlopig Exact Online, Afas, Salesforce & NMBRS) en binnen enkele seconden direct toegang heeft tot een groot aantal standaard rapportages in Power BI.

Maar eerst begin ik met een grote kop koffie. Daarna slinger ik mijn laptop aan en open mijn editor. Waar de vrolijke gekleurde stukjes abracadabra (lees: code) voor onze datahub op mijn scherm verschijnen.  Snel mijn koptelefoon erbij (de buren slapen nog!) en browse wat door de “Daily mixes” van Spotify. Kies op een beproefd volstrekt willekeurige manier de beste playlist uit en ik kan van start.

Op het programma staat het ontwikkelen van een koppeling voor Exact Online. Samen met het team heb ik de randvoorwaarden en het gewenste datamodel opgesteld. 

Het betreft een REST API met een OAUTH2 authenticatie laag. Al lezend door de documentatie verbaas ik me maar weer eens over de grote verschillen tussen vergelijkbare API’s van verschillende applicaties. Persoonlijk gebruik ik de “tracer bullet methode”, zoals Uncle Bob (Robert C. Martin) dit noemt, om een dergelijke koppeling te ontwikkelen. Op een (ouderwets) stuk papier maak ik een grove schets van de architectuur van de oplossing. Daarmee zet ik zo snel mogelijk het skelet van de applicatie op en al itererend kom ik zo tot het eindproduct. 

Een poging tot een donderdagmiddag smoothie 😉

Vrijdag

De vrijdag is altijd een speciale dag. Elke twee weken werken we samen aan een “All Your BI Lab”. Dit betreft interne projecten zoals de datahub waar ik gisteren bijvoorbeeld aan heb gewerkt. Deze week gaan we gezamenlijk aan de slag met een liquiditeitsprognose.

Vorige week heeft Jesse de dataset voorbereid zodat we een vliegende start kunnen maken. We vormen twee teams van 3 man sterk en voor we van start gaan vliegen er nog wat gepeperde opmerkingen over en weer. De wedstrijd is van start!

Ons team gaat de liquiditeit proberen te prognosticeren op basis van een X-aspecten. We breken de opdracht op in kleine stukken en gaan aan de slag. Allereerst komt het voorspellen van de inkomsten op basis van afgesloten contracten en de daarbij behorende gemiddelde betalingstermijn. Zodra we dit succesvol hebben geïmplementeerd voegen we ook voorspellingen op basis van de huidige salesfunnel toe. De tweede stap is het voorspellen van de uitgaven. Dit blijkt een lastigere opgave. De data is gebaseerd op de AFAS data van één van onze klanten. Deze klant is de afgelopen 3 jaar flink gegroeid en daarmee blijkt het voorspellen van uitgaven op een termijn korter dan een kwartaal een flinke uitdaging. 

Het tweede team gaat aan de slag met een rekenmodel dat door één van de CFO’s uit ons netwerk is gemaakt in Excel. Ze vertalen de berekeningen naar Power BI DAX code en voegen wat parameters toe voor het kiezen van verschillende scenario’s. 

Aan het einde van de middag presenteren we onze oplossingen aan elkaar. Tot mijn grote spijt moeten we toegeven dat de oplossing van team 2 vele malen accurater is dan onze oplossing. Je kan niet alles winnen.

Door middel van een call houden we de vrijdagmiddag er met het team ook in deze tijd in. Onder het genot van een biertje spreken we beide oplossingen nog door en bedenken al wat verbeteringen. Als we hierin nog wat tijd investeren kunnen we tot een algemeen model komen voor het maken van een liquiditeitsprognose. Een geslaagde Lab, we beslissen dit mee te nemen in onze backlog en het is tijd om de week af te sluiten.

Meer weten over dit project?

ayb4nov-513s
ayb4nov-513s

Jeffrey Slort

BI Developer