Was macht ein Data Scientist? Heike Wolters im Interview

Was macht ein Data Scientist? Heike Wolters im Interview
DevStory

Heike Wolters

Background

Wie bist du zum Programmieren gekommen?

Ich bin über statistische Programmierung zum Programmieren gekommen. Ich habe an der Uni promoviert und mit Python und R Daten analysiert. Programmieren hat mir bei meiner Promotion am meisten Spaß gemacht, also habe ich den Weg weiter verfolgt.

In welchem Alter hast du damit begonnen?

ca. 24. Also relativ spät und auch relativ unerwartet. Ich bin nicht der typische Nerd, der sich schon in der Kindheit mit Computern auseinandergesetzt hat. Computer und Programmieren war für mich früher eher etwas Mystisches, von dem ich keine Ahnung hatte, wie das eigentlich funktioniert.

Für welche Programmiersprache konntest du dich zuerst begeistern?

Python. Meine erste "Programmiersprache" 2011 war damals R. Aber alles war so unübersichtlich (es gab noch kein tidyverse und Co). Mir fehlten gute Einführungen in die Grundkonzepte. Also habe ich einen Kurs auf Coursera zu objektorientierter Programmierung in Python gemacht, um die grundlegenden Konzepte zu lernen. Bei dem Kurs musste ich jede Woche ein kleines Spiel entwickeln. Ich mochte die klare, verständliche Syntax und die gute Python Doku.

Dein DevJob

Worum geht es in deinem DevJob genau?

Im Prinzip vereint mein Job Mathe & Statistik, Programmieren und Produktentscheidungen. Wenn ich jetzt mit Buzzwords um mich werfe: Ich nutze Machine Learning und baue AIs. Buzzwords beseite, als Data Scientist arbeite ich mit großen Datenmengen: Wir verarbeiten und analysieren Daten, versuchen Muster zu erkennen und Vorhersagen zu treffen. Aktuell entwickle ich hauptsächlich an einem Recommender

System für Stellenanzeigen: Wir schlagen den Nutzern unserer Plattform Jobs vor, die zu ihrem Nutzerprofil passen. Wir beginnen mit einer Idee, wie man einen Algorithmus verbessern kann, machen dazu Analysen (z. B. in Python, Spark) um die Idee erstmal Offline zu testen, implementieren unsere Ideen dann in Scala, starten einen AB-Test und evaluieren die Ergebnisse. Am Ende entscheiden wir gemeinsam mit unserem Product Owner, ob unser Algorithmus gut für das Produkt ist und für alle unsere Nutzer angewendet wird, oder ob wir das besser lassen.

Was gefällt dir besonders gut an deinem DevJob? Welche Herausforderungen gibt es speziell in deinem DevJob?

Es wird nie langweilig. Jede Fragestellung ist anders, jede Aufgabe hat viele Wege, die zum Ziel führen. Man versucht zwar vorher herauszufinden, welche Wege am erfolgversprechendsten sind, aber man erkennt letztlich nur durch Tests, ob eine Idee gut war. Mit meiner Arbeit verbessere ich das Produkt und kann das sogar messen. Es motiviert mich sehr zu sehen, wenn meine Änderung unsere Nutzer glücklich macht.

Was sind deine bevorzugten Technologien?

Ich nutze viel Python zum Prototyping. Unsere Live-Systeme sind in Scala geschrieben. Workflows zum Datenbereitstellen mache ich mit Oozie und Spark.

Windows oder Mac?

Mac! Ganz klar Mac!

Welche Dev Projekte hast du außerhalb deiner Arbeit? Wie hältst du dich für deinen Job am Laufenden?

Im Bereich Data Science passiert wahnsinnig viel in kurzer Zeit. Ich lese Blogs (Medium, z. B. Towards Data Science), gehe zu Meet Ups und Konferenzen und stehe im engen Austausch mit anderen Data Scientisten. Außerdem habe ich meinen eigenen Blog und liebe es mich mit meinen eigenen Daten auseinander zu setzen. Z. B. habe ich meine alten Studivz Daten gecrawlt und Topic Models für Konversationen mit meinen Freunden erstellt.

Tipps für Anfänger

Wie beginnt man Programmieren und womit sollte man beginnen? Welche Skills sollte man für deinen Job mitbringen?

Ich bin Fan von Online Kursen. Sucht euch einen Kurs raus, bei dem ihr den Instruktor gut findet, lernt ein paar grundlegende Modelle und wie man sie programmiert. Wählt unbedingt einen Kurs mit Projekten und kämpft euch durch die Projekte durch. Bei diesen kleinen Projekte lernt man gezielt, welche Probleme auftauchen, ohne von ihnen überwältigt zu werden. Nach den Grundlagen ist es wichtig, dass ihr ein Gefühl für Daten und Analysen entwickelt. Es ist einfach, Modelle und Code irgendwie ans Laufen zu bekommen. Die Kunst liegt jedoch darin, die Daten gut aufzuarbeiten und sinnvolle Entscheidungen bezüglich der Algorithmen zu treffen. Dafür bietet es sich an, dass ihr euch eigene Projekte sucht. Z. B. auf kaggle.com findet ihr eine Vielzahl an Datensätzen zum spielen. Ihr werdet gerade beim Data Cleaning in viele Probleme rennen, die euch zu einem Data Scientist machen.Welche Skills man braucht? Wer Interesse hat, kann alles lernen! Aber an der Arbeit mit Zahlen sollte man Spaß haben. Kenntnisse von Matrizenrechnung und Vektoren sowie linearer Algebra sind auf jeden Fall hilfreich.

Welche Ausbildung ist deiner Meinung nach sinnvoll um deinen DevJob ausüben zu können.

Mittlerweile gibt es schon Ausbildungen und Studiengänge für Data Science. Generell hilft vermutlich ein mathematischer, Computer Science oder analytischer Hintergrund. Der Job ist vielseitig und jedes Problem ist anders. Daher hilft nur üben, üben und üben um Erfahrungen zusammen und die eigene Toolbox zu erweitern.

Dev Interview Info

Heike Wolters

Heike Wolters

Data Scientist

Technologien in diesem Artikel

Das könnte dich auch interessieren