Hallo, alle miteinander!
Ich denke, dieser Artikel wird für Anfänger in der IT-Welt nützlich sein. Für erfahrene Entwickler scheinen viele der Tipps offensichtlich zu sein. Aber ich hoffe, dass auch sie etwas Neues und Nützliches für sich lernen können.
1. Versuchen Sie, in den Geschäftsprozess einzutauchen
In der heutigen agilen Entwicklungsumgebung ist es von größter Bedeutung, zu verstehen, wie ein Geschäftsprozess funktioniert. Ein tiefes Verständnis des zu entwickelnden Produkts ermöglicht es Ihnen, die Anwendungsarchitektur richtig zu entwerfen und den relevanten Technologie-Stack auszuwählen. Darüber hinaus gefiel den Vertretern der Wirtschaft das Auftreten des Begriffs „Produktentwickler“. Und jetzt setzt die Rolle eines Entwicklers nicht nur das Vorhandensein entwickelter technischer Kompetenzen voraus, sondern auch eine bestimmte Denkweise: Wenn ein Entwickler an Produktdiskussionen teilnimmt, an der Erstellung eines Produktentwicklungsplans teilnimmt und die Auswirkungen von Releases auf die Geschäftsleistung überwacht. Kurz gesagt, er „verwurzelt“ das Produkt.
Heute ist der Produktansatz allgegenwärtig. Und um mit der modernen Realität Schritt zu halten, ist es wichtig zu verstehen, wie das Geschäft funktioniert, in dem Sie ein Softwareprodukt entwickeln.
2. Verwenden Sie ein einheitliches Vokabular
Das Fehlen einer einheitlichen Terminologie im Projekt kann zu einem defekten Telefon führen, wenn die Ausgabe dem Unternehmen nicht genau das gibt, was es von der Entwicklung erwartet. Oder wenn Entwickler dieselbe Geschäftseinheit in ihrem Code unterschiedlich benennen, was zu potenziellen Fehlern und zum Überwachsen der Codebasis führen kann. Daher betrachte ich als nächsten wichtigen Punkt die Zusammenstellung und Verwendung einer einheitlichen Terminologie im Projekt. Und das nicht nur in der Kommunikation, sondern auch im Code.
Wenn Sie ein Projekt starten, ist es ratsam, die in einem einzelnen Dokument verwendeten Geschäftsbegriffe - einem Wörterbuch - festzulegen. In Zukunft wird dieses Dokument nicht nur ein Werkzeug für die Kommunikation zwischen Teammitgliedern sein. Es wird eine Art API-Vertrag zwischen Entwicklung und Geschäft, zwischen Geschäftsanforderungen und Code. Viele Entwicklungsmethoden bauen auf dieser Idee auf. Zum Beispiel Domain Driven Design . Durch die Verwendung des Wörterbuchs entsteht ein einziger Informationsraum für alle Teammitglieder, in dem sich alle perfekt verstehen. Außerdem können Sie den Schwellenwert für die Eingabe des Projekts für neu angekommene Teammitglieder erheblich senken.
3. Bilden Sie Teamvereinbarungen
Das Problem der Diskussionen in den Kommentaren zur Pull-Anfrage ist immer akut. Zu einer Zeit haben wir in einem der Teams sogar eine Regel entwickelt, nach der unter einem Kommentar des Rezensenten nicht mehr als fünf Nachrichten angezeigt werden dürfen. Andernfalls wurde angenommen, dass die Diskussion in Demagogie, Verschlechterung der Beziehungen zwischen Teammitgliedern und unproduktive Nutzung der Arbeitszeit abrutscht. Und das Fehlen von Befehlsvereinbarungen ist schuld.
Bevor Sie mit der Entwicklung beginnen, empfehle ich dringend, dass Sie allgemeine Vereinbarungen treffen, auf deren Grundlage die Arbeit des Teams in Zukunft aufgebaut wird. Hier meine ich die Architektur des Projekts, den Codierungsstil, die zulässige Größe von Klassen und Methoden, den Zeitplan für Codeüberprüfungen und andere Punkte, die Sie für Ihr Team wichtig finden. Denn ohne dieses Verfahren im Voraus durchzuführen, werden Sie in den Kommentaren immer wieder auf die gleichen Diskussionsthemen stoßen.
Und auch hier möchte ich auf meine Erfahrungen verweisen. Als wir Teamkonventionen einführten, haben wir uns während der Codeüberprüfung wirklich nur mit der Implementierung der Funktion befasst. Und irgendwann sah der Code so aus, als wäre er von einer Person geschrieben worden. Und vor allem verbesserten sich die Beziehungen innerhalb des Teams, da es praktisch keine Grundlage für Konflikte gab.
Natürlich sind alle Vereinbarungen schwer zu beachten. Und vieles kann mithilfe von Lintern, Prehooks, automatischen Erinnerungen und anderen Hilfswerkzeugen automatisiert werden.
4. Geben und erhalten Sie regelmäßig Feedback
Unterschätzen Sie die Feedback-Zeremonie nicht. Versuchen Sie, es so oft wie möglich mit Ihren Kollegen zu teilen. Schließlich ist es nicht immer möglich, die geleistete Arbeit objektiv zu betrachten und die richtigen Schlussfolgerungen zu ziehen. Jeder von uns hat eine einzigartige Erfahrung und kann durch sein Prisma wichtige Ratschläge geben, die möglicherweise die Grundlage für Ihre weitere Entwicklung bilden.
Das richtige Feedback ist für einen Entwickler immer eine Wachstumszone. Und rechtzeitiges Feedback ist der "Informationskleber", der dazu beiträgt, das Team zu vereinen und vor Zwietracht zu schützen.
5. Halten Sie sich an einen systematischen Ansatz
Versuchen Sie immer, Ihre Vereinbarungen und gewählten Entwicklungsmethoden einzuhalten. Wenn Sie Funktionen mit Tests abdecken möchten, decken Sie diese immer ab. Wenn Sie eine Vorab-Demo ausführen möchten, tun Sie dies immer. Wenn das direkte Festschreiben an einen Release-Zweig verboten ist, ist es für alle verboten. Dies bringt Beständigkeit und Ordnung in die Handlungen Ihres Teams und versichert unser geliebtes "Vielleicht" gegen uns alle.
6. Verwenden Sie Zeitmanagementmethoden
Um die persönliche Effizienz und den rationellen Einsatz der Arbeitszeit in meiner Praxis zu steigern, versuche ich, mich an die Zeitmanagementmethode zu halten. In meinem Fall ist dies Pomodoro . Natürlich haben Sie das Recht, nicht auf meine Wahl einzugehen. Wenn Sie jedoch die Zeit kontrollieren und Aufgaben innerhalb des Arbeitstages zerlegen, können Sie fokussierter und produktiver arbeiten, indem Sie Ablenkungen vermeiden und die Konzentration auf die aktuelle Aufgabe maximieren.
Darüber hinaus führt die Erfüllung jeder Aufgabe zu einer kurzfristigen Serotoninfreisetzung und einem Gefühl der Zufriedenheit. Am Ende des Tages können Sie sich die Liste der abgeschlossenen Aufgaben ansehen, analysieren und darüber nachdenken, was in Zukunft verbessert werden kann, um bessere Ergebnisse zu erzielen. So ein persönlicher Retro am Ende des Tages.
7. Achten Sie auf Burnout
Es gibt Tage, an denen wir so leidenschaftlich an unserer Arbeit interessiert sind, dass wir die Zeit für Ruhe vergessen. Manchmal können wir es uns leisten, nachts "Überstunden" zu machen, um unsere Ziele schnell zu erreichen. In solchen Momenten müssen wir uns jedoch daran erinnern, dass wir diese momentane Effizienz und Produktivität in Zukunft von uns selbst leihen.
Wenn Sie sich lange in diesem Modus befinden, führt dies zu einem vollständigen oder teilweisen Effizienzverlust am Arbeitsplatz aufgrund zunehmender emotionaler und körperlicher Erschöpfung. Mit anderen Worten, es führt zu Burnout. Die psychologische Abwehr des Gehirns wird als Reaktion auf anhaltenden Stress ausgelöst, um die Ressourcen des Körpers zu schonen.
Sie müssen in der Lage sein, rechtzeitig anzuhalten und Ihr Regime anzupassen, um dies zu verhindern. Normalisieren Sie Ihren Schlaf und Ihre Ruhe, ernähren Sie sich gesund, versuchen Sie, zu Ihrem Lieblingshobby zu wechseln, und vergessen Sie nicht, an der frischen Luft spazieren zu gehen.
Vielen Dank für Ihre Aufmerksamkeit. Allen viel Glück!