Scrum erfordert Kommunikation und Wissen teilen

Was Softwareentwickler können müssen

03.11.2016 von Ender Özgür
Die Softwareentwicklung von heute mit ihren agilen Methoden wie Scrum lässt keinen Raum für Egoisten. Teamfähigkeit, Selbstkritik und die Bereitschaft zum ständigen Lernen und Teilen sind unter anderem Skills, die ein Developer mitbringen muss. Um solche Entwickler reißen sich die Unternehmen.
  • Hilfe anzubieten oder einzufordern ist ein wesentliches Merkmal eines Entwicklers.
  • IT-Spezialisten müssen sich in Kunden hineinversetzen und Alternativen aufzeigen können.
  • Wer in der Programmierelite mitspielen möchte, muss sich ständig weiterbilden.

IT-Profis gesucht! Die Zeiten sind vorbei, als Programmierjobs noch belächelt wurden, denn gut ausgebildete Fachkräfte sind die Hoffnungsträger unserer Wirtschaft. Sowohl große als auch kleine Unternehmen wie die Berliner IT-Firma Neofonie mit ihren 180 Entwicklern ringen um IT-Experten aus aller Welt.

Der Dekra Arbeitsmarkt-Report 2016 ermittelte, dass Absolventen eines IT-Studiums mitunter die besten Jobchancen haben. Aber die vielen ausgeschriebenen Stellen deuten weiter auf einen Engpass in der Branche hin. Der Grund: Grundvoraussetzung für einen IT-Beruf ist meist ein Studium mit dem Schwerpunkt Informatik. Doch das sollte Quereinsteiger nicht abschrecken, denn letztendlich entscheidet das Gesamtpaket aus technischem Know-how, Erfahrung und Soft Skills. Ob abgeschlossenes Studium oder Quereinstieg - die folgenden Must-Have-Skills verhelfen Softwareentwicklern dazu, ihr Talent bestmöglich zu nutzen.

Was Softwareentwickler 2016 verdienen
Was Softwareentwickler 2016 verdienen, ...
... hängt nicht nur von Qualifikation und Berufserfahrung ab. Entscheidend ist auch, in welcher Branche er arbeitet und in welcher Region der Arbeitgeber angesiedelt ist. Das ergab eine aktuelle Gehaltsanalyse von Compensation Partner.
... verdienen Softwareentwickler durchschnittlich in Deutschland.
Damit liegen sie über den Systemadministratoren, aber unter den Beratern.
In Banken verdienen Entwickler ...
... gut 68.700 Euro pro Jahr. Das ist, verglichen mit anderen Branchen, am meisten.
In der Medizintechnik ...
... verdienen Entwickler rund 64.400 Euro jährlich.
Gut 63.000 Euro ...
... erhält ein Softwareentwickler in der Telekommunikationsbranche.
In der Druck-, Papier- und Verpackungsbranche ...
... bekommt der Entwickler hingegen nur etwa 48.700 Euro jährliches Salär.
Mit 47.700 Euro ...
... kann ein Entwickler im Einzelhandel rechnen.
In der Werbung und PR ...
... verdient der Entwickler im Branchenvergleich am wenigsten: Mit rund 47.600 Euro bekommt er hier gut 21.000 Euro weniger pro Jahr.
... verdient der Softwareentwickler mit Personalverantwortung.
Leitende Entwickler können damit durchschnittlich rund 40.000 Euro jährlich mehr verdienen, als ihre Kollegen ohne Personalverantwortung.
... erhalten Softwareentwickler ...
... in mittelständischen Unternehmen mit 101 bis 1000 Mitarbeitern.
... erhalten dagegen Entwickler in großen Unternehmen ...
... mit mehr als 1000 Mitarbeitern.
... bekommt ein Softwareentwickler ...
... mit sechs bis neun Jahren Berufserfahrung. Berufseinsteiger beginnen mit etwa 43.600 Euro.
... verdient ein Entwickler ...
... der neun oder mehr Jahre Berufserfahrung vorweisen kann.
Der Verdienst ist auch vom Standort des Unternehmens abhängig.
In Hessen und seiner Hauptstadt Frankfurt a.M. verdienen Softwareentwickler am besten: Durchschnittlich 63.100 Euro pro Jahr.
Auch in Baden-Württemberg (hier im Bild Stuttgart) ...
... verdienen Softwareentwickler gut. Sie dürfen sich über 60.200 Euro jährlich freuen.
In Bayern und insbesondere der Hauptstadt München ...
... erhalten Entwickler jährlich gut 59.000 Euro.
In Thüringen mit seiner Hauptstadt Erfurt hingegen ...
... müssen sich Entwickler mit durchschnittlich 41.700 Euro zufrieden geben.
In Sachsen-Anhalt (Im Bild Magdeburg) ...
... verdienen Entwickler nur rund 41.000 Euro jährlich.
In Mecklenburg-Vorpommern mitn seiner Hauptstadt Schwerin ...
... erhalten Entwickler im deutschlandweiten Vergleich am wenigsten: Nur rund 39.000 Euro verdienen sie hier pro Jahr.

