Die 5 Sünden der Developer

Die 5 Sünden der Developer

Wie kann es sein, dass ein junger, vielversprechender Developer mit einem umfassenden technischen Wissen und viel Erfahrung es nicht schafft die nächste Stufe der IT-Karriere zu erreichen? Stellt sich heraus, dass sich der Developer – abgesehen von Schwierigkeiten unabhängig vom Entwickler – selbst ein Hindernis auf dem Weg zu seiner Karriere werden kann. Junge Entwickler neigen dazu, gewisse berufliche Sünden zu begehen, die es unmöglich machen von diesem ungefähren Status „vielversprechender Developer“ zu einer fundierten Position überzugehen.

In der Musikindustrie kann man entweder ein Rockstar mit einer riesigen Masse von Fans oder ein Berufsmusiker sein, der einen Track nach dem anderen rauspumpen muss. Gleiches gilt für die IT - man kann ein großartiger Developer mit einer bekannten Marke oder ein Programmierer sein, der sich hinter seinen Schreibtisch hockt und nur langweilige und wenig herausfordernde Aufgaben erledigt.

Nach Schätzungen der Evans Data Corporation gibt es weltweit 5,5 Millionen Entwickler unter 30 Jahren. Natürlich ist es schwer vorherzusagen, wie viele von ihnen auch ambitionierte, aufstrebende Talente sind, aber eines ist sicher - nicht alle von ihnen werden die Spitze ihrer IT-Karriere erklimmen. Viele von ihnen werden ihre gewohnte Schiene fahren, und obwohl sie vielleicht mit Sicherheit immer einen Arbeitsplatz haben können, werden sie dennoch nicht ihre ideale Berufung finden. Aber „einfach irgendein Job“ ist sicherlich nicht der gleiche wie „der Traumjob“. Im Folgenden sind fünf Sünden, welche den Karriereflug eines aufstrebenden Entwicklers wahrscheinlich stoppen werden.

„Das habe ich immer schon so gemacht.“

Nichts bremst die Karriere eines Programmierers so sehr wie die fehlende persönliche Weiterentwicklung. Wir sind uns bewusst, dass es hier viele Guidelines und Pseudo-Leitfäden gibt, die voller Binsenweisheiten und Unsinn sind, aber einige von diesen Weisheiten sind auch sinnvoll: Investition in die Weiterentwicklung der Karriere und die Erweiterung des Wissens sind für jeden Developer absolut unerlässlich. IT ist eine sich sehr schnell verändernde Branche. Wer nicht aufpasst, wird zurückgelassen und vergessen. Jeden Tag werden neue Lösungen, Frameworks und Tools eingeführt. Und muss all diese neuen Dinge einfach kennen, wenn man ein großartiger Entwickler werden möchten. Viele sind sich dessen bewusst.

Bei einer Umfrage von Stack Overflow gaben Entwickler an, dass sie ihr Wissen über offizielle Dokumentation (82,2%), Informationen auf Stack Overflow (80%) und Büchern (56,3%) erlangen. Teilnahme an Kursen – online und offline – ist eine weitere beliebte Möglichkeit, das Wissen zu erweitern. Um die eigenen technischen Fähigkeiten effektiv zu verbessern, sollten man sich aller Wissenslücken bewusst sein. Und davon wird es einige geben, niemand ist allwissend. Sich mit neuen Sachen zu beschäftigen und gleichzeitig die eigenen Wissenslücken aufzufüllen, sind die zwei idealen Eckpunkte der persönlichen Weiterentwicklung.

„Social Skills? Was sind Social Skills?“

Die eigenen technischen Fähigkeiten zu verfeinern ist sehr wichtig, aber nicht alles. Leider gehen viele Programmierer davon aus, dass nur technisches Fachwissen erforderlich ist. Diese Einstellung bringt dich keinen Schritt weiter in der Developer-Karriere. Heutzutage achten immer mehr IT-Arbeitgeber auf die soziale Kompetenz der Programmierer. In vielen Artikeln wird die Bedeutung dieser Social Skills erläutert. Sie sind für jede Beförderung notwendig.

Eine von ISACA durchgeführte Studie belegt, dass nur durch die Kombination von technischen und sozialen Fähigkeiten Erfolg in der Karriere erzielt werden kann. Das Wichtigste ist, die Fähigkeit mit den anderen Personen im Team zu kommunizieren, die eigenen Ideen und Gedanken zu formulieren, richtiges Teamwork zu betreiben und das persönliche Wissen mit anderen zu teilen. Spezialisten für Berufsberatung beraten Arbeitgeber, auf Fähigkeiten wie optimistischen Ansatz, Zeitmanagement, Problemlösung, Arbeiten unter Druck oder Selbstvertrauen zu achten. Teamarbeit wird zu einem der wichtigsten Elemente der Arbeit in der IT. Deshalb suchen IT-Arbeitgeber Mitarbeiter, die nicht nur über hervorragende technische Kenntnisse verfügen, sondern auch die Fähigkeit haben, sich einem Team anzuschließen und darin zu arbeiten. Alle Zahnräder sollen schön ineinander greifen, nur dann läuft alles.

„Wozu eigentlich?“

Bereits im alten Rom schrieb Seneca einmal, wenn man nicht weiß, welchen Hafen man ansteuert, wird der Wind nie in die richtige Richtung wehen. Das gilt auch für eine Karriere in der Software Entwicklung. Selbst der vielversprechendste Entwickler wird seinen Horizont nicht erweitern, wenn er nicht weiß, was er denn überhaupt erreichen will.

