Was macht eigentlich ein Java-Entwickler?

Agile Entwicklung mit Java Enterprise – Interview mit Dominik Jaeger

Java boomt. Die Programmiersprache wird in den unterschiedlichsten Lösungen bei Unternehmen aller Branchen eingesetzt. Java-Programmierer sind gefragte Experten, doch was machen sie eigentlich konkret?

Wir sprechen mit Dominik Jaeger, einem Full-Stack Entwickler im Bereich Java Enterprise Entwicklung. Er arbeitet seit 2019 bei DATAGROUP in Mainz als Entwickler an einem Projekt für den öffentlichen Dienst.

Wie sieht ein typischer Tag für dich aus?

Als erstes hole ich mir einen Kaffee und öffne dann alles, was ich für meinen Arbeitsalltag brauche: E-Mail-Programm, den projektspezifischen Chat, Docker, GitLab, Confluence, Jira und die Entwicklungsumgebung. Zunächst überprüfe ich, welche Neuigkeiten es zu dem Projekt gibt, an dem ich aktuell arbeite, also ob es neue Features gibt, Tickets aktualisiert wurden oder eventuell Bugs aufgetreten sind. Wenn ich auf dem aktuellen Stand bin, geht es konkret mit der Entwicklung los. Es arbeiten viele Entwickler gleichzeitig an einem Projekt, deshalb lade ich mir immer die neueste Version der Branches aus dem Repository. Dann starte ich die lokalen Server aus der Entwicklungsumgebung und bin bereit, loszulegen.

Wenn ich am Vortag an etwas gearbeitet habe, das noch nicht fertig war, mache ich genau da weiter wo ich aufgehört habe. Es ist oft hilfreich, am nächsten Morgen mit einem „frischen Auge“ auf den Code zu schauen. Bin ich bereit für etwas Neues, schaue ich, welche Tickets noch offen sind, denn ein Projekt wird in viele kleine Pakete heruntergebrochen. Dabei ist es wichtig, die Anforderungen genau zu kennen und die Einordnung des eigenen Teils in das große Ganze im Hinterkopf zu behalten. Diese Anforderungen setze ich dann in der Programmiersprache Java mit den entsprechenden Tools um. Ist mein Teil der Aufgabe umgesetzt, kommt er in einen Reviewprozess, wo das Programmfeature auf Herz und Nieren gepüft wird.

Wie sieht so ein Review aus?

Zunächst teste ich die Funktionalität selbst. Dann gibt es ein fachliches Review, bei dem die Umsetzung dem Product Owner gezeigt wird. Fällt hierbei etwas auf, was noch nicht passt, kann es direkt verbessert werden.

Anschließend kommt der Code in das technische Review. Ich öffne GitLab, erstelle einen Merge Request (Zusammenführung meines Features mit dem großen Ganzen) und stelle das Ticket, das ich bearbeite auf „To Review“. Ein anderer Entwickler kann sich dann dieses Ticket nehmen und alles prüfen. Dieser schaut sich dann den Code im Detail an und evaluiert, ob es Fehler oder Verbesserungsmöglichkeiten gibt. Dieses Vier Augen Prinzip ist wichtig, um zum Beispiel Logikfehler zu finden.

Ist das technische Review abgeschlossen, wird das Feature nochmal fachlich im Kontext der Anwendung getestet. Und erst, wenn diese ganze Kette durchlaufen wurde, gilt das Feature als umgesetzt und man kann sich dem nächsten zuwenden.

Welche Fähigkeiten sollte ein Java-Entwickler mitbringen?

Man sollte komplexe Konstrukte erfassen und in kleinere Teilaspekte runterbrechen können. Außerdem ist Kreativität wichtig, um die Aufgaben umzusetzen. Man bekommt nicht alles vorgekaut, sondern sollte sich zum Beispiel folgende Gedanken machen: Wie ist das Datenbankmodell, wie sieht das Frontend aus, wie optimiert man die Performance? Man überlegt auch designtechnisch und architektonisch.

Teilweise spielt auch Konzeption eine Rolle, wenn man zum Beispiel eine diffuse Anforderung hat, die noch detaillierter spezifiziert werden muss.

Wichtig ist auch die Kommunikation im Team und zum Kunden. Wenn man Annahmen trifft anstatt nachzufragen, kann man schnell falsch liegen. Deshalb ist es wichtig, dass jeder weiß, was die Rolle des anderen ist und was die Anforderungen der einzelnen sind.

Wie war dein Werdegang zum Softwareentwickler? Wie wird man Java-Entwickler?

Ich habe Medientechnik studiert, also einen Ingenieurstudiengang mit viel Elektrotechnik. Darauf aufbauend habe ich einen Master in Media & Communications Technology gemacht. Während meiner Thesen habe ich in Firmen gearbeitet, bei denen ich kleinere und größere Anwendungen in Java entwickelt habe und das hat mir sehr viel Spaß gemacht. Mein Studium hatte allerdings einen relativ geringen Informatikanteil.

Ich wollte aber auch kein drittes Studium draufsetzen, um Entwickler zu werden, also habe ich gedacht, ich mache eine Ausbildung zum Fachinformatiker für Anwendungsentwicklung. Als ich mich bei DATAGROUP beworben habe, wurde mir der Vorschlag gemacht, dass ich mit meinen Vorkenntnissen perfekt zur Java Akademie passen würde. Ich habe also keine dreijährige Ausbildung machen müssen, sondern habe in der Akademie einen Java Intensivkurs von ungefähr 3 Monaten durchlaufen, der sehr praxisorientiert war. Seitdem bin ich direkt als Entwickler im Projekt tätig, wo ich das gelernte intensiv anwenden kann.

Was würdest du jemanden mitgeben, der sich für Java Entwicklung interessiert?

Es ist ein sehr vielfältiger Job und von Projekt zu Projekt unterschiedlich. Das macht es spannend. Man kann kreativ sein und hat viel Eigenverantwortung, weil man selbst entscheidet, wie man etwas gestalten und umsetzen will – innerhalb der Richtlinien und im Team natürlich. Und die Teamarbeit ist auch toll, da man mit vielen Leuten zusammenarbeitet und sich intensiv austauschen kann. Es ist ein toller Job, der viel Spaß macht.

Java-Entwicklung interessiert Sie? Sie möchten an vielfältigen Projekten mitarbeiten? Dann schauen Sie doch einmal in unsere aktuellen Stellenanzeigen.

Dominik Jaeger
Entwickler
Absolvent Java Akademie