Moderne Softwareentwicklung ist ein hart umkämpfter und sich ständig verändernder Bereich, der viele verschiedene Fähigkeiten erfordert. Es reicht bei weitem nicht aus, nur gut programmieren zu können und Aufgaben bedarfsgerecht umzusetzen. Sie sollten die Geschäftsseite Ihres Unternehmens und die wichtigen Kennzahlen gut kennen, lernen, wie Sie durch Abstriche schneller Ergebnisse erzielen, wichtige Randfälle identifizieren, die dem Produktteam unbekannt sind, Erwartungen und Ideen klar kommunizieren und die Ergebnisse sorgfältig testen. Im Grunde müssen Sie viele verschiedene Rollen übernehmen und für Ihr Team und Ihr Unternehmen ein bisschen von allem sein. Das erfordert in der Regel viel Erfahrung, Ausprobieren und ständiges Lernen. Sie können sich jedoch beruflich weiterentwickeln und in kürzerer Zeit produktiver werden – und dabei hoffentlich sogar befördert werden. In diesem Artikel teile ich sieben Produktivitätstipps, die ich im Laufe der Jahre als leitender iOS-Entwickler auf die harte Tour gelernt habe. Sehen wir uns an, wie Sie ab heute ein besserer Entwickler werden können: 1. Behalten Sie Ihren internen Rückstand Ja, Jira und andere Tracking-Systeme sind großartig, aber sie sind in erster Linie für Ihr Team konzipiert, nicht nur für Sie persönlich. Jeder nutzt es, um den Fortschritt bei Sprint-Aufgaben zu überprüfen, aber es ist nicht granular und nicht auf Ihre Ziele zugeschnitten. Sie benötigen hierfür kein weiteres, ausgeklügeltes Tracking-System. Es reicht eine einfache Notizen-App auf Ihrem Gerät, ein einfacher Aufgabenmanager, eine To-Do-Liste oder eine andere Möglichkeit, Ihre Aufgaben zu strukturieren. Hier ist ein Schritt-für-Schritt-Beispiel, wie es funktionieren kann: Nehmen Sie die Sprint-Aufgaben aus Ihrem bevorzugten Jira, sehen Sie sie sich an und priorisieren Sie sie. Was sollte Ihre Hauptaufgabe sein? Tipp: Normalerweise handelt es sich um etwas Geschäftsbezogenes, vielleicht eine neue Funktion, die Ihr Team bis zum Ende des Sprints fertigstellen möchte. Welche Aufgaben können problemlos auf später verschoben und erst erledigt werden, wenn Sie noch etwas Zeit haben? Es ist immer eine gute Idee, Ihr Verständnis mit einem Manager oder einem Produktverantwortlichen zu klären und zu besprechen. Dies kann während der Sprintplanung erfolgen, falls Sie diese haben. Teilen Sie Ihre Aufgaben nach Tagen auf, widmen Sie den wichtigsten Aufgaben mehr Zeit und Mühe und lassen Sie weniger Raum für die Aufgaben, die Sie für weniger wichtig halten. Fügen Sie Teambesprechungen und andere Aktivitäten zu Ihrer Liste hinzu. Ich finde es beispielsweise sinnvoll, täglich einen festen Zeitrahmen für Code-Reviews zu reservieren. So müssen Sie Ihre Kommentare nicht überstürzen und haben mehr Möglichkeiten, einen besseren Beitrag zu leisten. Ich habe einen separaten Artikel darüber veröffentlicht, wie Sie das Beste aus Ihren PR-Reviews herausholen. hier Fügen Sie Ihrer Liste weitere Aufgaben hinzu, die nicht in Ihrem Sprint enthalten sind. Zum Beispiel: „Fragen Sie Tom nach einer Änderung, die wir letzte Woche vorgenommen haben, um zu sehen, ob ich beim nächsten Mal etwas tun muss.“ Auch Unternehmensverantwortlichkeiten sollten in der Liste enthalten sein. Beispiele: „Meine Ziele aktualisieren“, „Auf eine Unternehmensumfrage antworten“ usw. Behalten Sie schließlich zu Beginn des Tages den Überblick über all diese Dinge. Diese interne Aufgabenliste hilft Ihnen, kleine Dinge nicht zu vergessen, die Ihnen sonst entgehen könnten. 2. Seien Sie bei Teambesprechungen proaktiv Es mag verlockend klingen, bei Teammeetings dabei zu sein, aber gleichzeitig sollte man versuchen, lästige Aufgaben zu erledigen oder sich mit jemandem in Slack zu unterhalten. Aber glauben Sie mir, es ist nicht der beste Zeitpunkt, die Konzentration zu verlieren. Ihre Teammitglieder, insbesondere der Engineering Manager und der Produktmanager, erwarten von Ihnen, dass Sie sich zu Wort melden und präsent sind. Teilen Sie Ihre Ideen und Meinungen, stellen Sie Fragen nach dem Warum und Wann und ergreifen Sie die Initiative. Es ist harte Arbeit, und ich weiß, es gibt Tage, an denen man am liebsten still und energielos dasitzen möchte. Aber diese Anstrengungen zahlen sich langfristig meist aus. 3. Kommunizieren Sie klar Kommunikation ist für Softwareentwickler entscheidend. Versuchen Sie, ein Gleichgewicht zwischen dem, was Sie anderen mitteilen und der Art und Weise, wie Sie es tun, zu finden. Beispielsweise ist es bei einem funktionsübergreifenden Standup-Meeting mit einem Produktmanager, einem Designer und einem QA-Ingenieur – also Personen mit unterschiedlichem Hintergrund und unterschiedlichen Verantwortlichkeiten – besser, Dinge herauszufiltern, die sie nicht verstehen. Schauen wir uns den Unterschied an: Gestern habe ich einen Patch auf unseren Bereitstellungsendpunkt angewendet, als die Cosmos-Datenbank beschädigte Entitäten aufwies. Ich musste das Problem rückgängig machen und die Art und Weise ändern, wie wir die Hashwerte in die Tabellen einfügen, indem ich bessere Sortieralgorithmen hinzufügte. Gestern hatte ich Schwierigkeiten bei der Arbeit an einer Lieferaufgabe. Es gab ein Problem während des Rollouts, das ich sofort behoben habe. Da es sich um eine Beta-Umgebung handelte, läuft alles einwandfrei. Ich habe die Arbeitsweise sogar verbessert, was wir nächste Woche in unseren Kennzahlen sehen werden. Ist Ihnen aufgefallen, dass die zweite Version auf Fachbegriffe verzichtet und sich stattdessen auf die Ergebnisse konzentriert, die für alle klar sind? Um diese einfachere Art der Kommunikation zu üben, stellen Sie sich folgende Fragen: Was wollen sie wirklich wissen? Was ich wirklich sagen will? Es ist eine Tugend, komplizierte technische Dinge einfacher zu erklären. Aber je besser Sie das machen, desto besser verstehen es andere. Am Ende haben Sie weniger Missverständnisse, weniger Unsicherheiten und weniger Sorgen. Schließlich können Sie bei Bedarf oder auf Anfrage jederzeit tiefer in die technischen Details eintauchen. Die technischen Synchronisierungen mit anderen Ingenieuren sind hierfür der perfekte Ort. 4. Bauen Sie eine Brücke zu Ihrem Manager Dies hängt natürlich nicht allein von Ihnen ab, aber im Allgemeinen ist ein guter Manager jemand, der Sie und Ihre Interessen gegenüber dem Unternehmen vertritt. Er bespricht Beförderungen von Teamkollegen mit dem oberen Management und beurteilt, ob Sie bereit sind, eine größere Rolle und mehr Verantwortung zu übernehmen. Daher liegt es in Ihrem Interesse, ein gutes Verhältnis zu Ihrem Manager zu pflegen. Wie genau können Sie das planen? Versetzen Sie sich in die Lage Ihres Vorgesetzten. Was sind seine Ziele und was erwartet das obere Management von ihm? Planen Sie Ziele, die Sie im kommenden Leistungszyklus erreichen möchten, und verpflichten Sie sich dazu. Präsentieren Sie diese dem Vorgesetzten, besprechen Sie sie gemeinsam und setzen Sie sie um. Nehmen Sie beispielsweise ein gutes Refactoring-Projekt an, das die Produktleistung verbessert. Ein gutes Zeichen für einen erfahrenen Ingenieur ist übrigens die Fähigkeit, Aufgaben zu delegieren, den Prozess zu kontrollieren und die Arbeit zu erledigen. 5. Konzentriertes Arbeiten statt ständigem Multitasking Kommen wir zum eigentlichen Programmieralltag. Nehmen wir an, du hast eine Aufgabe aus unserem ersten Tipp zu erledigen. Wie gehst du damit um? Überall um dich herum gibt es „Störfaktoren“: Meetings, ständige Slack-Nachrichten usw. Ich finde es effektiver, sich von externen, unwichtigen Dingen abzuschirmen und sich ganz auf deine Aufgabe zu konzentrieren, möglichst ohne unnötige Unterbrechungen. Vermeide diese nicht obligatorischen Meetings, wenn möglich, und beeil dich nicht, sofort auf jede Slack-Nachricht zu antworten. Das heißt natürlich nicht, dass du DMs ständig ignorieren solltest, aber es ist besser, Störungen deines Denkzyklus zu vermeiden. Was meine ich damit? Hier ist ein Beispiel, wie es gemacht werden kann: Sie müssen einen wichtigen Fehler beheben. Es gibt ein paar Theorien, die Sie ausprobieren möchten. Sie arbeiten an der ersten. Sie haben einen Fix angewendet und sind bereit zu testen, ob er funktioniert. Dann erhalten Sie eine Slack-Nachricht. Wenn Sie die Benachrichtigung überfliegen (was buchstäblich eine Sekunde Ihrer Zeit dauert), wissen Sie, dass sie warten kann. Sie haben die Theorie getestet. Sie funktioniert nicht, also versuchen Sie als Nächstes die zweite. Dann machen Sie eine Pause und beantworten diese Nachricht. Nachdem Sie zum Fehler zurückgekehrt sind, können Sie an der nächsten Theorie arbeiten. Meiner Erfahrung nach ist es viel schwieriger, zu etwas zurückzukehren, das man teilweise unvollendet gelassen hat, einfach mitten in der Änderung liegen gelassen. Je mehr Zeit zwischen den Unterbrechungen liegt, desto schwieriger ist es, den Kontext später wiederherzustellen, ihn sozusagen „in den RAM zu laden“. Das heißt nicht, dass man Kollegen ignorieren darf. Nein, aber in vielen Fällen erwartet niemand, dass man sofort antwortet. Es gibt definitiv eine Kulanzfrist, also versuche, diese nicht zu überziehen. Manchmal, wenn ich gebeten werde, etwas zu überprüfen, und es Zeit braucht, obwohl meine Aufgabe gerade wichtiger ist, sage ich ihnen, dass ich das überprüfe und in etwa einer Stunde wiederkomme: Hey, klar, ich schaue das mal und melde mich in einer Stunde wieder. Ich hoffe, das ist okay für dich. Ich habe nur eine wichtige Aufgabe, an der ich mich schon den ganzen Tag beschäftige, und die muss ich erst noch fertig machen. Auf diese Weise geben Sie Ihrem Kollegen eine tatsächliche voraussichtliche Ankunftszeit und lassen ihn nicht hängen, während Sie in Ihrer Kommunikation höflich und freundlich bleiben. 6. Präsentieren Sie Ihre Arbeit Ich kenne sehr talentierte Ingenieure mit unterschiedlichem technischen Hintergrund, die mir enorm geholfen haben. Es war eine Freude, von diesen sachkundigen Menschen zu lernen. Aber haben sie es geschafft, beruflich aufzusteigen? Vielleicht eine Beförderung, mehr Verantwortung und ein höheres Gehalt? Überraschenderweise nicht alle. Einer der Gründe dafür ist, dass außer den Mitarbeitern in ihren kleinen Entwicklungsteams fast niemand von ihrer Arbeit wusste. Ehrlich gesagt: Wenn Sie in einem seriösen Unternehmen ohne Mikromanagement arbeiten, beobachtet niemand Ihre Pull Requests rund um die Uhr. Und selbst kleine Änderungen, die einem Unternehmen möglicherweise viel Geld sparen, können leicht unbemerkt bleiben, wenn Sie die beteiligten Stakeholder nicht ordnungsgemäß darüber informieren. Oft sind diese Personen Manager, Produktinhaber oder Abteilungsleiter … das heißt, sie haben überhaupt keine technischen Kenntnisse. Daher rate ich Ihnen, Ihre wertvolle PR nicht einfach nur zu präsentieren, sondern sie so zu präsentieren, dass jeder im Unternehmen außerhalb Ihrer „Tech-Blase“ ihre Bedeutung und vor allem den Unternehmenswert versteht. Präsentation, ansprechende Grafiken, konkrete Zahlen – all das. Was uns zurück zum dritten Punkt über Soft Skills und Kommunikation führt. Es gibt noch eine andere Seite dieses Punktes, die ich manchmal in Beschwerden von Ingenieurskollegen höre. Wie zum Beispiel die Person in Ihrem Unternehmen, die sich gut selbst vermarktet und alles viel größer macht, als es eigentlich war. Sie wurde von der Führungsebene vielleicht nur wegen ihrer Vorzeigefähigkeiten mehr gelobt. Und genau deshalb kann man sie verachten. Aber hey, es wird sich lohnen, auch von ihnen den einen oder anderen Marketingtrick zu lernen. Ja, es ist auch wichtig, seine Arbeit zu „verkaufen“. Wenn Ihre Präsentationsfähigkeiten mangelhaft sind, überlegen Sie, wie Sie sie verbessern können. Ich würde es als eines Ihrer persönlichen Ziele mit klaren Aktionspunkten definieren. Fragen Sie Ihren Vorgesetzten, ob er Ihnen dabei helfen kann. Ein Augenzwinkern zum vierten Tipp 😉 7. Schätzen Sie Ihre Zeit Und zu guter Letzt: Machen Sie keine Überstunden. Überarbeiten Sie sich nicht. Punkt. Es hängt von der Unternehmenskultur ab, aber an manchen Orten kann das Management sehr manipulativ sein und eine Atmosphäre des „Eile, Eile, Eile“ schaffen, in der es verpönt ist, NICHT lange vor dem Bildschirm zu sitzen. Kurz gesagt, ich würde solche Unternehmen zugunsten einer besseren Work-Life-Balance meiden. Kurz gesagt bedeutet es, dass das Unternehmen seine Mitarbeiter nicht wertschätzt und sich nicht um sie kümmert. Ich habe früher in meinen frühen Jahren als Ingenieur Überstunden gemacht. Einmal wurde uns gesagt, wir sollten innerhalb einer bestimmten Zeit ein umfangreiches und kompliziertes Feature veröffentlichen. Die Deadline war von vornherein unrealistisch. Wir wussten alle davon, aber aus irgendeinem Grund, an den ich mich nicht mehr erinnere, musste das Team damit klarkommen. Wir haben mehrere Wochenenden durchgearbeitet und nachts gearbeitet. Können Sie erraten, was das Ergebnis war? Natürlich haben wir es nicht geschafft. Letztendlich hat niemand etwas unternommen, aber ich brauchte danach einen Monat arbeitsfreie Wochenenden, um mich zu erholen. Wie unser Teamleiter freundlich zu mir sagte: „Diese Firma nimmt so viel von Ihrer Zeit in Anspruch, wie Sie ihr erlauben.“ Nach diesem und vielen ähnlichen Vorfällen zuvor habe ich meine eigenen Grenzen gesetzt, wo und wann die Arbeit, für die ich bezahlt werde, beginnt und endet. Denken Sie daran: Wenn Sie offiziell 5 Stunden am Tag arbeiten, haben Sie eine bestimmte Anzahl an Stunden, für die Sie bezahlt werden. Auch als Freiberufler ist es im Grunde dasselbe. Es gibt immer eine Beziehung „Geld pro Stunde“. Wer Überstunden ohne zusätzliche Bezahlung macht, tut sich in den meisten Fällen selbst keinen Gefallen. Glauben Sie mir, all das kann leicht zu einem Burnout führen, aus dem man nur schwer wieder herauskommt. In seltenen Fällen kann es sich lohnen, Überstunden zu machen, aber nur, wenn sich daraus ein echter Nutzen abzeichnet. Lohnerhöhung, Beförderung, zusätzlicher Urlaub oder eine andere Form der Belohnung, die es wirklich wert ist. Als Faustregel gilt: Mach das Beste aus deiner Arbeitszeit und arbeite hart, aber wenn der Tag um ist, verschiebe die Arbeit auf den nächsten Tag. Schätze deine Zeit. Abschluss Ich hoffe, diese Tipps waren hilfreich für euch. Manche kennt ihr vielleicht schon, andere haben euch zum Nachdenken über Verbesserungen angeregt. Genau deshalb habe ich diese Gedanken niedergeschrieben – um meine Erfahrungen zu teilen und zu sehen, ob sie für andere nützlich sein können. Bis zum nächsten Mal, entwickelt euch weiter und werdet bessere Versionen eurer selbst!