Data engineer profiel
Onze klanten vragen ons steevast om professionals met een data engineer profiel. Dat is logisch want de wereld draait inmiddels al jaren op data als essentiële grondstof. Wat wij ook ervaren is dat die profielvraag vaak inhoudelijk drastisch verandert wanneer wij met de klant de verdiepingsslag maken om de aansluiting tussen de opdracht en de professional te optimaliseren.
Google maar eens op ‘profile of a data engineer’ en leg er eens drie over elkaar heen. Ik weet zeker dat je naast deze drie nog handen vol vormen, profielen en roldefinities vindt die ogenschijnlijk hout snijden.
Een selectie van de elementen die wij veel tegenkomen in de wenselijke skills set van deze professionals zijn:
- Realisatie en onderhoud van (cloud) database systemen
- Ontwerp en realisatie van geharde cloud data platforms
- Programmeren in talen zoals Python, R, Scala en SQL
- Ontwerpen van data warehousing oplossingen
- Toepassen van integratie en data pipeline tooling (ETL, ELT)
- Operationele doorvertaling van de oplossing van data scientists in MlOps
- Data voorbereiding (feature engineering) als uitgangspunt voor data scientists
- Realisatie van analyse en aggregatie pipelines in scenarios met streaming data
Daarnaast is het natuurlijk in het belang van alle stakeholders dat deze professional naast communicatief vaardig ook een teamspeler is.
Je merkt dat de breedte van het palet aan skills en competenties van dé data engineer als schaap met 5 poten, naast de blijvend groeiende schaarste in de markt, uitdagend is.
De impact van een data engineer
Naast de beperkte beschikbaarheid van die ‘alles in een’ data engineer, is het schalen van zijn of haar werk ook problematisch. We weten dat dit soort data engineers vaak binnen de grote verscheidenheid van data facetten wordt betrokken, op diverse lagen in de organisatie. Het is dus in de meeste gevallen niet praktisch al die kenmerken in één professional te vinden.
Daar bovenop heeft de professional altijd een achtergrond en of affiniteit in cloud infrastructuur, datavoortbrenging, datamodelering, development, data science, deployment of beheer en zo een intrinsieke motivatie hierin te excelleren. ‘Alles een beetje’ is daarmee onder aan de streep ‘alles net niet’. Hiermee blijft resultaat achter wat op zijn beurt resulteert in demotivatie van zowel de klant als de professional.
De verschillen in focus van een data engineer
In mijn werk als practice lead data platforming herken ik een viertal categorieën data engineers.
A. Infra en platforming
Deze data engineers zijn van origine meestal infra, networking en xaaS georiënteerde specialisten. Zij hebben op het vlak van cloud de expertise om de services van Azure, AWS en/of Google Cloud te selecteren te configureren voor gebruik en te integreren. Het resultaat van deze data engineer is voornamelijk te vinden in het vormgeven en realiseren van een stabiel data platform waarop essentiële datafuncties zoals bijvoorbeeld dataingestie, dataintegratie, datamanagement, dataopslag, datadeling en datavisualisatie veilig met elkaar integreren en samenwerken om zo de use cases bij onze klant technisch te realiseren.
B. Relationele data naar business waarde
Bij deze engineers vind je de, vanuit traditie bekende, SQL georiënteerde data skills. Zij zijn zeer bekend met het realiseren van workloads waarin data warehouses (denk aan Kimbal, Immon, DataVault gemodeleerde datastructuren) zijn gepositioneerd. Binnen de architecturen die ik vormgeef voor onze klanten blijven deze workloads nog steeds van primair belang voor organisaties. De tooling waar wij deze professionals op inzetten en trainen is al jaren cloud born. Denk hierbij aan Azure Synapse Analytics, Snowflake, Matillion, Fivetran, IICS, ADF, Azure Analysis Services, Databricks.
C. Big data naar business waarde
Deze engineers zijn vanuit de kern programmeur met data affiniteit. Zij beheersen talen zoals Python waarmee zij grote hoeveelheden gestructureerde en ongestructureerde data absorberen, verwerken (aggregatie, integratie, filtering, verrijking), opslaan, delen als functie en/of de resulaat-data delen. De data pipelines die zij creëren worden gezien als code en zo is DevOps voor hen gewoonte in de manier van werken. Wij zien dat deze professionals graag werken met Glue, Airflow, PySpark, en Kafka waarna hun werk bijvoorbeeld als functie in schaalbare containers wordt gepubliceerd en uitgevoerd.
D. Data science support
Deze professionals zijn zeer bekend met MlOps. Zij zijn gespecialiseerd in het productionaliseren van data science. Dit betekent dat zij nauw samenwerken met data scientists en ervoor zorgen dat zij zich op hun kerntaak kunnen focussen. Zo realiseren deze data engineers de feature sets, zorgen zij voor de aanwezigheid en vorm van de juiste data voor de use case, optimaliseren zij de manier waarop de use case wordt uitgewerkt en dragen zij zorg voor de stabiele publicatie van de artifacten van de data scientists.
Werkwijze Sogeti
Binnen Sogeti geloven wij sterk in de specialisatie over de as van de in deze blog beschreven categorisering van data engineering. Door die specialisatie sluiten wij beter aan op de behoefte van onze klant en op elkaar. Op die manier kunnen wij sneller die waarde leveren die in de project- of groeifase van onze klant nodig is. Of dit nu gaat om het opzetten van het raamwerk van een data platform op basis van ‘everything as code’, of dat het gaat om feature engineering voor modellen vanuit de behoefte van data scientists in een MlOps strategie. De synergie tussen de categorieën is daarnaast de meerwaarde waarin wij geloven om zo de snelste te zijn om gezamenlijk de 400m te overbruggen. Zo zorgen wij dat deze engineers elkaars behoeften en scope van expertise in het data vakgebied kennen. Juist die samenwerking en kennisdeling zorgt voor het resultaat waar onze klant naar zoekt.