Mit dem Auge des Adlers

Ein Tag im Leben eines Entwicklers

27.10.2011 von Alexandra Mesmer
Was macht ein Softwareentwickler den ganzen Tag? Wir haben Günther Reisner vom Münchner Systemhaus Pentasys acht Stunden lang über die Schulter geschaut.

9:00 Ein verregneter Montagmorgen, Notarzteinsatz am Münchner Marienplatz, U- und S-Bahnen fahren mit Verspätung. Günther Reisner kommt darum eine halbe Stunde später als gewohnt ins Büro. Er schlüpft gleich ins Besprechungszimmer, dort warten schon drei Kollegen auf ihn. In der nächsten Stunde gilt es, den Aufwand für ein neues Projekt zu schätzen. Ein Kunde will sein Lieferantenportal verschlanken, wie lange werden die Entwickler von Pentasys für die Umsetzung brauchen? Reisners Erfahrung ist gefragt, auch wenn sein Kollege Manuel Lilienberg das Projekt umsetzen wird.

Entwickler aus Leidenschaft: Günther Reisner mag es, komplexe Strukturen zu begreifen und zu entwerfen.
Foto: Friedrich Schanda/Pentasys

Seit über elf Jahren arbeitet Reisner als Entwickler, davon über neun Jahre im Java-Bereich, er kennt das Lieferantenportal aus früheren Projekten. Zusammen gehen Reisner, die Kollegen und die beiden verantwortlichen Führungskräfte Günter Wildner und Eckhard Bahle das Fachkonzept Punkt für Punkt durch. Bald steht hinter jedem Arbeitsschritt ein Zeitraum, angegeben in Manntagen, berechnet nach der PERT-Methode, die einen minimalen, mittleren und maximalen Zeitwert berücksichtigt. Wildner, der eine Java-Division leitet, ist zufrieden: "Eine valide Schätzung. Mit der Kennzahl kann unser Vertrieb dem Kunden ein kaufmännisches Angebot unterbreiten."

10:10 Günther Reisner fährt seinen Laptop hoch, öffnet seinen Mail-Account und wundert sich, dass dieser mit Mails zu den automatischen Softwaretests, die in der Regel nachts oder am Wochenende ablaufen, überflutet ist. Normalerweise bekommt er zwischen zehn und 20 Mails pro Tag, die er bearbeiten muss. Projektleiter Bertram Ufer winkt ab, die Test-Mails seien nicht das Problem, vielmehr brauche er Reisners Arbeitsbericht von Freitag. Was hat er gemacht, und wie lange hat er dafür gebraucht? Diese Informationen, täglich in das Planungs-Tool eingetragen, verschaffen allen den Überblick, wie sie im Projektplan stehen und ob sie ihn einhalten können. Letzteres ist nicht immer der Fall, räumt Reisner ein.

"Der Idealfall ist natürlich ein Projekt, in dem ich als Entwickler gemeinsam mit dem Kunden das Fachkonzept erarbeiten und ohne Reibungsverluste programmieren kann. Doch oft liegt das Fachkonzept bereits vor, und erst hinterher stellt sich heraus, dass vieles nicht so einfach in Code umzusetzen ist. Da ist viel Abstimmung nötig, vor allem, wenn nicht nur der Kunde, sondern weitere Dienstleister beteiligt sind." So wie in Reisners aktuellem Projekt: Für einen Kunden soll sein Team vier wichtige Applikationen, mit denen Kunden ihre Bestellungen konfigurieren können, auf eine neue Plattform transformieren. Während die Pentasys-Entwickler in den kommenden Monaten für die Transformation zuständig sind, kümmert sich ein zweiter Dienstleister um den Betrieb des Rechenzentrums. Morgen steht für Reisner zum Beispiel wieder die wöchentliche Telefonkonferenz mit dem zweiten Dienstleister an, in der technische Probleme im Vordergrund stehen.

Wo Entwickler am meisten verdienen
Die IT-Gehaltsstudie von CW und Personalmarkt 2010 deckt auf, in welchen Städten Programmierer am besten bezahlt werden.

...verdient ein Entwickler in Frankfurt am Main.
Damit kann er in dieser IT-Hochburg am meisten verdienen und zwar durchschnittlich 7.451 Euro im Jahr mehr als im Rest der Republik.



