7 tödliche Karrierefehler, die Entwickler machen

Es gibt keinen Mangel an beruflichen Motivationssätzen rund um das Scheitern: Scheitern Sie schnell, Scheitern schafft Charakter, der Schlüssel zum Erfolg ist Scheitern, Fehler lassen Sie wachsen, haben Sie nie Angst, zu scheitern. Aber die Idee, sich den Weg an die Spitze der Softwareindustrie zu verwechseln, ist wahrscheinlich nicht stichhaltig. Jeder Entwickler hat einige Fehltritte in seiner Karriere, aber warum nicht aus den Erfahrungen anderer lernen - und die teuersten Fehler vermeiden?

Das haben wir getan: Wir haben mit einer Reihe von Technologieprofis gesprochen, die uns dabei geholfen haben, Bereiche zu identifizieren, in denen Fehler leicht vermieden werden können. Kein Wunder, dass der Schlüssel zu einer soliden Entwicklungskarriere in der Symmetrie liegt: Zum Beispiel nicht zu lange bei einem Stapel oder Job bleiben, aber nicht so oft die Sprache und den Arbeitgeber wechseln, dass Sie rote Fahnen setzen.

Hier sind einige der bemerkenswertesten Karrierefallen für Ingenieure - ein Minenfeld, das Sie leicht vermeiden können, wenn Sie durch einen sich ständig ändernden Technologiemarkt navigieren.

Fehler Nr. 1: Zu lange bleiben

Heutzutage ist es selten, dass man jahrzehntelang als Entwickler in einer Firma tätig ist. In vielerlei Hinsicht ist es ein Ehrenzeichen, das Ihre Bedeutung für das Unternehmen oder zumindest Ihre Fähigkeit zum Überleben und Gedeihen zeigt. Aber diejenigen, die eine Karriere in nur einem Unternehmen aufgebaut haben, befinden sich möglicherweise plötzlich am falschen Ende des Downsizing oder „Rightsizing“, je nachdem, welches Schlagwort zu dieser Zeit bevorzugt wurde.

Die Meinungen darüber, wie lange Sie an einem Ort bleiben sollten, gehen auseinander. Praveen Puri, ein Unternehmensberater, der 25 Jahre als Entwickler und Projektmanager tätig war, bevor er seine eigene Firma gründete, hat keine Angst, einige Zahlen zu verwerfen.

"Je länger Sie in einer Position bleiben, desto mehr stagnieren Ihre Fähigkeiten und Ihr Gehalt, und Sie werden sich langweilen und unruhig", sagt Puri. „Wenn Sie dagegen nach weniger als zwei Jahren mehrere Jobs wechseln, wird eine rote Fahne angezeigt. Nach meiner eigenen Erfahrung blieb ich zu lange bei einem Job, bei dem ich 14 Jahre lang gearbeitet habe - ich hätte nach sechs Jahren gehen sollen. Ich habe nach durchschnittlich vier Jahren andere Positionen verlassen, was wahrscheinlich ungefähr richtig ist. “

Michael Henderson, CTO von Talent Inc., sieht zwei Hauptnachteile darin, zu lange an einem Ort zu bleiben. "Erstens laufen Sie Gefahr, sich neuen Ansätzen und Techniken auszusetzen", sagt er. "Zweitens ist Ihr berufliches Netzwerk nicht so tiefgreifend oder vielfältig wie jemand, der Teams oder Unternehmen wechselt."

Sich zu sehr auf einen Stapel zu konzentrieren, der von Ihrem derzeitigen Arbeitgeber verwendet wird, ist natürlich gut für das Unternehmen, aber vielleicht nicht für Sie.

