Effizienz

Gute Programmierer nehmen keine Abkürzungen

Gute Programmierer nehmen keine Abkürzungen

Jeder weiß, dass der Softwaremarkt einer der heißesten überhaupt ist: Versprechen von großen Gehältern, Jobsicherheit und Wachstumschancen sind in unserem Feld ganz normal.

Das ist nichts Neues, und dieses Gerede hat längst die breite Öffentlichkeit erreicht. Das war im März 2020 das Cover eines brasilianischen Wirtschaftsmagazins:

„Sie sind Anfang zwanzig, sie suchen sich aus, wo sie arbeiten und für welches Gehalt. Um sie einzustellen, kaufen Firmen sogar ganze Startups. Ausbildungsschulen entstehen im ganzen Land, schon mit Warteliste. Willkommen in der fantastischen Welt der Softwareentwickler.“

Das Versprechen eines hohen Gehalts, ohne viel wissen zu müssen, sorgt dafür, dass sich viele Leute plötzlich für das Feld interessieren. Natürlich ist das eine übertriebene Aussage, das Ergebnis von Ausnahmefällen oder von Firmen mit unendlicher Investitionskasse zum Verbrennen, denen es egal ist, einen Markt anzuheizen, der sich auf lange Sicht nicht halten kann.

Es ist nicht schwer, Leute zu finden, die sich vorher nie für Programmieren interessiert haben und jetzt ein plötzliches Interesse haben, fast immer verknüpft mit irgendeinem unrealistischen oder verantwortungslosen Geldversprechen.

Wer predigt, dass Programmieren einfach ist, vergisst immer hinzuzufügen, dass das Ergebnis proportional zum Aufwand ist: Wenn du einen Schnellkurs machst, der nur daraus besteht, vor dem PC zu sitzen und nachzumachen, was der Trainer macht (so wie die meisten Kurse funktionieren), ist das Einzige, was du wirklich geworden bist, ein guter Code-Tippender, kein Programmierer. Und schon gar kein guter Programmierer. Vielleicht bist du sogar auf dem durchschnittlichen Wissensstand der Leute, mit denen du arbeiten wirst, aber täusch dich nicht, Durchschnitt und Mittelmaß sind Zwillinge.

Ich schreibe dir eine E-Mail, sobald es etwas Neues gibt. Kein Spam.

Vom Homeoffice ganz zu schweigen, das wegen der Pandemie eine gigantische Verbreitung fand, aber jetzt der Modus Operandi der meisten Techfirmen zu sein scheint. Denk aber nicht, dass das für immer so bleibt. Man kann bei einigen Big Techs bereits eine Gegenbewegung beobachten.

Ich bringe das Homeoffice ins Spiel, weil es mir enorm verantwortungslos erscheint, dass Firmen Stellen in dieser Form für Junioren oder sogar Praktikanten ausschreiben. Jemandem am Anfang der Karriere die Möglichkeit zu nehmen, häufiger und intensiver mit erfahreneren Leuten zu interagieren, die Chance zu nehmen, Bindungen zu Menschen aufzubauen, die sonst nicht in seinem Freundeskreis wären, ist dasselbe, wie ihm die Möglichkeit für schnelles und solides persönliches und berufliches Wachstum zu nehmen.

Leute am Anfang ihrer Karriere brauchen häufige Interaktion, Vorbilder zum Nacheifern und schnellen, praktischen Zugang zu erfahreneren Leuten. Das Homeoffice nimmt dir all das im Tausch gegen eine billige Bequemlichkeit. Wenn du ein Anfänger bist und eine Sache aus diesem Text mitnimmst, dann diese: Nimm diese Bequemlichkeit nicht in dein Leben, das Homeoffice ist der leichte Weg, und leichte Wege haben selten ein gutes Ende. Auch wenn du das jetzt nicht klar siehst, der berufliche Preis, den du zahlst, ist viel zu hoch.

Wenn man das alles bedenkt, dieses ganze Meer aus Versprechen und diese Erleichterungen, wird klar, warum viele auf den Trick reinfallen und sich entscheiden, eine Karriere als Programmierer zu verfolgen, auch ohne den Beruf zu mögen.

Und auf dem Arbeitsmarkt ist der Effekt davon auch gut spürbar: immer schlechter qualifizierte Leute, die immer mehr verlangen.

Wenn du dich bei alldem im Kopf trotzdem für die Technikbranche entscheidest, dann geh ganz rein. Gib dich nicht damit zufrieden, nur einer mehr in der Masse von Programmierern zu sein, die nur wissen, wie man Codeschnipsel von einer Stelle zur anderen kopiert. Streng dich an! Lern zu lernen. Bau und entwickle Tag für Tag Nebenprojekte, beschränk dich nicht auf deine Arbeitszeit, löse selbst Probleme aus der echten Welt. Auch die, die schon gelöst wurden, versuch es selbst. Sei kein Programmierer, der auf ein Framework oder eine Sprache spezialisiert ist, davon ist der Markt schon voll. Streng dich an, den Kern unseres Berufs zu lernen. Das, was solide ist und sich Jahrzehnt für Jahrzehnt nicht ändert. Hör auf, die äußeren Schichten zu umkreisen und dich nur auf die eine oder andere Technologie zu konzentrieren, die ändert sich jeden Tag. Jeden Tag taucht ein neues Framework auf, eine neue revolutionäre Technologie, und je früher du herausfindest, dass es nicht darauf ankommt, desto besser. Lern Algorithmen, Datenstrukturen, Entwurfsmuster. Und vor allem: üb. Jeden Tag. Üb, üb und üb noch mal. Gib dich nicht zufrieden, bis du auf ein Problem stößt, das du nicht lösen kannst, und feier, wenn du eins findest, in diesen Momenten der Frustration passiert das echte Lernen.

Lass auch nicht davon ab, gute Bücher zu lesen und guten Leuten zu folgen. Noch mal: Konzentrier dich nicht auf Bücher über Sprache A oder B. Oder Bücher über Framework X oder Y. Scheiß drauf! Lies die Großen unseres Feldes, lern von ihnen. Lies Clean Code, The Pragmatic Programmer oder Coders at Work. Such auf YouTube nach Inhalten dieser Autoren, wie den hervorragenden Vorträgen von Robert Martin, die ein kostenloser Schatz für alle sind.

Übrigens ist die erste Lektion im Buch The Pragmatic Programmer „Care About Your Craft“. Und es sagt: Why spend your life developing software unless you care about doing it well?

Also: Entscheide dich nur dann fürs Programmieren, wenn es darum geht, ein guter Programmierer zu sein. Andernfalls wähl einen anderen Beruf. Und fall nicht auf die Geschichtchen rein, ein echter Programmierer zu sein ist nicht einfach, nicht schnell und wird extrem viel schwerer, wenn du dich entscheidest, das allein zu machen (im Homeoffice). Wie in jedem Beruf gibt es keine Abkürzungen, entweder du gibst dich ganz oder du bist der Durchschnitt.

Ich schreibe dir eine E-Mail, sobald es etwas Neues gibt. Kein Spam.

Spamgeschützt.