...erhält ein Softwareentwickler in Stuttgart.
Das entspricht 5.017 Euro über dem durchschnittlichen Gehalt eines Entwicklers in Deutschland.


...verdienen Entwickler in Hamburg
Das sind pro Jahr 3.229 Euro mehr als der durchschnittliche Entwickler in Deutschland.

...bekommen Programmierer in Hannover.
Das entspricht 2.881 Euro über dem durchschnittlichen Gehalt eines Softwareentwicklers in Deutschland.

...erhält ein Entwickler in Nürnberg.
In der Frankenmetropole können Softwareentwickler durchschnittlich verdienen.

(Foto: Fotolia.com/kai-creativ)
...verdienen Programmierer in Berlin.
Damit zahlen Unternehmen in der Hauptstadt nur unterdurchschnittlich.

....erhalten Entwickler in Dresden.
Das entspricht 7.053 Euro unter dem durchschnittlichen Gehalt eines Entwicklers in Deutschland.

Entwickler aus Leidenschaft

10:30 Reisner öffnet sein rotes Buch, in das er alles hineinschreibt, was er heute noch erledigen will. Ohne Stift und Papier wäre er aufgeschmissen. "Das mag für einen Softwareentwickler altmodisch anmuten", schmunzelt er, "aber auf Papier kann ich Skizzen malen und zum Beispiel in Schaubildern den Datenfluss aufzeigen oder Strukturen auf einen Blick erkennen."

Vorteil der Projektarbeit beim Kunden: "So bekomme ich Einblick in die unterschiedlichsten Anwendungen und Prozesse."
Foto: Friedrich Schanda/Pentasys

Komplexe Strukturen begreifen, durchdenken, verändern oder neu entwerfen gehört zu den Kernkompetenzen von Entwicklern. Je komplexer, desto reizvoller, findet Reisner, der am liebsten Applikationen entwickelt und dafür mit neuen Frameworks arbeitet. Im aktuellen Projekt hat er kaum neuen Code zu schreiben, da die Applikationen bestehen bleiben und sich nur die Plattform ändert. Dennoch muss Reisner manchmal tief in den Java-Code eintauchen, um etwa einen Fehler zu finden. Nach der Migration einer Datenbank suchte er zum Beispiel fast zwei Tage lang nach einem Bug, führte die betroffene Prozedur immer wieder aus, tauschte sich mit dem Kunden aus, um neue Fahndungswege zu finden. Erst als er den Fehler gefunden und korrigiert hatte, konnte er die Prozedur von der Developer- in die Integrationsumgebung einspielen. Hier kann Reisner überprüfen, ob sie auch im Zusammenspiel mit anderen Anwendungen funktioniert. Seine Änderungen am Code hält er gleich in der technischen Dokumentation fest, damit der Kunde weiß, was geändert wurde.

11:20 "Das ist doch alles Käse." Nach dem dritten Versuch, sich mit der produktiven Datenbank beim Kunden remote zu verbinden, gibt Reisner auf. Kein Zugriff für den externen Dienstleister, obwohl dieser versprochen war. Das Unvorhergesehene ist eine Konstante im Projektalltag, die aller Planung zum Trotz ein hohes Maß an Anpassungsfähigkeit und Bereitschaft zu Plan B oder C erfordert. Reisner bleibt nichts anderes übrig, als die geänderten Systeme "im Blindflug" zu testen und dann nächste Woche zum zweiten Dienstleister zu fahren, um von dort aus in die Datenbank zu gelangen. Ein neuer Aspekt in der "Offene-Punkte-Liste", in der Projektleiter Ufer und Reisner alle Probleme erfasst haben und die die Basis für das wöchentliche Treffen mit Kunden und zweitem Dienstleister bildet.

12:30 Reisner nimmt sich Jacke und Brotzeitbox und geht trotz des Nieselregens eine Runde spazieren. Die Mittagspause verbringt er gern an der frischen Luft, "das macht den Kopf wieder frei".

Glücksbringer: Das Marzipanschweinchen aus dem ersten Projekt hat Reisner elf Jahre und unzählige Projekte später noch.
Foto: Friedrich Schanda/Pentasys