Auch in der IT ist Kommunikation das A und O

"Der Kollege hat ein Problem, wie kann ich helfen?" Oder: "Wollen wir uns das gemeinsam anschauen, zeig mal her?", diese Vorgehensweise ist Alexandra-Irina Nicolae, Projektmanagerin bei Neofonie, besonders wichtig. Gelerntes in der Praxis anzuwenden ist zwar das Ziel eines jeden Studiums, doch im beruflichen Umfeld stoßen Experten oft auf schier unlösbare Probleme. Informatiker sollten über die Stärke verfügen, nach Unterstützung zu fragen. Hilfe anzubieten oder einzufordern ist eines der wesentlichen Qualitätsmerkmale eines Entwicklers. Diese Stärke zeigt ein gesundes Selbstbewusstsein, das in der Branche verlangt wird.

Im Meeting müssen die Entwickler von Neofonie ihre Ideen, Konzepte und Probleme den Kollegen einfach erklären und zielführend über etwaige Lösungsansätze debattieren können.
Foto: Neofonie

Der IT-Profi von heute sollte Ideen, Konzepte und Probleme den Kollegen einfach erklären und zielführend über etwaige Lösungsansätze debattieren können, was auch in interdisziplinären Teams funktionieren muss. Karsten Rieger, Senior Frontend Developer von Neofonie, ist sich sicher: "Interdisziplinäre Fähigkeiten gewinnen immer mehr an Bedeutung. Ein Team, das aus hochgradigen Spezialisten besteht, die nicht über ihre Bereichsgrenzen blicken wollen, wird nie so effizient arbeiten können wie ein Team, das neben Spezialisten auch Mitglieder aufweist, die an den Schnittstellen mehrerer Domänen tätig sein können."

Neben Planungs- und Schätzungstreffen ist diese Kommunikationsfähigkeit vor allem bei agilen Projektmethoden wie Scrum essentiell. Ob Daily Standups oder Review und Meilensteinanalyse, das Team muss zu jeder Zeit über Problemstellungen und Status quo informiert sein. Im Anschluss evaluieren die Entwickler samt Scrum Manager gemeinsam eventuelle Lösungsstrategien.

Der Kunde ist König und will lösungsorientiertes Denken

Softwareprojekte können sich schneller als gedacht zu einem Spießrutenlauf entwickeln. Der Kunde reagiert während der Projektphase auf Veränderungen im Markt und fordert mitunter aufwendige Anpassungen in der Software. In solchen Situationen ablehnend zu reagieren, ist der falsche Weg. Vielmehr muss sich der IT-Spezialist in den Kunden hineinversetzen können und Alternativen aufzeigen, wenn es darum geht ein Softwareprodukt zu verbessern oder eventuelle Probleme zu beheben. Malte Cornils, Senior System Architect bei Neofonie, rät Entwicklern im Kundenkontakt, sich im Vorfeld folgende Fragen zu stellen und klar zu beantworten:

Dieses lösungsorientierte Denken zieht sich durch den gesamten Ablauf des Projekts, angefangen beim Pitch über die Konzeptphase bis hin zur Entwicklungsphase. Der Programmierer muss immer die Kundenwünsche beziehungsweise das Ziel des Kunden im Hinterkopf behalten. Zusätzlich muss er auch im direkten Kundenkontakt oder bei Support-Anfragen die Intention des Softwareprojekts verstanden haben.

