Unternehmen, die in große datengetriebene Projekte investieren, müssen eine klare Vorstellung von den zugehörigen Rollen wie Data Engineer, Data Scientist und Data Analysts haben sowie gleichzeitig verstehen, wie sie sich voneinander unterscheiden. Auch wenn sich die Aufgaben dieser Rollen teilweise überschneiden, könnte es die Effizienz des Projektes ernsthaft beeinträchtigen, wenn eine Rolle als langfristige Vertretung für die andere arbeitet. Daher ist es hilfreich, sich ein besseres Bild davon zu machen, wofür die einzelnen Rollen gedacht sind und wo sie besser funktionieren.
Einer der einfachsten Vergleiche, der überall verwendet wird, ist das nachstehende Venn-Diagramm, das eine Vorstellung von den einzelnen Fachgebieten und deren Überschneidungen vermittelt. Data Engineer hat einen technischen Hintergrund, der eine Kombination aus Software-Engineering Kompetenz und statistischer Affinität repräsentiert. Der Data Analyst hingegen kommt aus dem Bereich der Unternehmenskommunikation und kennt sich mit Reporting-Tools aus, hat aber weniger Programmierkenntnisse. Data Scientist hingegen kombinieren mathematische und statistische Kenntnisse mit einem fundierten Geschäftsverständnis und ergänzen diese mit Programmier- und Big-Data-Technologien.
Obwohl wir alle drei Rollen vergleichen können, werden wir den Datenanalysten ausschließen, in erster Linie aus Gründen der Übersichtlichkeit und in zweiter Linie, weil der Datenanalyst am Ende einer Datenarchitektur steht und keine verwirrenden Überschneidungen wie die beiden anderen Rollen, d. h. Data Engineer und Data Scientist, aufweist. Das Ziel dieses Blogs ist auch kein tatsächlicher Vergleich, um zu sehen, wer besser zuschlagen kann, oder sie zu vergleichen, um ihre Bedeutung zu gewichten und zu sehen, wer ein besseres Geschwisterchen ist. Das Ziel ist vielmehr, ihre Kernkompetenzen zu verstehen und zu erklären, warum es eine schlechte Idee sein könnte, sie die Aufgaben des jeweils anderen übernehmen zu lassen.

Missverständnis über die beiden Rollen

Eines der häufigsten Probleme bei der Interpretation der Rollen ist das zuvor verwendete Venn-Diagramm. Obwohl es in Bezug auf die Überschneidung der Bereiche korrekt ist, bedeutet es nicht unbedingt, dass ein Data Scientist Pipelines wie ein Data Engineer aufbauen kann und ein Data Engineer in der Lage ist, statistisch gestützte Entscheidungen wie ein Data Scientist zu treffen. Es bedeutet nur, dass die andere Person es besser kann. Wo liegt also das Problem? Warum lässt man nicht den Älteren tun, was er mag, und den Jüngeren sich auf seine eigenen Fähigkeiten konzentrieren? Leider funktioniert das in einer Organisation nicht unbedingt so. Aufgrund der häufigen Überschneidungen und des Wissenstransfers und der Tatsache, dass sie die Aufgaben des anderen übernehmen können (aber nicht sollten), gibt es Fälle, in denen dies der Gesamteffizienz dauerhaft schadet.

Data Scientist

Die Rolle des Data Scientist, die als der attraktivster Job des 21. Jahrhunderts bezeichnet wird, ist für eine Person gedacht, die über statistische, programmiertechnische und mathematische Kenntnisse verfügt. Ihre Aufgabe ist es, fortschrittliche Analysen und maschinelle Lernmodelle zu erstellen. Sie müssen ein gutes Geschäftsverständnis haben und die Fähigkeit besitzen, komplexe Beobachtungen den Geschäftsinhabern zu vermitteln. Kurz gesagt, jemand, der sein profundes statistisches Wissen mit Programmierkenntnissen erweitert hat. Sie sind jedoch keine guten Programmierer (vergleichbar mit Software- oder Dateningenieuren) und nutzen die Programmierung nur als Werkzeug, um die riesigen Datenmengen zu verstehen.