14:00 Kollegin Irina, die gerade ein Fachkonzept für ein anderes Projekt erarbeitet, hat ein Problem, das sich auf Zuruf nicht lösen lässt. Günther Reisner schaut ihr über die Schulter und hilft. Im Lauf des Tages wird er immer wieder von den Kollegen gefragt. Nicht nur daran merkt man, dass er zu den erfahrenen Entwicklern gehört. Auch das Marzipanschweinchen neben seinem Bildschirm ist dafür ein Indikator: Einst der Glücksbringer für sein erstes Projekt, hat es im Lauf der Jahre unter der Celluphanfolie auch den letzten Schimmer seiner quietschrosa Farbe verloren.

14:22 Ein einziger falscher Buchstabe kann mitunter eine ganze Applikation zum Erliegen bringen. Als Softwareentwickler braucht Reisner den Blick eines Adlers. Das zeigt die nächste Stunde, in der er verschiedene Versionen von Dutzenden SQL- und Unix-Skripten vergleicht und aktualisiert. Sein Blick ruht auf dem Bildschirm, konzentriert scannt er Zeile um Zeile, pflegt schnell die Änderungen, oft nur ein Buchstabe, ein. Am Ende hält er die Anpassungen nicht nur in der technischen Dokumentation fest, sondern erstellt auch eine read.me-Datei mit Hinweisen, was vor der Übertragung der Skripte in die Produktivumgebung zu beachten ist.

Austausch mit Studenten

15:30 Diplomand Caspar kommt vorbei. Er ist einer von zwölf Studenten, die bei Pentasys ihre Abschlussarbeit schreiben. Das Systemhaus gibt das Thema vor und betreut den Studenten sechs Monate lang, was oft der Ausgangspunkt für den anschließenden Berufseinstieg ist. Auch Günther Reisner, der physikalische Technik studierte und seine Leidenschaft fürs Programmieren entdeckte, war einst Diplomand bei Pentasys und wurde damals von Vorstand Franz Wenzel betreut.

Entwickler gesucht

Projekt-Manager, Softwareentwickler und -architekten sucht Martin Lehnert das ganze Jahr über. Er leitet das Personal-Management des Münchner Systemhauses Pentasys, das 130 Mitarbeiter beschäftigt. "Eigentlich war es nie besonders einfach, Java-EE (Enterprise Edition)-Entwickler zu bekommen", sagt Lehnert. "Aber heute brauchen wir mehr Energie, um die passenden Leute zu finden." Zu Letzeren zählt Lehnert nicht unbedingt die Einser-Absolventen. Die Note ist nur ein Kriterium unter mehreren, viel entscheidender sei die Projekterfahrung, die auch schon ein Berufseinsteiger in Praktika oder Entwicklungsjobs erworben haben kann.

Um möglichst früh Bewerber auf Pentasys aufmerksam zu machen, betreuen Mitarbeiter wie Günther Reisner Abschlussarbeiten von Studenten. Das Thema gibt das Systemhaus vor, der Student setzt es im Unternehmen um und steigt dann oft nach dem Abschluss fest ein. Jedes Jahr werden auf diese Art etwa zwölf Abschlussarbeiten geschrieben.

Heute betreut Reisner selbst Studenten. Caspar, der sich in seiner Arbeit mit der Programmiersprache Scala befasst, ist etwas frustriert, die letzten drei Tage hat er auf der Stelle getreten. Die Entwicklungsumgebung Eclipse scheint in diesem Fall nicht die richtige zu sein. Zusammen beschließen sie, dass Caspar es mit Netbeans versuchen soll. Vom Austausch mit den Studenten profitiert auch der erfahrene Entwickler: "Die Studenten bearbeiten immer die neuesten Themen, so dass ich auch einen guten Einblick bekomme", sagt Reisner, der sich im Internet, mit Fachzeitschriften und internen Workshops weiterbildet.

Den Erfolg sichtbar machen: Ist eine Anwendung in die neue Plattform migriert, hängt Entwickler Reisner das Post-it um.
Foto: Friedrich Schanda/Pentasys

Allerdings ist er lange genug im Geschäft, um die Grenzen der Weiterbildung zu kennen: "Das Feld ist einfach zu groß, um überall am Ball zu bleiben." Technisches Wissen, belegt auch durch diverse Zertifizierungen, ist für den Entwickler und Softwarearchitekten nur die eine Seite der Medaille. Die andere sind die Soft Skills: Reisner hat nicht nur innerhalb von Pentasys schon Workshops und Vorträge gehalten, sondern auch beim Kunden. Und eine Fähigkeit, die man im Studium nicht ausbilden kann, ist in seinen Augen besonders wichtig im Projektalltag: "Im direkten Kundengeschäft muss man lernen, diplomatisch zu sein."