Zuverlässigkeit und Termintreue sind ein Muss

Wie in allen Bereichen ist Zuverlässigkeit unabdingbar. Terminlich und qualitativ müssen Deadlines eingehalten werden, um die fristgerechte Fertigstellung des Endprodukts nicht zu gefährden. Mit abgelaufenen Fristen haben Entwicklerteams wie auch Auftraggeber gleichermaßen zu kämpfen. Um diese Bredouille zu vermeiden, ist gutes Teamwork und eine solide Kommunikationsbasis notwendig, die zahlreiche Tools für das Projektmanagement und Collaboration bieten.

Zuverlässigkeit spielt im Rahmen der Aufgabenplanung eine wesentliche Rolle. Auch an dieser Stelle wird dieser Eigenschaft bei agilen Methoden in der Softwareentwicklung eine immense Bedeutung zugewiesen. Sprints müssen eingehalten werden, um den pünktlichen Abschluss des Softwareprojektes sicherzustellen.

Bei agilen Methoden wie Scrum ist Zuverlässigkeit sehr wichtig.
Foto: Neofonie

Teamplayer statt Einzelkämpfer

Als geschlossenes Team aufzutreten ist wichtig. Fehler einzugestehen und Selbstkritik zu äußern sind kein Zeichen von Schwäche. Im Gegenteil: Die Fähigkeit der selbstkritischen Betrachtung sowie sich neue Verhaltensmuster anzueignen ist im IT-Sektor gefragter denn je. Es gibt nicht mehr einen Experten, sondern es gibt viele auch innerhalb eines Unternehmens. Mit anderen Worten: Es zählt der Zusammenhalt, die gegenseitige Unterstützung und nicht der Einzelkämpfer.

Zusätzlich hat die Clean-Code-Developer-Initiative Tugenden gesammelt, die ein teamorientierter Softwareentwickler auf alle Fälle an den Tag legen sollte. Teamplay fängt bei der Codesemantik an, da ist sich auch Christian Springsguth, System Architect von Neofonie, sicher: "Wichtig für einen Entwickler ist es, dass er mit dem Code eine Absicht ausdrücken kann. Der Code muss verraten, warum etwas getan wird. Das ist meist wichtiger als preiszugeben, wie etwas getan wird. Das ist eine Voraussetzung dafür, dass der Code auch von anderen verstanden und weiterentwickelt werden kann."

