Was ich als Senior Engineer gelernt habe (2021)
(luminousmen.substack.com)- Ein ehrlicher, im betrunkenen Zustand geschriebener Text eines Data Engineers mit 10 Jahren Erfahrung über Karriere, Technik, Kollegen und das Leben; ursprünglich auf Reddit r/ExperiencedDevs veröffentlicht und hier als Archivversion erhalten
- Wichtiger als der Tech-Stack selbst sind die 10–20 Kernprinzipien jedes Fachgebiets; der Stack ist nur ein Werkzeug, um diese leichter umzusetzen
- Der effektivste Weg für Karrierewachstum ist ein Jobwechsel; es gibt keinen Grund, in einem unbefriedigenden Job zu bleiben
- Guter Code ist Code, den auch ein Junior Engineer verstehen kann, und der beste Code ist gar kein Code
- Den eigenen Wert nicht an Vergütung oder Titel knüpfen; Freundlichkeit und Einsatz verändern langfristig sowohl Karriere als auch Leben
> Ich bin betrunken und werde das wahrscheinlich bereuen, aber hier ist mein betrunkes Ranking der Dinge, die ich in den letzten 10 Jahren als Engineer gelernt habe.
- Der beste Weg, meine Karriere voranzubringen, war die Firma zu wechseln
- Der Tech-Stack ist nicht so wichtig — im Datenbereich gibt es ungefähr 15 grundlegende Muster, und in jedem Bereich 10 bis 20 Kernprinzipien; der Tech-Stack ist nur ein Werkzeug, das diese leichter macht, also macht euch nicht zu viele Sorgen
- Es gibt einen Grund, warum Leute Jobwechsel empfehlen — wenn du mit deinem Job unzufrieden bist, ist es Zeit zu gehen
- Ich habe in Firmen gute Freunde fürs Leben gefunden, aber das muss keine Voraussetzung für jeden Job sein — ich hatte Jobs, in denen ich ohne Freunde glücklich war, und Jobs, in denen ich trotz guter Freunde unglücklich war
- Ich habe gelernt, gegenüber meinem Manager auf die richtige Weise ehrlich zu sein — nicht zu ehrlich, aber genug, um bei der Arbeit authentisch zu bleiben. Der schlimmste Fall? Kündigung? In zwei Wochen finde ich einen neuen Job
- Wenn du mehr als einmal pro Quartal um 2 Uhr morgens wegen On-Call geweckt wirst, läuft etwas ernsthaft falsch; entweder beheben oder kündigen
> schenkt sich noch einen ein
- Die Eigenschaften eines guten Managers überschneiden sich stark mit den Eigenschaften eines guten Engineers
- Als ich angefangen habe, war ich fasziniert von Technik, Programmierung und Informatik, aber inzwischen ist diese Phase vorbei
- Guter Code ist Code, den ein Junior Engineer versteht, großartiger Code versteht sogar ein Erstsemester in CS, und der beste Code ist überhaupt kein Code
- Die am meisten unterschätzte Fähigkeit eines Engineers ist Dokumentation — wenn mir jemand wirklich beibringen könnte, gute Dokumentation zu schreiben, würde ich dafür ernsthaft Geld zahlen; selbst für einen 1.000-Dollar-Kurs, wenn er garantiert, dass ich gute Dokus schreiben kann
- In diesem Zusammenhang ist auch das Schreiben guter Proposals für Änderungen eine hervorragende Fähigkeit
- Fast alle Glaubenskriege (vim vs emacs, mac vs linux usw.) sind unwichtig … mit einer Ausnahme. Siehe unten
- Je älter ich werde, desto mehr schätze ich dynamische Sprachen. Ja, ich habe es gesagt. Kommt nur
- Wenn du jemals das Gefühl hast, die klügste Person im Raum zu sein, ist es Zeit zu gehen
- Ich verstehe nicht, warum Full-Stack-Webentwickler so wenig bezahlt werden — sie müssen Frontend, Backend, Browser-Kompatibilität, Networking, Datenbanken, Caching, Unterschiede zwischen Web und Mobile und ständig neue Frameworks verstehen. Das Grundgehalt sollte 500.000 Dollar betragen
- Wir sollten mehr Praktikanten einstellen — voller Energie und Ideen. Die besten Praktikanten sind die, die Fragen stellen und kritisieren können
> ein Schluck
- Triff niemals deine Helden — ich habe den 5.000-Dollar-Kurs meines Helden besucht; er ist ein großartiger Mensch, aber am Ende hat auch er improvisiert wie alle anderen
- Der Tech-Stack ist doch wichtig — denk an Python-Entwickler vs. C++-Entwickler, das sind völlig unterschiedliche Bilder, weil bestimmte Tools für bestimmte Aufgaben spezialisiert sind. Wenn du nicht weißt, was du machen sollst, nimm Java — keine tolle Sprache, aber für fast alles okay
- Die beste Programmiersprache ist Lisp. Du solltest Lisp lernen
- Die profitabelste Sprache für Einsteiger ist SQL — du brauchst sonst nichts. Mit SQL kannst du Geld verdienen. Sachbearbeiter Payroll 50k → Sachbearbeiter Payroll mit SQL 90k. Organisierte durchschnittliche Bürokraft 40k → mit SQL nennt man sie PM und 150k
- Tests sind wichtig, aber TDD ist ein Kult
- Ein sicherer Behördenjob ist nicht so gut, wie er klingt (für frühe bis mittlere Karrierestufen) — 120k + Benefits + Pension klingt gut, aber du verkaufst deine Seele an proprietäre Technologien. Es gibt einen Grund, warum das Durchschnittsalter der Engineers dort 50+ ist. Gilt nicht für Government Contractors
- Third-Party-Recruiter sind Parasiten — aber wenn du einen guten findest, pflege die Beziehung. Wer mehr als 3 Jahre als Third-Party-Recruiter gearbeitet hat, ist meistens nicht gut; die Guten wechseln zu Recruitern großer Unternehmen
- Stock Options sind entweder wertlos oder machen dich zum Millionär — wenn das Engineering-Team nicht größer als 100 Leute ist, sind sie meist wertlos
- Remote Work ist großartig. Aber das Fehlen eines Whiteboards vermisse ich
- Ich habe nie bei FAANG gearbeitet — ich weiß nicht, was ich verpasse, aber ich habe Leute von FAANG interviewt und eingestellt, und die wissen am Ende auch nicht besser, was sie tun
- Dein eigener Wert hat nichts mit Total Compensation zu tun und sollte es auch nicht — Kapitalismus ist kein guter Maßstab für Selbstwert
- Manager haben viel weniger Macht, als man denkt — wenn jemand nicht entlassen wird, dann oft deshalb, weil sie es nicht können
- Titel sind meistens unwichtig — egal, ob jemand Principal Distinguished Staff Lead Engineer irgendwo ist. Wichtig ist, was du getan und erreicht hast
- Noch etwas zu Titeln: In der frühen Karriere (unter 10 Jahren) ist ein Aufstieg im Titel gut — mehr Skills und Verantwortung. Später in der Karriere kann ein Titel-Abstieg vorteilhaft sein — gleiche Vergütung und bei der nächsten Beförderung wieder Gehaltsspielraum
- Maxe dein 401k aus
- Sei zu allen freundlich — nicht, weil es deiner Karriere hilft (auch wenn es hilft), sondern weil Freundlichkeit selbst schon eine Belohnung ist
- Wenn du im letzten Monat nichts von einem Junior Engineer oder Praktikanten gelernt hast, dann hast du nicht aufgepasst
> Verdammt, der Wein ist leer.
- Es lohnt sich, Geld für Kurse, Bücher und Konferenzen auszugeben — ich habe in Konferenzen, 1,5k-Kurse, viele Bücher und Abos investiert, und es war es wert. So kann man besser so tun, als wüsste man, was man tut
- Ernsthaft, warum werden Webentwickler schlechter bezahlt? Die wissen doch alles!!!
- Karpaltunnel und Rückenprobleme sind kein Witz — gib jetzt 1.000 Dollar für gutes Equipment aus
- Die klügste Person, mit der ich je gearbeitet habe, hatte einen Doktortitel in Mathematik — ich habe unglaublich viel von ihm gelernt. Hoffentlich geht es ihm gut
- Eine Geschichte über ein Mädchen, das in der Highschool meine beste Freundin war — als das Gerücht aufkam, wir würden ausgehen, fing sie an, mich zu ignorieren. Das fühlte sich nicht gut an, aber ich hege keinen Groll und hätte damals besser damit umgehen sollen
- In der 8. Klasse wollte ich mit meiner Freundin Schluss machen, konnte es aber nicht sagen und fing stattdessen an, sie zu ignorieren — das war wirklich mies. Tut mir leid, Lena
- Das Beste daran, Software Engineer zu sein, ist, dass man Menschen treffen und mit ihnen sprechen kann, die auf dieselbe Weise über Probleme nachdenken. Nicht dieselben Hobbys, sondern dieselbe Denkweise
- Es gibt nicht genug Frauen in der Tech-Branche — ich versuche, Frauen im Engineering in meiner Organisation zu ermutigen und zu unterstützen, weiß aber nicht, was ich noch tun sollte
- Dasselbe gilt für schwarze Engineers
- Ich habe eine Technologie nie gehasst, bevor ich sie nicht tief genug verstanden habe — wenn du etwas hasst und es einem Kunden trotzdem empfehlen kannst, ist es wahrscheinlich gute Technologie. Jenkins ist furchtbar, aber es ist kein Kunstfehler, es zu empfehlen
- git ist furchtbar, aber wir haben keine Wahl — GUI-Tools sind die Hölle, die Kommandozeile ist besser. Man muss etwa 7 Befehle auswendig kennen, den Rest googelt man
- Weil ich Data Engineer bin, hier noch eine Daten-Lektion. Benutzt kein Pandas
- Es ist leichter zu arbeiten, wenn im Team halbtechnische Analysten sind — Leute, die Programmierung verstehen, aber kein Software Engineering. Wenn sie es nicht verstehen, ist das Design falsch. Ich habe von Analysten mehr gelernt als von den brillantesten Engineers
- Dark Mode ist schmerzhaft, wenn man gezwungen wird, auf Light Mode umzuschalten — deshalb nutze ich Light Mode
- Das, was ich über Security weiß, ist im Wesentlichen nur, dass ich nicht viel über Security weiß
> Verdammt, der Wein ist leer.
- Ein guter Engineer kennt Best Practices, ein Senior Engineer weiß, wann man Best Practices brechen sollte
- Wenn du in einer Umgebung bist, in der man für Bugs oder Ausfälle Schuldige sucht, ist es Zeit zu gehen
- Progressive Unternehmen, besonders Startups, sagen gerne, man solle „sein wahres Ich“ mitbringen — aber was, wenn dein wahres Ich nur aus Pornokonsum besteht? Es ist wichtig, gesunde Grenzen zwischen Arbeit und Privatleben zu halten
- Ich trinke gern mit Kollegen bei der Happy Hour, aber ich verbringe meine Zeit lieber mit Kindern, Familie und Freunden
- Das beste Beispiel für Leadership, das ich gesehen habe: Ein Leader übernimmt die Verantwortung für einen Fehler, der zu 100 % seine eigene Schuld war — für so jemanden würde ich durchs Feuer gehen
- Im selben Sinne vertreten die besten Führungskräfte ihre eigene Meinung und erklären zugleich andere, widersprüchliche Sichtweisen. Ich versuche, wie sie zu werden
- Vergiss Side Projects — mach sie, wenn du sie magst! Selbst wenn ich Zeit hätte, bin ich zu beschäftigt damit, betrunken auf Reddit zu posten
- Algorithmen und Datenstrukturen sind wichtig — aber nur bis zu einem gewissen Punkt. So wie man in einem Bewerbungsgespräch für Apotheker kein Quiz zu organischer Chemie macht, gibt es ein Problem mit dem Interviewprozess in dieser Branche
- DevOps Engineers sind wirklich clever. Wenigstens werden die halbwegs ordentlich bezahlt
- Wichtiger als zu tun, was man liebt, ist es, etwas zu tun, das man nicht hasst
- Je näher du am Produkt bist, je näher am Umsatz, desto eher fühlt sich deine Arbeit wertgeschätzt an — unabhängig vom technischen Niveau, selbst in den progressivsten Unternehmen
- Linux ist wichtig — selbst in einer Windows-Umgebung. Warum? Weil du am Ende doch Linux verwenden wirst. Ich bin dankbar für die Wochenenden, an denen ich aus Spaß Arch installiert habe
- Man sollte sich vor vagen Buzzwords wie „Big Data“ hüten — ich habe sowohl 10.000 Zeilen alle 10 Minuten über Spark/Kafka gestreamt als auch 1 Milliarde Zeilen pro Stunde per Batch in Python/MySQL verarbeitet; das Label bedeutet nichts
- Es gibt auch außerhalb des Silicon Valley gute Jobs, aber viele gute Jobs sind im Silicon Valley
> Ich habe Bier gefunden. Weiter geht’s.
Über Programmiersprachen
- Ich habe angefangen, eine Sprache zu benutzen, die ich früher gehasst habe (C#), und ich mag sie immer noch nicht, erkenne aber ihren Nutzen an
- Als ich zu einer Sprache zurückkam, die ich gehasst hatte (C#), war sie deutlich besser geworden
- Der größte Vorteil funktionaler Sprachen ist, dass Funktionen First-Class Citizens sind und alle Programmierer das wissen
- Egal wie brillant oder überlegen eine Sprache ist — wenn niemand sie benutzt, bringt das nichts
- Eine Sprache zu lernen ist nicht schwer — schwer ist es, das Ökosystem zu lernen
Über Kollegen
- Pair Programming ist großartig, kostet aber viel Zeit — und Unternehmen wollen diese Zeit meist nicht aufbringen
- Wenn du mit klugen Engineers arbeitest, wirst du ein besserer Coder. Wenn du mit klugen nichttechnischen Kollegen arbeitest, wirst du ein besserer Engineer
- Arbeite nicht außerhalb von 9 bis 5 — außer wenn gerade ein cooles Projekt läuft und du im Flow bist. Das ist das Beste
- 99 % von teamübergreifenden Happy Hours und sozialer Zeit ist einfach nur Small Talk. Aber 1 % davon sind Gespräche über wichtigen Code in wichtigen Projekten, und ich habe schon einmal ein großes Problem verhindert, weil ich bei einem sozialen Event Arbeitsthemen angesprochen habe. Das heißt nicht, dass man sich unbedingt mit anderen Teams mischen muss — man will einfach Bindung, und das hat nur Nebeneffekte
Über Remote Work
- In halb remote / halb Office-Setups muss man prüfen, ob Remote-Mitarbeiter wie Bürger zweiter Klasse behandelt werden — wenn wichtige Entscheidungen „auf dem Weg zum Wasserspender“ getroffen werden, dann ändere die Kultur der Firma (schwierig) oder geh zu einer anderen Firma, die Remote-Leute als vollwertig behandelt
- Der zweitgrößte Nachteil von Remote Work ist: kein Whiteboard
- Der größte Nachteil von Remote Work ist, dass es schwerer ist, von Kollegen zu lernen — wenn du nicht selbstbewusst Fragen stellen kannst und Remote-Leute kulturell nicht auf derselben Stufe wie die Leute vor Ort stehen, dann wären die ersten 5 Jahre deiner Karriere im Büro besser gewesen
Über Technik
- Jeder weiß, dass sich Technik verändert, aber obwohl sich in den letzten 10 Jahren vieles dramatisch verändert hat, haben sich die Grundprinzipien kaum verändert — besonders die Prinzipien, die für das jeweilige Fachgebiet gelten
- Hacker News und r/programming sind nur nützlich, um sich einen groben Überblick und aktuelle Trends zu verschaffen; die Kommentare sind fast nutzlos
- Es gibt viele Amateure mit starken Meinungen, und bei Artikeln in „respektierten“ Journalen und Blogs ist es ähnlich — nimm Gerüchte wahr, aber urteile selbst
- Ich arbeite in einem hochmodernen Startup, aber wir verwenden nicht die neueste XYZ-Technologie, die von irgendeiner hochmodernen Firma ABC angekündigt wurde — was diese Firmen veröffentlichen, ist nur ein winziger Teil ihres Engineerings, und den Großteil ihrer Arbeit machen sie mit denselben Technologien wie wir
- Trotzdem muss man die Zeichen lesen — wenn du moderne Technologien nutzen willst, deine Firma aber immer noch vor allem mit jQuery entwickelt, ist es Zeit für eine Neubewertung
Über Data Engineering
- Weil ich Data Engineer bin, hier noch datenspezifische Ratschläge/Erfahrungen
- SQL ist König — MySQL, Postgres, Oracle, SQL Server, SQLite sind immer noch die Stärksten. Selbst wenn du neue Technologien nutzt, ist vieles davon übertragbar
- Die meisten Firmen machen kein Streaming — es ist schwer und komplex. Auch wenn du nach 10 Jahren Erfahrung keine 10.000 Ereignisse pro Sekunde verarbeiten kannst, findest du einen Job
- Airflow ist nicht toll, ja. Es gibt andere Produkte, aber Airflow ist am weitesten verbreitet
- Machine-Learning-Projekte scheitern mit hoher Wahrscheinlichkeit — sie sind komplex und schwer umzusetzen. Glaubst du das nicht? Dann überlege mal, wie einfach es ist, Unit-Tests für ML-Modelle zu schreiben
- Das Feld ist immer noch neu — es gibt keine guten Bücher über Data Engineering, man muss es einfach selbst machen. Ein Bootcamp reicht nicht. In 10 Jahren kann das anders sein
Über das Leben
- Menschen sterben — wenn du willst, dass dein Code dein Vermächtnis wird, dann investiere Zeit hinein. Aber wenn dein Vermächtnis wie bei mir aus Familie, Freunden und den Menschen um dich herum besteht, dann hänge nicht zu sehr an Code
- Gute Menschen, kluge Menschen und gute Coder schreiben schlechten Code — mach Codequalität nicht zu einer abhängigen Variable deines Selbstwerts
- Eine Technik, die als Hobby begann, wird als Beruf nicht mehr zum Hobby — akzeptiere, dass Technik vielleicht kein Hobby mehr für dich ist, such dir ein neues oder kündige den Job, wenn du sie wieder genießen willst
- Programmierung und Informatik sind eine etwa 80 Jahre alte Disziplin — verglichen mit anderen Ingenieurdisziplinen wissen wir alle noch nicht wirklich, was wir tun
- Ich verdiene ziemlich gutes Geld — sei dankbar, sparsam und spare
Sonstiges
- Ich habe große Plattformen und Bibliotheken gebaut, die jahrelang von vielen Teams genutzt wurden, aber auf den Code, auf den ich am stolzesten bin, sind kleine Skripte, die nur ich benutze
- Meine stolzeste Leistung in der Karriere ist, dass ich anderen geholfen habe, ihre Arbeit besser zu machen — vielleicht, weil ich dazu bestimmt bin, People Manager zu werden, und vielleicht ist das für andere nicht hilfreich
- Bei der Jobsuche habe ich LinkedIn angelegt und gepflegt, aber nur schlechte Antworten bekommen und es gelöscht. Jetzt suche ich selbst Kandidaten über LinkedIn — LinkedIn hat viel Rauschen, und nur weil es Teil des Jobs ist, zu diesem Rauschen beizutragen, hat es überhaupt einen Wert
- Im College habe ich herausgefunden, dass ein Mädchen mich mochte — wegen meines geringen Selbstwertgefühls habe ich es nicht geglaubt, aber sie hat mich um ein Date gebeten. Ich habe höflich abgelehnt, und dass ich mit 19 reif „Nein“ sagen konnte, ist einer der Momente, auf die ich in meinem Leben am stolzesten bin
- r/cscareerquestions ist ein Sumpf aus Ego und Fehlinformationen — ich möchte die Leute dort schütteln und ihnen erklären, wie die Welt wirklich ist, aber sie würden es nicht glauben
Was ich gerade fühle
- Ich bin betrunken und trinke normalerweise nicht, also klingt wahrscheinlich alles, was ich sage, peinlich oder furchtbar
- Ich habe stark das Gefühl, dass Menschen sparen und investieren sollten — wenn du ein sechsstelliges Gehalt hast, maxe dein 401k aus
- Ich bin zu dem geworden, was ich immer gehasst habe — jemand, der in der Tech-Branche arbeitet, aber im echten Leben Technik vermeidet. Vielleicht wird man im Alter einfach so
- r/ExperiencedDevs ist eine ziemlich gute Community. Danke an die Moderatoren. Sie bekommen viel weniger Dank, als sie verdienen
- Ich verdanke Reddit meine Karriere, mein Gehalt und mein Leben — ich war an einer Tankstelle zum Mindestlohn beschäftigt, habe dann Linux, SQL, Python, C# usw. gelernt und bin so hier gelandet. Reddit bekommt viel Hass ab, aber seine Communities helfen Menschen, der Armut zu entkommen
- Kinder sind toll — ich habe mich bewusst gegen Kinder entschieden. Ich liebe Kinder, aber ich habe Angst davor, was für ein Vater ich wäre. Ist das zu persönlich für diesen Post?
- Als mich jemand fragte, wen ich bewundere, antwortete ich Conan O'Brien, und ich wurde ausgelacht. Aber ich meinte es ernst — in seiner letzten Tonight-Show-Sendung sagte er: „Seid freundlich und arbeitet hart.“ Ich hörte das in einer schwierigen Phase meines Lebens und hatte nichts zu verlieren, also habe ich genau das getan. Ich war über zehn Jahre freundlich und habe dadurch großartige Menschen getroffen, und weil ich hart gearbeitet und Neues ausprobiert habe, wurde mein Leben unendlich besser. Es mag lächerlich klingen, dass eine Late-Night-Talkshow mir ein erfüllteres Leben geschenkt hat, aber es ist mein Leben, und ich werde mit Stolz sagen, dass ich jeden Erfolg einem Comedian im Nachtfernsehen verdanke
> Ich bin völlig betrunken, ignoriert einfach, was ich gesagt habe. Sorry für die Abschweifung.
4 Kommentare
Der Inhalt des Artikels wirkt etwas seltsam, oder? Inhalte, die eigentlich separat als Hacker-News-Meinungen gesammelt erscheinen sollten, stehen im Haupttext ... Hat sich die Ausrichtung geändert?
Ich habe die letzten Tage an der Verbesserung der Prompts gearbeitet, deshalb war es etwas inkonsistent. Ich habe es jetzt wieder geradegezogen T_T
Ich kann dem Punkt über den
Generalistnur zustimmen. Als ich noch Berufseinsteiger war, dachte ich auch: Ich sollte Generalist werden~Hacker-News-Meinungen
Dass man als Softwareingenieur Menschen mit einer ähnlichen Denkweise trifft, wich ziemlich von meiner Erfahrung ab. Von 50 Leuten, die ich getroffen habe, hatte vielleicht 1 das Gefühl, diesen Job aus Handwerksstolz zu machen; die meisten wollten einfach nur einen 9-to-5-Job, Sichtbarkeit und Projekte mit Wirkung und haben ihre Probleme und Ansichten nicht besonders tief geteilt
So etwas wie „neuen Job in zwei Wochen gefunden“ fühlt sich total nach dieser Zeit an. Damals hatten die Beschäftigten den Markt in der Hand, und überall herrschte diese Stimmung von Leuten, die den Experten spielen
Mit der Aussage „Triff deine Helden nicht direkt; nach einem 5.000-Dollar-Kurs habe ich gemerkt, dass auch diese Person wie wir improvisiert“ konnte ich mich vollkommen identifizieren
Zu der Aussage, dass Dokumentation die am meisten unterschätzte Fähigkeit für Ingenieure sei, würde ich ergänzen: In Dokumentation sollte vor allem das Warum festgehalten werden. Code kann man lesen, aber bei einer 200-zeiligen Funktion wie
invert_parameterswill man wissen, warum sie entstanden ist, welches Problem sie lösen sollte, warum es dieses Problem gab und wie lange dieser Code voraussichtlich überleben wird. Manchmal hinterlasse ich sogar entschuldigende Kommentare, dass ich es wegen Zeitdruck oder seltsamer Upstream-Probleme so geschrieben habe. Gerade bei nicht offensichtlichem Code sollte die Denkweise aus der Entstehungszeit skizziert werden, damit ein Kontext erhalten bleibt, der im Code allein nicht sichtbar ist. Ich wünschte, sowohl Junior- als auch Senior-Leute würden so etwas im Job öfter tunWenn jemand in den Zwanzigern mehr als 100.000 Dollar im Jahr verdient, ist der Rat, zuerst 401k und HSA maximal auszuschöpfen und dann auch die IRA vollzumachen, meiner Meinung nach wirklich wichtig. Auch die Grundregel, alles in einen Target-Date-Retirement-Fund zu stecken und Lebenshaltungskosten für 6 bis 12 Monate auf einem High-Yield-Savings-Account zu halten, klang vernünftig. Die Idee war, dass man bei einem Start mit 23 theoretisch mit 45 in Rente gehen könnte; wenn man es aufschiebt, kann einen später die Realität treffen, dass man mit 45 immer noch 20 Jahre arbeiten muss
Die nützlichste Lektion, die ich gelernt habe, war, dass Beschränkungen, die ich mir nicht selbst ausgesucht habe, oft zu besseren Produktentscheidungen führen als die, die ich absichtlich setze. Ich betreibe einen Link-Shortener auf Shared Hosting, ohne SSH, nur mit Deployment per FTP, und es gibt weder Background Worker noch Redis. Jedes Mal, wenn ich etwas wie eine richtige Queue, WebSockets oder eine Cache-Schicht einbauen wollte, hieß es, dass das Hosting das nicht unterstützt, also habe ich es einfach gelassen. Deshalb verschicke ich Klick-Benachrichtigungen per Cron, der einmal pro Stunde einen PHP-Endpunkt aufruft. Keine Queue, keine Retry-Logik, keine Worker; entweder es wird gesendet oder es scheitert, und das Ergebnis wird nur geloggt. Nach sechs Monaten lief das völlig problemlos. Hätte ich von Anfang an einen VPS gehabt, hätte ich vermutlich etwas Größeres gebaut, das ich bis heute pflegen müsste. Dadurch, dass das Shared Hosting so klar sagte „es gibt nur Cron und DB“, habe ich gelernt, dass das völlig ausreicht
Im Originalpost fielen mir einige Probleme auf. Allein Wein zu trinken ist etwas ungewöhnlich; typischer wären wohl Whiskey, Wodka oder Bier. Eine Schreibweise wie „ever thing“ wirkte wie ungeordnete Gedanken im angetrunkenen Zustand und passte dadurch fast wieder zur Stimmung. Außerdem würde ich Webdev nicht als repräsentativ für Experten sehen, und Dark Mode lässt sich oft mit Browser-Erweiterungen lösen. Apotheker ist ein Beruf, der Abschlüsse, langes Lernen, Prüfungen und organische Chemie erfordert, und die Aussage, HN-Kommentare seien wertlos, fand ich ebenfalls überzogen. Manche Posts sind schlecht, aber die Kommentare sind nicht selten besser als der eigentliche Text
Als verwandter Beitrag fiel mir der Post vom Mai 2021 Drunk Post: Things I've Learned as a Sr Engineer ein. Dort gab es 494 Kommentare
Dass dieser Text aus dem Jahr 2021 stammt, hat mich überrascht. Die SQL-Passage und dieses Gefühl von Jobwechsel in zwei Wochen wirkte total nach 2014er-Vibes
Zur Aussage „HN und r/programming sind gut, um grobe Ideen und aktuelle Entwicklungen mitzubekommen, aber die Kommentare sind fast wertlos“: Ich lese Kommentare auf HN viel seltener, seit ich von der Moderation ein Rate Limit bekommen habe. Weil ich nur ein paar Mal am Tag antworten kann, kann ich kaum noch wirklich teilnehmen, und dadurch fehlt mir die Motivation zu lesen. Es ist subtiler als ein offener Bann — eher ein Ausbremsen — und man fühlt sich dadurch auf eine merkwürdige Weise unerwünscht. Ich hatte Sorge, viel zu verpassen, aber vielleicht ist es gar nicht so schlecht, diese gewohnheitsmäßige Anziehung zu den Kommentaren zu durchbrechen