Data Engineer

Das wertvollste Gut für einen Data Scientist sind saubere, leicht zugängliche Rohdaten oder kuratierte Daten. Das Data Engineering sorgt dafür, dass die vom Data Scientist verwendeten Daten korrekt und leicht zugänglich sind. Die Rolle erfordert die Entwicklung, Konstruktion, Prüfung und Wartung der Big-Data-Architektur. Sie haben Programmierkenntnisse und Fähigkeiten zur Systemerstellung und können Lösungen für Big-Data-Probleme anbieten.

Was könnte schiefgehen?

Wie bereits erwähnt, können beide die Aufgaben des jeweils anderen übernehmen, da es immer zu gewissen Überschneidungen kommt, wenn das Projekt dies erfordert. Ein Data Engineer kann Analysen durchführen, aber das ist nicht seine Kernkompetenz. Er wird nicht so schnell und genau sein wie ein Data Scientist. Data Engineers sind kluge Köpfe und können sich statistisches Wissen aneignen und sich zur Erstellung von Modellen für maschinelles Lernen hocharbeiten, aber das ist ein schrittweiser Lernprozess. Bis dahin wäre ein Data Scientist, der ML-Modelle erstellt, eine schnellere und praktikablere Option.
Das Hauptproblem ist jedoch, dass sie das Programmieren und die Erstellung von Pipelines aus der Not heraus gelernt haben, um die Big-Data-Analyse zu ergänzen. Sie sind an begrenzte Methoden gewöhnt und wählen daher möglicherweise nicht das richtige Tool für ihren Anwendungsfall. Natürlich können sie diese Fähigkeiten nach und nach perfektionieren, aber bis es soweit ist, rechtfertigen das Risiko und der ROI möglicherweise nicht die investierte Zeit und die Ressourcen.
Nehmen wir an, Sie verwenden ein falsches Tool und die falschen Ressourcen, um viele Pipeline-Läufe zu erstellen. Nehmen wir an, Apache Spark wird für eine “nicht so große Datenmenge” verwendet, die leicht von Snowflake hätte verwaltet werden können. Das Ergebnis ist ein 15-minütiger Lauf anstelle von 1 Minute. Stellen Sie sich nun die Wartezeit multipliziert mit 10 anderen Pipelines vor. Nun, wenn meine Testpipeline länger als 10 Minuten läuft, gehe ich normalerweise einen Kaffee trinken. Wenn ich das jetzt für 10 weitere Pipelines falsch mache, wird das teuer… in Bezug auf die gekauften Kaffees und natürlich auch in Bezug auf die genutzten Rechenressourcen.

Unsere Sicht

Beide Rollen sind gleichermaßen wichtig, wobei ein Data Scientist dazu beiträgt, Geschäftsentscheidungen zu verbessern, und ein Data Engineer sicherstellt, dass diese Entscheidungen auf den neuesten und qualitativ hochwertigsten Daten basieren. Die beiden Rollen haben ihre eigenen Kompetenzen, und wenn Unternehmen ihre Unterschiede verstehen, können sie das Beste aus Datenprojekten herausholen. Wichtig ist, dass das Verhältnis von Data Engineer zu Data Scientist immer größer als eins sein muss und je nach Größe der Komplexität zu entscheiden ist. Ich persönlich würde mich freuen, wenn im Rahmen der “Lessons Learned” wenigstens ein Manager aufhören würde, seinen Data Engineer zu bitten, einen KI-Algorithmus zu entwickeln, oder den Data Scientist zu fragen, warum die Datenqualität schlecht ist!
Damit ist auch schon Schluss und wie immer freue ich mich natürlich über euer Feedback, sei es per Direktnachricht auf LinkedIn, oder auch gerne im Rahmen eine Plausches über Teams.
Peter Schmäling

Tushar Poojary

Tushar Poojary ist Junior Solution Architect bei HUBSTER.S