10 Dinge die Softwareentwickler austicken lassen
Produkt- & Projektmanager
Ganz generell schätzen es Entwickler nicht so besonders, wenn ihnen jemand erklären will, wie sie ihren Job zu machen haben. Weil Produkt- und Projektmanager aber oft Entwickler-Teams leiten, passiert genau das. Das kann zu Unstimmigkeiten führen. <br /><br /> Dazu hat auch David Fox von devRant eine Meinung: "Letztendlich ist es in den meisten Fällen so, dass Produkt- und Projektmanager in irgendeiner Art und Weise die 'Besitzer' von Projekten und Prozessen sind, ohne dabei die täglichen Herausforderungen und Probleme der Softwareentwickler zu kennen."
Chefs
Genau wie die Produkt- und Projektmanager sind auch Development oder Engineering Manager dafür zuständig, Teams von Entwicklern zu führen und sicherzustellen, dass Projekte rechtzeitig und unter Budget fertiggestellt werden. <br /><br /> "In einigen Unternehmen können Situationen entstehen, in denen der Chef gleichzeitig Mitglied des Entwicklerteams ist. Insbesondere wenn der Chef vorher selbst Entwickler war und nach einer Beförderung zum Chef wird, ist Konfliktpotenzial gegeben", merkt Fox an.
Recruiter
Softwareentwickler müssen gar nicht selbst aktiv nach einem Job suchen, um von Recruitern und Headhuntern belästigt zu werden - dem Fachkräftemangel sei Dank. Es dürfte sehr schwer sein, einen Developer zu finden, der noch nicht in die Fänge der Recruiter geraten ist. <br /><br /> David Fox sieht insbesondere die Hartnäckigkeit der Recruiter als Problem: "Sie rufen an, sie e-mailen und sie lassen Dich einfach nicht in Ruhe - selbst dann, wenn Du gar keinen Job suchst. Und selbst wenn man eine Anstellung sucht, neigen viele Recruiter dazu, irrelevante Jobangebote zu machen oder Stellen zu empfehlen, deren Profil überhaupt nicht passt - etwa einen Job am anderen Ende des Landes, obwohl man gar nicht bereit ist, umzuziehen."
Dokumentation
Gibt es keine Dokumentation, beschweren sich die Softwareentwickler. Wenn es zuviel ist, beschweren sie sich und wenn sie die Dokumentation selbst erledigen müssen, auch. Sogar über die Art und Weise, wie andere Leute die Dokumentationsaufgabe bewältigen, beschweren sich die Entwickler. <br /><br /> An dieser Stelle seien sich auch endlich einmal alle Entwickler einig, wie Fox betont: "Softwareentwickler wollen eine ausführliche, gut geschriebene und akkurate Dokumentation - aber selber machen wollen sie es nicht."
Meetings
Meetings sind nicht nur für alle anderen ein Problem, sondern auch für Softwareentwickler. Insbesondere dann, wenn es sich um völlig unnötige, zeitraubende und stinklangweilige Zusammenkünfte handelt. Wie Fox erzählt, sind inzwischen auch Devotionalien mit der Aufschrift 'I survived another meeting that should have been an email' erhältlich.
Coworking Spaces
Mit dem Aufstieg der Agilität sind flache Hierarchien, Collaboration und Teamwork zum Alltag in Unternehmen geworden - insbesondere für Software-Development-Teams. Gerade die können ihre Arbeit in einem Großraumbüro aber meist nur schwer oder gar nicht bewältigen - sagen zumindest die Zahlen von devRant. <br /><br /> David Fox erklärt: "Es gibt einfach zuviel Ablenkung: die Kollegen unterhalten sich, Meetings werden verpasst, Telefonanrufe überhört. Es gibt auch eine Vielzahl an Beschwerden über den Kaffee im Büro und andere Annehmlichkeiten - oder eben das Gegenteil davon."
Kollegen
Selbsterklärend: Jeder hat wohl einen Kollegen oder eine Kollegin, den beziehungsweise die er ganz besonders schätzt. Nicht. <br /><br /> Im Fall der Softwareentwickler ist die Abneigung gegenüber Kollegen meist entweder in der mangelnden Qualität ihrer Arbeit oder einem völlig aus dem Leim gegangenen Ego begründet, gibt David Fox preis.
Vorstellungsgespräche
Wenn ein Softwareentwickler auf Jobsuche ist und zum Bewerbungsgespräch geladen wird, gibt es danach meist auch etwas zu meckern: <br /><br /> "Dumme Fragen oder die Lösung von völlig praxisfernen Aufgaben im Bewerbungsgespräch stoßen den Developern ebenso sauer auf, wie ein Gesprächspartner, der überhaupt nicht weiß, was ein Entwickler eigentlich genau macht", so Fox.
Fehler & Bugs
Softwareentwickler haben tagein, tagaus mit Fehlern und Bugs zu tun. Deswegen glaubt devRant-Gründer Fox, dass Entwickler in dieser Sache anders ticken: <br /><br /> "Die meisten anderen Probleme erfahren keine positive Auflösung, aber Bugs und Fehler sind behebbar und das fühlt sich gut an."
Quality Assurance
Die Quality Assurance (QA) - oder Qualitätssicherung - ist ein kritischer Teil der Softwareentwicklung. Dennoch bemängeln Softwareentwickler an QA-Experten häufig dieselben Dinge wie an Produkt- und Projektmanagern, so Fox. <br /><br /> "Die Qualitätssicherung bekommt das Produkt oder Projekt in die Hände, wenn die Entwickler es abgeschlossen haben. Deswegen verstehen sie oft nicht, welche Hürden und Workarounds die Entwickler im Entstehungsprozess bewältigen mussten. Offensichtlich kommt es auch regelmäßig vor, dass QA-Leute die Entwickler bitten, Bereiche nochmals zu überarbeiten, die sie auch selbst bewältigen könnten."