„Dies ist ein Vorteil für andere Arbeitgeber, die nach sehr speziellen Fähigkeiten suchen, und jedes Unternehmen ist anders“, sagt Mehul Amin, Director of Engineering bei Advanced Systems Concepts. „Dies kann jedoch Ihr Wachstum und Ihr Wissen in anderen Bereichen einschränken. Ein paar Monate bei jedem Job zu bleiben, ist natürlich kein guter Look für Ihren Lebenslauf, aber die Fluktuation der Mitarbeiter ist heutzutage ziemlich hoch, und die Arbeitgeber erwarten, dass sich jüngere Arbeitnehmer wie die jüngsten Hochschulabsolventen ein wenig bewegen, bevor sie langfristig in einem Unternehmen bleiben. “

Fehler Nr. 2: Jobspringen

Schauen wir uns die Kehrseite an: Bewegen Sie sich zu viel? Wenn dies ein Problem ist, fragen Sie sich möglicherweise, ob Sie wirklich das bekommen, was Sie von Ihrer Zeit in einem Unternehmen benötigen.

Charles Edge, Director Professional Services bei der Apple-Geräteverwaltungsfirma JAMF Software, sagt, dass Personalchefs möglicherweise zurückschrecken, wenn sie jemanden für eine lange Zeit suchen: „Umgekehrt, wenn eine Organisation Entwickler jährlich durchbrennt und einen Mitarbeiter mit Personaleinsatz anstellt 10 Jahre in einem Unternehmen zu sein, könnte eine herausfordernde kulturelle Passform darstellen. Ich verbringe viel Zeit damit, meine Mitarbeiter weiterzuentwickeln, deshalb möchte ich sie für lange Zeit bei mir haben. Das Wechseln von Jobs kann jedoch zu einer Vielzahl unterschiedlicher Techniken und Technologien führen. “

Wer zu schnell weitermacht, kann möglicherweise nicht den gesamten Lebenszyklus des Projekts sehen, warnt Ben Donohue, Vice President of Engineering bei MediaMath.

"Die Gefahr besteht darin, ein Söldner zu werden, eine gemietete Waffe, und man verpasst die Gelegenheit, ein Gefühl der Eigenverantwortung für ein Produkt zu bekommen und dauerhafte Beziehungen zu Menschen aufzubauen", sagt Donohue. „Egal wie talentiert und kompetent Sie als Technologe sind, Sie müssen immer noch in der Lage sein, Dinge aus der Perspektive eines Benutzers zu sehen, und es braucht Zeit, um die Benutzeranforderungen kennenzulernen, die Ihre Software anspricht und wie sie verwendet werden Ihr Produkt."

Hilary Craft, IT-Filialleiterin bei der Addison Group, macht deutlich: „Ständiges Job-Hopping kann als rote Fahne gesehen werden. Die Einstellung von Arbeitgebern basiert auf technischen Fähigkeiten, Zuverlässigkeit und meistens auf kultureller Passform. Stabilität und Projektabschluss ergänzen häufig diese Einstellungsbedürfnisse. Für Auftragnehmer ist es eine gute Regel, jedes Projekt abzuschließen, bevor sie zur nächsten Rolle wechseln. Einige Profis tendieren dazu, Geschäfte zu bewerten, um den höchstmöglichen Stundensatz zu erzielen, brennen jedoch Brücken, was sich auf lange Sicht nicht auszahlt. “

Fehler Nr. 3: Weitergabe einer Beförderung

Es gibt einen Punkt im Leben eines jeden Entwicklers, an dem Sie sich fragen: Ist es das? Wenn Sie mehr Spaß am Programmieren haben als an der Durchführung der Show, fragen Sie sich vielleicht, ob ein Verbleib Ihre Karriere behindern könnte.

"Der Wechsel ins Management sollte eine vorsichtige und nachdenkliche Entscheidung sein", sagt Henderson von Talent Inc. „Management ist eine berufliche Veränderung - nicht der logische Fortschritt des technischen Weges - und erfordert andere Fähigkeiten. Ich habe auch gesehen, dass viele Unternehmen gute technische Talente in das Management einbringen, weil das Unternehmen dies für eine Belohnung für den Mitarbeiter hält, aber es stellt sich als Fehler sowohl für den Manager als auch für das Unternehmen heraus. “

Lernen Sie Ihre eigene Arbeitsumgebung kennen, sagt Unternehmensberater Puri und fügt hinzu, dass es auf diese Frage keine einheitliche Antwort gibt.

"Ich habe an einigen Orten gearbeitet, an denen unglückliche Manager keine wirkliche Macht hatten, mit Papierkram und Besprechungen überlastet waren und Politik spielen mussten", sagt Puri. „In diesen Umgebungen ist es besser, in der Entwicklung zu bleiben. Langfristig würde ich jedem empfehlen, in das Management einzusteigen, da die Entwicklungskarrieren nach 20 Jahren ausfallen und Sie nicht viel mehr Vergütung erhalten. “

Eine andere Sichtweise könnte die Selbsterhaltung sein. Scott Willson, Produktmarketingdirektor bei Automic, stellt die Frage: „Wen werden sie an Ihre Stelle setzen? Wenn nicht Sie, können sie den inkompetentesten oder widerlichsten Mitarbeiter befördern, einfach weil der Verlust ihrer Produktivität aus den Gräben nicht so folgenreich ist wie der Verlust qualifizierterer Mitarbeiter. Manchmal können Sie - und Ihre Kollegen / Freunde - durch die Annahme einer Beförderung die Kontrolle über Ihr Arbeitsglück erlangen. Jeder sollte mindestens einmal in seiner Karriere im Management sein, um nur einen Einblick zu erhalten, warum und wie Management und Unternehmen arbeiten. “

Fehler Nr. 4: Nicht vorwärts zahlen

Ein weniger offensichtlicher Fehler könnte darin bestehen, sich zu sehr auf Ihre eigene Karriere zu konzentrieren, ohne die Nachwuchsentwickler in Ihrem Büro zu berücksichtigen. Diejenigen, die sich mit jungen Programmierern paaren, werden häufig angesprochen, wenn ein Team Führung braucht.

„Ich habe festgestellt, dass die Betreuung von Nachwuchsentwicklern mich in meinem Beruf besser gemacht hat, weil Sie jedes Fach durch Unterrichten tiefer lernen als mit einer anderen Methode“, sagt Willson von Automic. "Da Entwickler häufig mit zwischenmenschlichen Fähigkeiten zu kämpfen haben, bietet Mentoring großartige Möglichkeiten, die Fähigkeiten dieser Mitarbeiter aufzufrischen."

Wenn Erfahrung der beste Lehrer ist, wird das Unterrichten anderer Ihr Wissen nur vertiefen, sagt JAMF Software's Edge. Das heißt, er hält es nicht gegen einen vielbeschäftigten Entwickler, wenn es noch nicht passiert ist.

"Seien wir ehrlich - kein Entwicklungsteam hatte jemals genug Ressourcen, um das zu liefern, was das Produktmanagement von ihnen verlangt", sagt Edge. „Wenn leitende Entwickler nicht die Zeit haben, jüngere Entwickler zu betreuen, verstehe ich das voll und ganz. Sag nur nicht, dass es daran liegt, dass ich nicht gut mit Menschen umgehen kann. “

Fehler Nr. 5: Halten Sie sich an Ihren Stapel

Ihr Fachwissen in einem Stapel kann Sie für Ihren aktuellen Arbeitsplatz von unschätzbarem Wert machen - aber hilft es Ihrer Karriere? Kann es weh tun, sich zu sehr auf nur einen Stapel zu konzentrieren?

Donohue von MediaMath schlägt hier nicht zu: „Natürlich ist es so - es gibt keine moderne Software-Engineering-Rolle, in der Sie für die Dauer Ihrer Karriere nur eine Technologie verwenden. Wenn Sie einen Java-Entwickler nehmen, der seit 10 Jahren in Java arbeitet, und plötzlich mit der Arbeit an einer JavaScript-Anwendung beginnen, schreiben sie diese anders als jemand mit ähnlicher jahrelanger Erfahrung als Python-Entwickler. Jede Technologie, die Sie lernen, beeinflusst Ihre Entscheidungen. Einige würden argumentieren, dass dies keine gute Sache ist. Wenn Sie einen Java-objektorientierten Ansatz für eine lose typisierte Sprache wie JavaScript wählen, werden Sie versuchen, sie dazu zu bringen, Dinge zu tun, die sie nicht tun soll. “

Es kann Ihre Flugbahn verletzen, sich zu sehr auf einen Stapel zu konzentrieren, sagt Henderson von Talent Inc., aber vielleicht aus anderen Gründen als Sie denken.

"Jeder Stack wird eine andere Kultur und Perspektive haben, was letztendlich Ihr Karrierewachstum erweitern und beschleunigen wird", sagt Henderson. „Ich finde zum Beispiel, dass viele C # -Entwickler das Microsoft-Ökosystem nur kennen, wenn es eine weitaus größere Welt gibt. Java hat wohl das beste Ökosystem, und ich finde oft, dass Java-Entwickler die besten C # -Entwickler sind, weil sie eine breitere Perspektive haben. “

Willson von Automic sagt, dass Kompetenz - aber nicht Meisterschaft - mit einem Stack der Maßstab sein sollte, bevor man zu einem anderen übergeht.

"Es ist Zeit, weiterzumachen, wenn Sie gut in der Fähigkeit sind, aber nicht unbedingt großartig", sagt Willson. „Ich befürworte keine Mittelmäßigkeit, im Gegenteil. Ich sage, bevor Sie sich auf den Weg machen, um eine neue Fähigkeit zu erlernen, stellen Sie sicher, dass Sie gut, kompetent oder überdurchschnittlich gut in dieser Fähigkeit sind, bevor Sie überlegen, weiterzumachen. “

Schließlich bietet Henderson von Talent Inc. folgende Warnung: „Vermeiden Sie die Erwartungsfalle, dass jede neue Sprache einfach die alte mit einer anderen Syntax ist. Entwickler von C # und Java, die versuchen, JavaScript zu einem klassischen objektorientierten Ansatz zu zwingen, haben große Schmerzen verursacht. “

Fehler Nr. 6: Soft Skills vernachlässigen

Programmierer sind in der Regel weniger kontaktfreudig als beispielsweise Verkäufer. Kein Geheimnis da. Aber Soft Skills können im Laufe der Zeit erworben werden, und einige der Nuancen einer erfolgreichen Karriere - wie das Lernen von Mentoren und das Entwickeln von Beziehungen - können in Ihrer Karriere fehlen, bis es zu spät ist.

"Es sorgt für bessere Software, wenn Leute reden", sagt Donohue von MediaMath. „Soft Skills und Gespräche mit Kunden können auch ein gutes Gefühl des Mitgefühls vermitteln, das Ihre Bauweise verbessert. Sie beginnen darüber nachzudenken, was die Kunden wirklich brauchen, anstatt zu überarbeiten. “

Henderson von Talent Inc. sagt, dass Ihre Arbeit mit anderen Menschen ein entscheidender Teil für die Entwicklung einer erfolgreichen Entwicklerkarriere ist.

"Alle menschlichen Aktivitäten sind sozial und Entwicklung ist keine Ausnahme", sagt Henderson. „Ich habe einmal einen Austausch auf der Angular-Mailingliste gesehen, bei dem ein unerfahrener Entwickler Code mit Fragen gepostet hat. Innerhalb einer Stunde - und mithilfe von fünf Personen - verfügte er über einen soliden, idiomatischen Angular-Code, ein besseres Verständnis der Angular-Nuancen und Fallstricke sowie über mehrere neue Kontakte. Obwohl die Trolle manchmal dazu führen können, dass wir den Glauben verlieren, ist die Welt voller erstaunlicher Menschen, die sich gegenseitig helfen wollen. “

Willson von Automic sagt, ein Mangel an Soft Skills sei ein Karrierekiller. Wenn sich dann weniger kompetente Programmierer weiterentwickeln, fragen sich Entwickler, die nicht über die Fähigkeiten der Mitarbeiter verfügen oder diese einfach nicht ausüben, warum. Dennoch liebt jeder Chef, sagt er, "der Takt und kompetente Kommunikation demonstriert."

"Um Ihre Soft Skills zu verbessern, sind das Internet, E-Kurse, Freunde und Mentoren von unschätzbarem Wert, wenn ... Sie demütig sind und weiterhin trainierbar sind", sagt Willson. „Außerdem werden wir alle einen Punkt in unserer Karriere erreichen, an dem wir uns auf Beziehungen stützen müssen, um Hilfe zu erhalten. Wenn niemand bereit ist, in Ihrer Ecke zu stehen, haben Sie, nicht sie, ein Problem, und Sie müssen es angehen. In meiner Karriere habe ich trainierbare Menschen gegenüber uncoachable geschätzt, wenn ich schwierige Personalentscheidungen treffen musste. “

Die Programmierung ist nur ein Aspekt der Entwicklung, sagt Unternehmensberater Puri. „Der große Teil besteht darin, Geschäftsgruppen und -ideen zwischen Gruppen von Menschen mit unterschiedlichen technischen Fähigkeiten zu kommunizieren und zu verstehen. Ich habe zu viele IT-Mitarbeiter gesehen, die versuchen, im Gespräch mit dem Management zu viele technische Details zu kommunizieren. “

Fehler Nr. 7: Keine Karriere-Roadmap entwickelt

Das Entwickeln von Zielen und das Zurückkehren zu ihnen im Laufe der Zeit - oder umgekehrt das Entwickeln eines agilartigen, fließenden Ansatzes - haben beide ihre Befürworter.

„Ich entwickle weniger für Ziele und mehr für Systeme, mit denen ich mich schnell verbessern und Chancen nutzen kann, sobald sie sich ergeben“, sagt Henderson. „Trotzdem empfehle ich, eine Liste mit Erfahrungen und Fähigkeiten zu erstellen, die Sie erwerben und als Karte verwenden möchten, und diese mindestens einmal jährlich zu aktualisieren. Zu wissen, wo Sie waren, ist genauso nützlich wie zu wissen, wohin Sie wollen. “

Und natürlich vielleicht genauso wichtig - wohin Sie nicht wollen.

"Zu Beginn meiner Karriere hatte ich noch nicht gelernt, nein zu sagen", sagt Edge von JAMF Software. „Also stimmte ich einem Projektplan zu, der auf keinen Fall erfolgreich umgesetzt werden konnte. Und ich wusste, dass es nicht konnte. Wenn ich selbstbewusster gewesen wäre, hätte ich den Plan beeinflussen können, den eine Gruppe nichttechnischer Leute gemacht und meinem damaligen Arbeitgeber Zeit und Geld gespart hat, meinen Mitarbeitern erhebliche Schmerzen und letztendlich die Beziehung, die wir zum Kunden hatten. ”

Willson von Automic hält einen kurzen Vortrag direkt aus dem Spielbuch von Nick Saban, dem Cheffußballtrainer der Universität von Alabama, der predigt, Vertrauen in Ihren Prozess zu haben: „Der Fokus liegt darauf, einen Erfolgsprozess zu verfolgen und diesen Prozess als Maßstab zu verwenden, um sich selbst zur Rechenschaft zu ziehen . Um Ihren Prozess zu entwickeln, müssen Sie Mentoren finden, die das erhalten haben, was Sie erhalten möchten. Erfahren Sie, was sie getan haben und warum sie es getan haben, und personalisieren, optimieren und folgen Sie ihnen. “