Titel sind nicht alles.
Aber es ist albern zu glauben, dass sie bedeutungslos sind.
Unter Softwareentwicklern (mich eingeschlossen, aber schon erreicht) gibt es eine ungesunde Besessenheit, das Senior-Level zu erreichen, aber es gibt einen guten Grund:
Am einen Ende des Spektrums der Entwicklerkarriere befindet sich der Nachwuchs.
Sie sind entbehrlich, reichlich vorhanden und brauchen viel Anleitung. Sie sind eine wichtige Investition und auch ein bisschen ein Glücksspiel.
Am anderen Ende des Spektrums befindet sich der Senior.
Sie können durch ihren Einfluss auf die Codebasis, das Team und die Prozesse über Erfolg oder Misserfolg Ihres Teams entscheiden. Ihr Gehalt kann doppelt so hoch sein wie das des Juniors.
Sie zerquetschen die wirklich harten Käfer.
Sie haben kostspielige Fehler gemacht und wissen, wie sie diese vermeiden können.
Ob Sie es glauben oder nicht, den größten Teil Ihrer Karriere als Entwickler wird auf der Führungsebene stattfinden. Dies ist ein Titel, den Sie meiner Meinung nach verfolgen sollten.
Leider machst du wahrscheinlich einen der Fehler, die ich gemacht habe, als ich um den begehrten Seniorentitel kämpfte.
Der neblige Weg zum Senior.
Der Übergang vom Junior- zum Mid-Level-Entwickler ist für die meisten Entwickler ein kleiner Schritt. Sie gehen vom Herumstolpern und kaum verstehen, wie sie als professioneller Entwickler beitragen können, zum Schreiben von Code über, der im Allgemeinen funktioniert. Sie lernen, wie sie Standardprozesse nutzen können, um ihren Code von ihrem Rechner in die Welt zu bringen.
Dies dauert in der Regel 1-2 Jahre.
Der Sprung von der mittleren Ebene zur Oberstufe ist viel weniger klar. Verschiedene Unternehmen haben unterschiedliche Richtlinien. Es gibt keine allgemeingültige Checkliste.
Irgendein Genie auf LinkedIn hat Ihnen gesagt, dass der Titel des Senior-Entwicklers sowieso keine Rolle spielt – schreiben Sie einfach Code aus Liebe zum Sport.
Guter Rat!
Nicht so, als ob Ihr Titel Ihr Gehalt, Ihren Bonus oder Ihren Karriereweg bestimmt.
Ich schwöre, manchmal frage ich mich, ob diese großen Köpfe jemals in einem echten Unternehmen gearbeitet haben.
Ohne einen klaren Pfad tappen die meisten Entwickler in die Codierungsfalle:
- Du verdoppelst deine aktuelle Programmiersprache, um ein „Experte“ zu werden
- Du fügst deinem Werkzeuggürtel weitere Werkzeuge hinzu, wie eine neue, beeindruckendere Programmiersprache (Rost irgendjemand?)
- Du bist besessen von der Codequalität und dem Schreiben von fehlerfreiem Code
- Du fragst dich, warum du noch nicht befördert wurdest
Plot Twist: Ich bin du.
Ich habe all diese Fehler gemacht und bin seitdem in mehreren Unternehmen als Senior tätig, obwohl ich selten der beste Programmierer in einem Team war.
Als Engineering Manager hatte ich das Privileg, Entwickler zu leitenden Entwicklern zu befördern, und die unangenehme Pflicht, den Entwicklern mitzuteilen, warum sie NICHT befördert wurden.
Hier erfahren Sie, wie Sie Ihren Weg zum Senior Developer Schritt für Schritt verkürzen können.
Schritt 0: Seien Sie beim Programmieren gut
Lassen Sie uns das aus dem Weg räumen, bevor wir uns mit den weniger offensichtlichen Dingen befassen.
Sie können nicht einfach ein sympathischer, aber schrecklicher Programmierer sein und erwarten, befördert zu werden (aber ich habe es gesehen).
Der beste Weg, um besser im Programmieren zu werden, besteht darin:
- Schreiben Sie eine Menge schlechten Codes
- Lesen Sie guten Code und stehlen Sie, was Sinn macht (nein, nicht durch Kopieren und Einfügen, sondern durch „Stehlen“ der Muster und Stile besserer Programmierer)
- Lesen Sie Bücher über gängige Entwurfsmuster in Ihrer Programmiersprache und wenden Sie sie auf Ihre Arbeit an.
- Suchen Sie nach Entwurfsmustern für das Framework, das Sie verwenden. Wenn Sie beispielsweise ReactJS verwenden (denn natürlich tun Sie das), suchen Sie nach beliebten Methoden, um Komponenten zu erstellen, Daten abzurufen und große Apps zu erstellen.
Die traurige Realität ist, dass viele Entwickler es nie über Schritt 1 hinaus schaffen.
Tu das nicht.
Du bist besser als das.
Schritt 1: Hör auf, an dich selbst zu denken
Ich frage angehende Programmierer, warum sie Programmieren lernen wollen.
Diese Antwort höre ich oft:
„Ich arbeite sehr gerne alleine. Ich möchte Code schreiben, um von zu Hause aus zu arbeiten und nicht mit Menschen zu tun zu haben.“
Wer wird es ihm sagen?
Das Verfassen von Software ist ein Teamsport und die Verwaltung all der verschiedenen Änderungen von mehreren Entwicklern ist eine schwierige Aufgabe. Ein starkes Signal für eine gesunde Codebasis ist die Kohäsion:
Viele Autoren verwenden einen ähnlichen Stil zum Schreiben von Code.
Es fließt.
Umgekehrt ist eine Codebasis, der Muster fehlen, ein großes Problem:
Sicher, es funktioniert, aber was passiert, wenn ein Entwickler eine neue Funktion erstellen möchte? Welches Muster verwenden sie und warum? Stellen Sie sich vor, Sie arbeiten in einer Codebasis ohne klare Vorgehensweise. Jeder Entwickler erfindet im Grunde das Rad neu.
Als Junior Developer kümmerst du dich um einen kleinen Teil der Codebasis. Sie möchten nur, dass Ihr Code funktioniert.
Auf der mittleren Ebene erweitert sich Ihr Horizont und Sie können sogar Junioren bei ihrer Arbeit helfen. Ihr Code funktioniert nicht nur, sondern Sie überlegen auch, wie er sich in das Gesamtbild einfügt.
Senioren erstellen die Muster, die andere verwenden, um Code zu schreiben und schneller zu arbeiten. Sie sehen 3 verschiedene Versionen einer Funktion, die das Gleiche tut, und konsolidieren es. Sie scheren sich einen Dreck darum und erkennen, dass sich diese kleinen Verbesserungen auszahlen können.
Wenn es sich bei Ihrer Codebasis um ein Buch handelt, fühlt es sich so an, als wäre sie von derselben Person geschrieben worden? Versuchen Sie, diesem Idealzustand näher zu kommen.
Schritt 2: Lauf auf das Feuer zu
Es gibt eine universelle Erwartung an erfahrene Entwickler:
Sie zerquetschen hartnäckige Käfer.
Ich habe damit meine erste Beförderung bekommen. Ich habe hier sogar darüber geschrieben.
Wenn in Ihrem Team ein kritischer Vorfall passiert, wie z. B. ein Ausfall oder ein Tippfehler, den Ihr CEO während einer Demo für seine Freunde auf dem Golfplatz gefunden hat, möchte ich, dass Sie die Hand heben, um ihn zu untersuchen.
Sagen Sie nicht: „Ich werde es reparieren.“
„Untersuche.“
Informieren Sie das Team stündlich über Ihre Fortschritte in einfacher Sprache und seien Sie ehrlich.
Wenn du es tatsächlich reparierst, bist du ein Held.
Wenn Sie weitere Hilfe benötigen, erhalten Sie immer noch den „Halo-Effekt“, an der Lösung beteiligt zu sein. Denken Sie daran, dass dies ein Mannschaftssport ist.
Schritt 3: Weniger Code schreiben und schreibe mehr
Das Schreiben von Code für seinen Lebensunterhalt ist meistens nur Schreiben.
- Dokumentation
- E-Mails an den Typen aus dem Marketing, warum diese Animation auf der Landingpage mehr als eine Stunde dauern wird (er wird so sauer sein)
- Erstellen von Tickets für neue Funktionen mit den erforderlichen Anforderungen
- Kommentare in Ihrem Code, die einen geschäftlichen Kontext zu einem Codeausschnitt erläutern (z. B. wenn Sie Datumsangaben in ein seltsames Format für Benutzer in einem bestimmten Land konvertieren)
- Pull-Request-Beschreibungen, damit Ihre Teamkollegen wissen, wie sie ein komplexes Szenario testen können
Als Senior Developer möchten Sie Ihr Wissen skalieren. Der beste Weg, dies zu tun, besteht darin, aufzuschreiben, was Sie wissen, und es mit anderen zu teilen. So wie hier im Beitrag und in all den anderen Blog-Beiträgen.
Wenn Sie ein Feature erstellen, das eine neue Technologie verwendet, dokumentieren Sie es, damit andere wissen, wie sie damit arbeiten können.
Schreiben Sie Artikel wie diesen, damit andere Entwickler aus Ihren Fehlern lernen können.
Schreiben Sie nicht so peinliche LinkedIn-Posts über Dinge, die Sie interessant finden.
Schreibe, um deine Gedanken zu ordnen und Klarheit aus dem Durcheinander in deinem Kopf zu schaffen.
Ernst.
Wenn Sie lernen, wie man klar schreibt und technische Konzepte auf zugängliche Weise ausdrückt, wird dies Wunder für Ihre Karriere bewirken.
Ihr Unternehmen ist größer als Ihr Team von Nerds. Die meisten Entwickler wissen einfach nicht, wie sie Technologie in Begriffe aufschlüsseln können, die Normies verstehen können.
Glauben Sie mir, das ist eine Superkraft und es ist nicht einfach.
Der einzige Weg, besser zu werden, besteht darin, mit dem Schreiben zu beginnen. Legen Sie Ihren E-Mail-Entwurf in Chat GPT ab und fragen Sie es, wie Sie die Dinge prägnanter gestalten können.
Lesen Sie ein Buch wie „On Writing Well“ von William Zinsser, um zu erfahren, wie professionelle Schriftsteller gut schreiben.
Vielleicht muss ich es selbst noch einmal lesen.
Eine letzte Sache, die Ihnen nicht gefallen wird
Sie können all diese Dinge tun und werden absolut nicht befördert.
Wenn es kein Budget für eine Gehaltserhöhung gibt, hättest du die haarigsten Fehler zerquetschen, das Feature im Voraus liefern und die anderen Junioren in deinem Team betreuen können und trotzdem nicht diesen glänzenden Titel bekommen.
Tun Sie diese Dinge trotzdem.
Der Erfolg wird unvermeidlich sein. Zeitpläne können unvorhersehbar sein.
Denken Sie auch daran, dass „Senior“ der Titel ist, den Sie am längsten in Ihrer Karriere als Entwickler haben.
Für viele Softwareentwickler ist dies die letzte Station auf der Karriereleiter.
Daran ist nichts auszusetzen.
Also laufe vielleicht nicht in Richtung Senior. Joggen Sie stattdessen. Machen Sie Dinge kaputt, lernen Sie Dinge und genießen Sie die Fahrt. Die Jagd nach Titeln nur um ihrer selbst willen wird Sie nicht glücklicher machen.
Zumindest war es bei mir nicht so.
An einem bestimmten Punkt jagte ich Geld und Titeln hinterher, um ein Loch zu stopfen, das meine Unsicherheit vor langer Zeit gegraben hatte. Ich dachte, mehr Geld und Prestige könnten das vertuschen, aber die Grube wird nie gefüllt.
Bin ich da tief eingestiegen, nicht wahr?
Alles, was ich damit sagen will, ist, dass Titel zwar wichtig sind, aber sie sind kein Hinweis auf Ihren Wert als Person oder als professioneller Entwickler.
Holen Sie sich jetzt diesen Titel.
Ich drücke dir die Daumen.
Weiterer Beitrag: Der ultimative Guide zu Git