Die Entwicklungsphase birgt teils große, negative Überraschungen, sodass Programmierer an ihre persönlichen Grenzen stoßen. An dieser Stelle ist Teamwork gefragt: "Einander helfen statt verzweifeln", lautet die Devise. Die entscheidenden Vorteile: Der Wissenstransfer stärkt das Know-how des Hilfesuchenden und festigt gleichzeitig das Wissen des Erklärenden, der auch von der Verbesserung der eigenen Kommunikationsfähigkeit profitiert.

Ein Entwickler lernt nie aus

Der griechische Philosoph Heraklit sagte einst: "Nichts ist so beständig, wie der Wandel." Das trifft auch für die Softwarebranche zu. Wer in der Programmierelite mitspielen möchte, muss sich ständig an den Marktanforderungen orientieren und weiterbilden, seien es Programmiersprachen, Frameworks, Web-Technologien oder Shop-Systeme. Auch Senior System Architect Cornils bestätigt das: "Offenheit zum Lernen ist ein Must Have, das einzelne Technologiekenntnisse schlägt."

Senior Frontend Developer Rieger plädiert sogar für den Mut zur Lücke. Es sei nicht nötig, alles bis ins Detail zu wissen. Vielmehr benötige man Offenheit und Neugier, um andere Disziplinen kennenzulernen. Und Rieger weiß aus eigener Erfahrung, dass neben der Kommunikation auch eine Prise Humor nicht schadet, um in der Hektik des Alltags nicht alles zu ernst zu nehmen, vorausgesetzt, man verliert das Gesamtbild der Produktanforderungen nicht aus den Augen und behält den Überblick. Wer diese Eigenschaften in sich vereinigt, ist seiner Meinung nach ein Topkandidat für eine Beschäftigung als Entwickler. Dementsprechend spielt auch beim Erlernen der Teamgedanke eine wesentliche Rolle.

Im gesamten Projektverlauf ist die Bereitschaft, neue Kenntnisse zu erlernen, von großer Bedeutung. Die Änderung von technischen und inhaltlichen Anforderungen bedingt, sich auf neue Situationen einzustellen. Insofern können, wenn das Softwareprojekt noch nicht zu weit fortgeschritten ist, dabei auch andere, neu zu erlernende Programmiersprachen zum Einsatz kommen. Prinzipiell haben viele Programmiersprachen einen ähnlichen Aufbau, wodurch die Einarbeitung bei entsprechenden Vorkenntnissen relativ schnell gelingt.

Plan ist Plan: Einsatzbereitschaft trifft Flexibilität

Unvorhergesehene Ereignisse sind alles andere als selten. Inhaltlich fehlerhafte Absprachen sowie unterschiedliche Interpretationen kennen Softwareteams nur zu gut. Besonders am Ende eines Projekts, ist die Nervosität beim Kunden oft groß und fallen aufgrund kurzfristiger Änderungswünsche Überstunden an. In dieser Hinsicht spielt die Qualitätssicherung eine große Rolle, bei der Entwicklerkollegen unterstützend Einsatzbereitschaft und Flexibilität entgegenbringen sollten.

Ob Entwicklungsphase, die Vorbereitung des Launch oder die finale Abgabe - auch in der IT-Branche ist schnelles, situationsbezogenes Handeln enorm wichtig. In derartigen Momenten gilt es Ruhe zu bewahren und gemeinsam, idealerweise im gesamten Team, weitere Vorgehensweisen zu beschließen.

Fazit

Ob Startup oder Konzern, Fachkräfte im IT-Bereich sind gefragt wie nie zuvor. Qualifizierte Informatiker müssen mittlerweile neben Enthusiasmus und Leidenschaft auch eine Reihe an Soft Skills mitbringen. Das Gesamtpaket aus sozialer Kompetenz und technologischen Know-how muss schlichtweg stimmen. Teamplayer statt Alleskönner, so lautet die Devise, denn IT-Experten mit dem gewissen Etwas gehört die Zukunft. (pg)