Das ist eine der größten Sünden der Programmierer. Einfach nur „Nummer 1“ sein zu wollen ist nicht genug. Das sind nur idealistische Wünsche, keine konkreten Ziele. Developer müssen wissen, wo sie sich in einem Jahr, in drei Jahren, in zehn Jahren usw. sehen. Die beste Strategie besteht darin, Ihre Ziele im SMART System festzulegen. Sie sollten sein:

  • Specific - Das Ziel definieren.
  • Measurable - Es muss möglich sein, den Fortschritt zu messen.
  • Achievable - Das Ziel muss realistisch und erreichbar sein.
  • Relevant - Das Ziel muss für die Karriere wesentlich sein. Welches Ziel wird dazu beitragen, den nächsten Schritt zu erreichen?
  • Timely - Eine Frist für das Ziel festlegen.

Ziele können natürlich ganz verschieden sein, von der Erweiterung des Wissens über den Abschluss eines Schulungskurses, eine Beförderung oder eine Gehaltserhöhung bis hin zum Abschluss eines Projekts usw. Es motiviert unglaublich stark, wenn du genau weißt WAS und WANN du es erreichen willst.

„Ohne mich läuft hier gar nichts.“

Selbstvertrauen ist unabdingbar, aber es soll sich nicht zu Eitelkeit verzerren. Der Tag, an dem du glaubst unersetzlich zu sein, ist möglicherweise der letzte Tag deiner IT-Karriere. Es ist eine Falle, in die viele Developer mit ein paar Jahren Berufserfahrung geraten. Gute Entwickler sind am Jobmarkt heiß umkämpft, deswegen glaubt man schnell, unersetzlich zu sein. Aber es ist schwer, solch einen Mangel der Bescheidenheit als eine positive Eigenschaft darzustellen. In der Psychiatrie wird oft die Tendenz der Selbstüberschätzung mit einer paranoiden Persönlichkeit zugeschrieben. Öfters ist hier von dem Begriff „Illusion der Außergewöhnlichkeit“ die Rede.

Aber so weit brauchen wir in der Argumentation nicht gleich zu springen. Selbstüberschätzung kann zwei Konsequenzen haben: Einerseits wird niemand mit einem großköpfigen Entwickler arbeiten wollen. Andererseits kann diese fehlerhafte Auffassung negative Auswirkungen auf das eigene Wissen des Programmierers haben. Dr. Samuel R. Pavel von der Southern Illinois University führte eine faszinierende Studie zu diesem Thema durch. Er bat mehrere Schüler einen Test zu machen, zuvor mussten sie jedoch ein Formular ausfüllen, in dem ihre Fähigkeiten eingeschätzt wurden. Die Testergebnisse zeigten, dass jene Schüler, die ihre Fähigkeiten überschätzten, eine niedrigere Punktzahl erhielten als diejenigen, die ihre Fähigkeiten unterschätzten. Ein Programmierer, der in die Falle der mangelnden Bescheidenheit tappt, wird seine Fähigkeiten überschätzen und behaupten, dass das Unternehmen ohne ihn nicht überleben wird. Infolgedessen hat er eine Tendenz, seine Fähigkeiten nicht zu verbessern. Die Karriere endet damit, dass er durch einen Entwickler ersetzt wird, der sich seiner Grenzen bewusst ist und von anderen tatsächlich auch was lernen möchte.

„Schlafen kann man, wenn man tot ist.“

Work-Life-Balance ist ein Trendbegriff, aber in diesem Fall könnte man auch „Vermeidung von Workaholism“, „Aufrechterhaltung der Balance zwischen Privat- und Berufsleben“ usw. sprechen. Es geht um geistiges Gleichgewicht, Ruhe, einen Kompromiss zwischen Arbeit und Beruf Freizeit. Viele aufstrebende Programmierer haben mit diesen Problemen zu kämpfen. Diese Entwickler sind sehr ehrgeizig und betrachten Ruhe als unnötige Zeitverschwendung. Eine solche verbissene Einstellung kann nur eine Karriere zerstören. Früher oder später werden nie ruhende Developer ausbrennen. Laut einer Studie des Psychology Department der University of Berkley sind Burnout und Erschöpfung neben Zynismus und das Gefühl, ineffektiv zu sein, die größten Schwierigkeiten, mit denen wir bei der Arbeit konfrontiert sind. Glücklicherweise kann all dies vermieden werden, indem du dich stets an deine für dich passende Balance hältst. Der Begriff „Work-Life-Balance” taucht immer häufiger in Inseraten für Software-Engineers, Java-Entwickler, Web Applikation Developer oder Test/QA Engineers auf. Dennoch ist es die Pflicht eines jeden Programmierers, die Balance zwischen Arbeit und Privatleben für sich selbst zu halten. Du musst lernen, wie du deine eigenen Prioritäten festlegst, Arbeit von Freizeit trennst, dich ausruhst, einen aktiven Lifestyle pflegst und deine Tasks angemessen planst. Man würde es vielleicht nicht glauben, aber so etwas wirkt Wunder in der Karriere.

Ein ambitionierter Developer steht an der Tür zur Welt der wahren (Developer-)Größe. Es ist ein entscheidender Moment. Wird er die Gelegenheit am Schopf packen und eintreten, oder bleibt er an der Schwelle stehen und wird irgendwann von anderen verdrängt, die den Schritt wagen?