HTML5 Rocks!
Im Jahr 2010 ins Leben gerufen bietet die Seite Web-Designern und -Entwicklern zahlreiche Code-Beispiele, Demos, sowie Schritt-für-Schritt-Anleitungen zum Umgang mit fast allen HTML5-Features an.
Sproutcore
Sproutcore diente als solide Basis für das MobileMe-Angebot der Jobs-Company und hat sich unter Entwicklern in erster Linie aufgrund seiner Robustheit, Schnelligkeit und Skalierbarkeit einen Namen gemacht. Das Besondere an dem Framework besteht jedoch darin, dass die gesamte Business-Logik mit JavaScript umgesetzt und vollständig auf Client-Seite implementiert wird.
Adobe Edge
Mit "Adobe Edge” stellt der Multimedia-Riese ein neues Tool zur Animation und zum Interaktions-Design für Webseiten zur Verfügung, mit dem sich Flash-ähnliche Inhalte auf Basis von HTML5, JavaScript und CSS3 realisieren lassen.
HTML5 Boilerplate
Mit Cross-Browser-Normalisierung, eingebauten Performance-Optimierungen und erweiterten Features, zu denen etwa Cross-Domain-Ajax zählt, vereinfacht Boilerplate die Arbeit mit vielen Standard-Funktionen, die eigentlich gar nicht so leicht zu implementieren sind. Im Paket enthalten ist zudem eine .htaccess-Konfigurationsdatei, die vor allem für Anfänger sehr praktisch sein kann.
Modernizr
Bei Modernizr handelt es sich um eine quelloffene JavaScript-Library, mit der sich Darstellungsfehler von CSS3- und HTML5-Websites auf älteren Browsern verhindern lassen sollen.
Sencha Touch
"Sencha Touch" ist eins der populärsten Frameworks für die Erstellung plattformübergreifender Anwendungen für Smartphones. Es basiert vollständig auf HTML5, JavaScript und CSS3 und wartet mit einer einfachen Verwaltung für Touch-Ereignisse, sowie einer umfassenden UI-Bibliothek auf.
Jo HTML5 App Framework
Realisiert von David Balmer, Senior Software Engineer WebOS Developer Relations, ist das Jo Framework kompatibel mit vielen der wichtigsten Smartphone-Plattformen: iOS, Android, Chrome OS, Blackberry und WebOS. Wie der Anbieter erklärt, ist das Framework speziell für die Entwicklung von Apps konzipiert, also nicht für traditionelle Websites, und wartet mit wiederverwendbaren UI-Widgets und einfach zu implementierenden CSS3-Animationen.
Maqetta
Mit dem quelloffenen und Web-basierenden Web-Editor "Maqetta” lassen sich Benutzeroberflächen für Desktop- und Mobile-Anwendungen erstellen - auf Basis von HTML5, CSS3 und Ajax. Die Lösung wurde von IBM als Antwort zu Flash und Silverlight entwickelt - mit dem Ziel, die Defizite von Ajax-Umgebungen gegenüber diesen proprietären Lösungen auszugleichen.
Media Element Player
Wer schon heute die Möglichkeiten von HTML5-Video ausnutzen möchte, der kann auf den "Media Element Player” zurückgreifen. Dabei handelt es sich um eine kostenlose JavaScript-Bibliothek aus dem Open-Source-Bereich, die mithilfe von CSS und dem populären Framework "JQuery” einen universellen Video-Player implementiert.

Dass Reisner die meisten Projekte direkt beim Kunden vor Ort abwickelt, schätzt er sehr. "Dadurch bekomme ich einen guten Einblick in die unterschiedlichsten Anwendungen und Prozesse. Und je mehr man kennen lernt, um so mehr neue Ideen bekommt man."

17:00 Reisner packt zusammen. Acht Stunden sind genug für den Familienvater, der seine Kinder nicht nur zu Bett bringen möchte. Morgen wartet ein neuer Tag mit neuen Bugs. Ein Fall für den Entwickler mit dem geübten Auge und der Ruhe der Erfahrung.

Noch mehr Reportagen aus dem Berufsalltag: