Was macht eigentlich ein Softwareentwickler bei Lean Ocean und wie sieht ein üblicher Arbeitstag aus? Das erzählt dir Norbert im folgenden Blogartikel! Wir haben Norbert, einen unserer Developer, einen Tag lang begleitet und über die Schulter geschaut. Vom ersten Kaffee bis zum wohlverdienten Feierabend– hier erhältst du spannende Einblicke in einen abwechslungsreichen Arbeitstag.
Hey Norbert, wie startet eigentlich ein typischer Arbeitstag für dich?
Norbert: Der Tag startet logischerweise damit, dass ich ins Office fahre. Dort bereite ich als erstes mein Frühstück vor und fange an zu arbeiten. Während des Frühstücks bereite ich den Tag vor, beantworte E-Mails, Nachrichten und andere Anliegen.
Nach dem Frühstück habe ich dann einen genauen Plan für den Tag. Gewappnet mit dem Kaffee, starte ich dann mit den ersten wichtigen Aufgaben.
Und was sind die ersten Aufgaben, die du in Angriff nimmst?
Norbert: Zuerst hohe Prio Tasks. Das sind in der Regel solche, die andere blocken, eine knappe Deadline haben oder in einem anderen Sinne von größerer Bedeutung sind.
Vorzugsweise erledige ich erst die weniger genießbaren Aufgaben, da mir diese zu Beginn der Arbeitszeit leichter fallen als zum Schluss.
Gibt es spezielle Routinen oder Methoden, die dir helfen, deinen Tag effektiv zu starten?
Norbert: Meine feste Morgenroutine ist mir besonders wichtig. Dadurch ist der Start in den Arbeitstag etwas so wie Zähneputzen – er läuft auf Autopilot ab. Besonders hilfreich für die ersten 20 Minuten, in denen man noch nicht ganz wach ist.
Das Unangenehme zuerst ist auch eine motivierende Methode. Dadurch weiß ich, dass der Tag im Laufe der Zeit nur besser wird.
Ich arbeite auch viel mit Todo-Listen, die wahrscheinlich jeder zur Hand hat. So kann ich meinen Kopf freihalten und muss mir nicht alles merken. Zusätzlich ist es sehr motivierend, wenn ich erledigte Aufgaben abhaken kann. In dem ich alles checke, kann ich gegebenenfalls auch actionables erstellen. Actionables sind konkrete Schritte oder Aufgaben, um das festgesetzte Ziel zu erreichen. Am Ende meiner Liste setzte ich mir dann ein Hauptziel, das ich an dem Tag schaffen möchte.
An welchen Arten von Projekten arbeitest du normalerweise?
Norbert: Puh, das kann ganz unterschiedlich aussehen. Natürlich DEV-Projekte, aber insgesamt ganz verschiedene Themen. Vom Online-Shop über Spieleplattformen bis hin zu Social-Media-Plattformen – da ist mein Alltag total unterschiedlich. Aktuell arbeite ich zum Beispiel an einem Projekt, bei dem wir einen Onlineshop für Kosmetikartikel entwickeln. Meine Aufgabe besteht darin, die Softwarearchitektur dafür zu entwerfen und das Frontend und Backend mitzuentwickeln. Ich arbeite auch an mehreren anderen Projekten von einem unserer Kund*innen, die allerdings aktuell nicht ganz so aktiv entwickelt werden. Bei diesen Projekten ist es eher die Maintenance und das Bugfixing, um das ich mich kümmere. Beispielsweise haben wir vor kurzem die PHP-Version in einem dieser Projekte von 7.4 auf 8.2 aktualisiert.
Gibt es besondere Herausforderungen oder Erfolge, die du in deinem Alltag erlebst?
Norbert: Auf jeden Fall. Ein besonders guter Erfolg ist für mich, wenn ich nach langem und intensivem Suchen endlich einen schweren Fehler finde. Oder wenn ich ein Feature nahezu fehlerfrei umsetze. Das gibt echt ein gutes Gefühl, da ich scheinbar sehr sauber gearbeitet habe. Auch die positive Rückmeldung von unseren Kund*innen ist immer ganz schön. Die Herausforderung besteht dann oft darin, an all die Edge-Cases zu denken, die zu diesen Fehlern führen könnten.
Ein gutes Beispiel ist die Kommentarfunktion, die wir kürzlich für eine React-Native-App entwickelt haben. Während es recht einfach ist, den Standardfall zu behandeln, bei dem ein eingeloggter Nutzer einen regulären Kommentar schreibt, können die Randfälle trickreich sein. Hierzu gehören Situationen wie:
- Was geschieht, wenn jemand nicht eingeloggt ist und kommentiert?
- Was ist, wenn jemand eingeloggt ist, aber keinen vollständigen Namen im Profil hat?
- Wie reagiert die App auf Emojis, Sonderzeichen oder besonders viele Zeichen in einem Kommentar?
Kund*innen denken in der Regel an solche Randfälle erst nach der Entwicklung. Das gute Gefühl kommt dann auf, wenn sie diese Randfälle entdecken und leicht besorgt danach fragen oder ausprobieren und wir in dem Moment sagen können, dass wir uns darum schon längst gekümmert haben.
Wie interagierst du mit deinem Team und anderen Kollegen im Laufe des Tages?
Norbert: Bei uns läuft ganz viel Kommunikation über Slack ab. So können wir alle kommunizieren, egal ob im Büro oder im Homeoffice.
Oder eben im Büro. Beim Kickern. An der Kaffeemaschine oder in der Mittagspause. Wir gehen auch oft zusammen in die Mensa oder woanders etwas Essen. Da ich oft der Erste im Büro bin, spreche ich immer besonders viel mit denen, die als Zweites ins Büro ankommen.
Mit unseren Kund*innen kommunizieren wir hauptsächlich per E-Mail oder auch in persönlichen Zoom-Calls. Generell versuchen wir, die Kommunikationswege so kurz wie möglich zu halten. Zu unserem Arbeitsalltag gehören außerdem feste Stand-ups und wöchentliche Plannings und Reviews. Das hilft uns enorm, im Team auf dem neuesten Stand zu bleiben und auch schnell Probleme und Herausforderungen zu meistern. Und einmal im Monat findet dann unsere Update-Präsentation mit dem ganzen Team zusammen statt.
Wie gehst du mit komplexen Problemen oder Herausforderungen um?
Norbert: Mir hilft es immer extrem, die Herausforderung in kleinere Probleme zu zerlegen. Und das dann so lange, bis die kleinsten Probleme einfach zu lösen sind. Dann die Lösungen zusammenfügen, um eine Gesamtlösung für das Anfangsproblem zu bekommen. Oftmals hilft auch ein wenig Abstand, um einen klaren Kopf zu bekommen. Und natürlich der Austausch im Team.
Gibt es besondere Techniken oder Methoden, die du anwendest, um kreative Lösungen zu finden?
Norbert: Ich versetze mich in den User und definiere erst die Buttons/Schnittstellen, mit denen Kund*innen interagieren. Dann gestalte ich sie so, wie sie aus meiner Sicht am besten wären. Erst dann gebe ich eine Implementierung, die dann auf die Schnittstellen angepasst ist. So stelle ich sicher, dass ich keine Software anbiete, die primär gut für Entwickler*innen ist, sondern eben für die User. Die Vorteile für den User stehen immer an erster Stelle.
Wie fühlt es sich an, wenn du ein komplexes Problem löst oder ein anspruchsvolles Projekt abschließt?
Norbert: Das Gefühl ist sehr gut. Ich meine, das kennt ja wohl jeder: es gibt einem das Gefühl, etwas Gutes und Wertvolles geschaffen zu haben und stärkt das Selbstwertgefühl. Sowas motiviert immer ungemein, nicht nur mich, sondern auch das ganze Team.
Wie sorgst du dafür, dass du einen guten Ausgleich zwischen Arbeit und Freizeit hast?
Norbert: Ich lege mir meine Stunden so, dass ich an 2 Tagen deutlich mehr und an 3 anderen dann etwas weniger arbeite. So habe ich an manchen Tagen mehr Zeit für Freizeit und Privatleben. Das gefällt mir echt gut. Nach einem intensiven Arbeitstag hilft es oft, den Kopf frei zu bekommen oder abzuschalten. Das kann ich besonders gut beim Spazieren, Bouldern oder auch Meditieren.