Zusammenarbeit und Teamwork
Als Profi in der Webbranche werden Sie während mehrerer Phasen mit anderen Menschen an Projekten arbeiten müssen – von der Ideenfindung, über das Schreiben von Vorschlägen bis hin zur Implementierung von Code und mehr. Dieser Artikel beleuchtet, wie man mit anderen zusammenarbeitet.
Voraussetzungen: | N/A |
---|---|
Lernziele: |
|
Zusammenarbeit mit anderen
Als Webentwickler müssen Sie viel Zeit mit Ihren Kollegen verbringen, egal ob Sie angestellt sind oder studieren. Ihre Kollegen oder Kommilitonen können eine äußerst wertvolle Hilfe für Ihr Lernen sein, wie wir bereits in Recherche und Lernen besprochen haben, und Sie sollten zumindest sicherstellen, dass Sie gut mit ihnen auskommen.
Es ist wichtig, Menschen mit dem gleichen Maß an Empathie und Respekt zu behandeln, wie Sie es sich wünschen würden. Verschiedene Menschen haben unterschiedliche emotionale, soziale usw. Bedürfnisse, aber auf einer grundlegenden Ebene sollten Sie in allen Interaktionen höflich, respektvoll und kooperativ sein.
Treten Sie einem Community-Netzwerk bei
Die Webbranche hat ein starkes Gemeinschaftsgefühl, was bedeutet, dass Sie häufig mit Menschen außerhalb Ihrer direkten Arbeits- oder Studiengruppe interagieren werden, um interessante Themen zu diskutieren oder Probleme zu lösen. Die Webbranche hat ihre eigenen Online-Räume wie Foren (z. B. Discord-Server), Slack-Kanäle usw. Es gibt auch viele persönliche Veranstaltungen, von hochkarätigen Konferenzen bis hin zu eher unscheinbaren lokalen Meetups.
Sie sollten in einige dieser Gruppen eintauchen, hallo sagen, Menschen kennenlernen, Ressourcen teilen, Fragen stellen und Hilfe anbieten. Menschen in der Community kennenzulernen hat viele Vorteile — Sie werden:
- Nützliche Kontakte knüpfen, die Freunde, zukünftige Kollegen oder Arbeitgeber werden könnten.
- Neue Techniken und Technologien erlernen und Hilfe bei Ihren technischen Problemen bekommen.
- Üben, zu erklären, wie Code funktioniert und Fragen anderer zu beantworten.
- Informationen über Ressourcen, Meetups und Branchenneuigkeiten erhalten.
- Anzeigen für Jobs finden.
- Informationen über die Unternehmen der anderen Community-Mitglieder erhalten, was ebenfalls vorteilhaft sein kann, um den Arbeitsmarkt zu erkunden und herauszufinden, wo Sie arbeiten möchten.
Hier sind einige erste Ideen, wie Sie sich in einige Community-Netzwerke einbringen können:
- Recherchieren Sie in Ihrer Region, welche lokalen persönlichen Meetup-Gruppen es gibt, und nehmen Sie an einigen davon teil. Sie können Veranstaltungen auf Websites wie Meetup.com oder Eventbrite suchen.
- Schauen Sie sich Ressourcen wie confs.tech an, um interessante Tech-Konferenzen zu finden. Wenn diese außerhalb Ihres Budgets liegen, versuchen Sie, die Organisatoren zu kontaktieren, um zu sehen, ob Sie als Freiwilliger auf der Konferenz arbeiten können — Sie können trotzdem teilnehmen und viele Menschen treffen.
- Stack Overflow ist ein großartiger Ort, um Fragen zu stellen und die Fragen anderer zu beantworten.
- Die freeCodeCamp-Foren sind ein weiterer großartiger Ort, um Fragen zu stellen und zu beantworten.
- Schauen Sie sich den Frontend Developers Discord-Server an.
- Hängen Sie auch auf MDN's Discord ab.
- Unser Bildungspartner Scrimba bietet eine starke Community- und Kollaborationserfahrung über deren Discord-Server an, mit der Absicht, ihren Schülern Erfahrung in der Zusammenarbeit mit anderen zu geben.
- Finden Sie Webentwickler in den sozialen Netzwerken, sehen Sie, was sie sagen, und beteiligen Sie sich an Gesprächen.
Wenn Sie sich nicht sicher sind, wie Sie sich beteiligen sollen, können Sie damit beginnen, vorhandene Threads zu lesen und zu beobachten, wie erfahrene Leute in Diskussionen auftreten.
Hinweis: Die meisten Communities veröffentlichen ein Dokument namens Verhaltenskodex (oder Teilnahmeleitlinien), das ihre Verhaltenserwartungen für Menschen definiert, die an ihrem Projekt teilnehmen. Diese Leitlinien beinhalten in der Regel eine Definition dessen, was als inakzeptables Verhalten gilt, die Konsequenzen für inakzeptables Verhalten und wie inakzeptables Verhalten gemeldet wird. Zum Beispiel wird MDN durch die übergreifenden Mozilla Community Participation Guidelines geregelt.
Anderen helfen, Fragen stellen
Wenn ein Kollege oder Netzwerk-Kontakt Schwierigkeiten hat, bieten Sie ihm Ihre Hilfe an. Webentwickler, die Hilfe leisten, sind viel eher in der Lage, starke Beziehungen aufzubauen und im Gegenzug Hilfe zu erhalten.
- Wenn Sie bereits Erfahrung in dem Bereich haben, in dem sie Schwierigkeiten haben, teilen Sie Wissen oder Codebeispiele mit ihnen. Das Erklären von etwas wird auch Ihr Verständnis verbessern und Ihnen helfen, zu lernen.
- Wenn Sie eine Vorstellung davon haben, wo sie nützliche Antworten finden könnten, helfen Sie ihnen bei der Recherche.
- Selbst wenn Sie sich nicht sicher sind, was die Antwort ist, bieten Sie an, eine Pause mit ihnen zu machen und zuzuhören, während sie das Problem erklären. Möglicherweise haben Sie nützliche Einsichten, und das Erklären des Problems könnte ihnen helfen, die Lösung zu finden (siehe Pausen machen und Rubber Ducking).
Helfen Sie immer eher den unmittelbaren Kollegen, anstatt auf einen Lehrer oder Senior Dev zu warten, der herumgeht und allen hilft. Weniger fähige Kollegen erhalten schneller Hilfe, und fähigere Kollegen werden zu Mentoren und erleben die Zufriedenheit, die das mit sich bringt.
Es gibt eine Kunst, Fragen zu stellen und zu beantworten. Es ist wichtig, zu üben, die richtigen Fragen zu stellen, um herauszufinden, was Sie wissen müssen, und zu erklären, was Sie tun, wenn jemand anderes Sie fragt. Wenn Sie darin nicht sehr gut sind, fragen Sie Ihre Kollegen, ob Sie Sitzungen mit ihnen einrichten können, bei denen sie Fragen stellen und Sie erklären, wie Ihr Code funktioniert, und umgekehrt.
Peer Reviews sind auch eine gute Gelegenheit, dies zu üben (siehe unten).
Ihre Arbeit veröffentlichen
Im Allgemeinen ist es sehr lohnenswert, Ihre Arbeit zu veröffentlichen, einschließlich Quellcode, gewonnene Erkenntnisse, was herausfordernd war usw. Ihre Kollegen werden dies sehr nützlich finden, ebenso wie die breitere Community.
Wenn Sie eine nützliche Antwort finden, schreiben Sie darüber. Stellen Sie Ihren Code auf eine Social-Coding-Site wie GitHub oder GitLab, und schreiben Sie Ihre Gedanken in einem Blog nieder. Teilen Sie Ihre Veröffentlichungen über soziale Medien.
Nicht nur, dass der Prozess des Schreibens die Konzepte für Sie klären wird, sondern Sie werden auch Bestätigungen und/oder Feedback von der Community erhalten. Es könnte Ihnen helfen, sich in der Branche einen Namen zu machen.
Selbst wenn Sie denken, dass Ihre Leistungen trivial sind, wissen Sie wahrscheinlich mehr, als Sie denken, und es wird immer jemanden in einem früheren Stadium seiner Reise zur Beherrschung des Codes geben, der Ihre Arbeit nützlich finden wird.
Teilnahme an Open Source
Eine weitere Möglichkeit, Freunde zu finden und Menschen zu beeinflussen, ist, Open-Source-Projekte zu finden und Aktualisierungen anzubieten, um Probleme in der Arbeit anderer zu beheben. Vorausgesetzt, Sie sind höflich und respektvoll und erklären Ihre Änderungen und die Gründe dafür, werden die Projekteigentümer sehr dankbar für Ihre Beiträge sein. Ihre Aktualisierungen geben Ihnen auch wertvolle Erfahrung und Übung.
Zum Beispiel ist der Quellcode von MDN auf GitHub verfügbar, und wir haben viele Probleme, an denen Sie arbeiten könnten. Es gibt viele Community-Ressourcen auf MDN, die das Projekt und das Beitragen dazu beschreiben.
Wenn Sie sich nicht sicher sind, was Open Source ist und warum oder wie Sie anfangen sollen beizutragen, sind beide der folgenden wirklich nützlich:
Teamwork und Peer Reviews
Sie werden oft in einem Team mit anderen Entwicklern arbeiten müssen, wobei verschiedene Teammitglieder unterschiedliche Funktionen im Team wahrnehmen. Wir werden die verschiedenen Rollen, denen Sie begegnen werden, und die üblichen Arbeitsstrategien in Workflows und Prozesse besprechen, aber denken Sie vorerst darüber nach, was es bedeutet, in einem Team zu arbeiten:
- Gemeinsames Eigentum am Projekt, an dem Sie arbeiten — sowohl an Erfolgen als auch an Misserfolgen.
- Gemeinsame Planung, was Sie tun werden, aber auch, wie Sie zusammenarbeiten, um dies zu erreichen. Welchen Prozess werden Sie verwenden? Wie werden Sie den Erfolg messen? Wie viel Zeit haben Sie; welche Ziele müssen erreicht werden, und wann?
- Regelmäßige und offene Kommunikation, um sicherzustellen, dass Probleme frühzeitig erkannt werden und alle wissen, was vor sich geht.
- Jederzeit Empathie für die anderen Teammitglieder zeigen, insbesondere wenn die Dinge nicht nach Plan laufen und Anpassungen erforderlich sind.
- Einander beim Erfolg unterstützen.
Auch wenn Sie nicht an einem echten Arbeitsprojekt arbeiten — Sie könnten an einem College-Mock-Projekt arbeiten oder an einem eigenen Hobbyprojekt — sollten Sie üben, es wie ein echtes Softwareprojekt zu führen, mit einem Zeitplan, einem Plan und Verantwortlichkeiten. Lernen Sie die typischen Software-Entwicklungslebenszyklen kennen. Erlangen Sie einige grundlegende Projektplanungsfähigkeiten und Werkzeuge, um Ihre Arbeit schätzen und planen zu können.
Es ist auch eine gute Idee, mit Peer Reviews zu beginnen — Kollegen überprüfen die Arbeit der anderen und geben Feedback, wie sie verbessert werden könnte. Bereiche, die betrachtet werden, könnten allgemeine Codequalität und Einhaltung von Code-Stilrichtlinien, Leistung, Einhalten von Best Practices, Benutzerfreundlichkeit und Qualität der Dokumentation umfassen. Sie können erheblich profitieren, egal ob Sie der Prüfer oder die geprüfte Person sind:
- Wenn Sie die Arbeit eines anderen überprüfen, versuchen Sie, ein Gleichgewicht zwischen Ermutigung und Lob für gute Arbeit sowie kritischem Feedback zu finden. Üben Sie, wie Sie dieses Feedback konstruktiv und respektvoll liefern. Auch wenn sie etwas trivial erscheinen, sollten Sie immer ein oder zwei Fragen stellen, wenn Sie die Arbeit der Kollegen besprechen oder überprüfen.
- Wenn Ihre Arbeit überprüft wird, versuchen Sie, Kritik nicht persönlich zu nehmen, und konzentrieren Sie sich auf das Positive und das, was Sie lernen können. Gehen Sie von den besten Absichten des Prüfers aus — er versucht nur zu helfen.
Lernen, das Scheitern zu umarmen
Ein sehr häufiges Problem, das dazu führt, dass Schüler und neue Entwickler zögern, zu experimentieren und Risiken einzugehen (z. B. wenn sie neue Projekte starten oder neue Ideen erkunden), ist die Angst vor dem Scheitern und wie es von Kollegen/Teamkollegen bewertet wird. Sie sollten einige Zeit damit verbringen, zu lernen, welchen Wert man aus Fehlern ziehen kann.
Scheitern ist wirklich nur ein kleiner Schritt auf dem Weg zum Erfolg. Alle der erfolgreichsten Entwickler sind viele Male gescheitert, und es ist nicht das eigentliche Scheitern, das zählt, sondern wie Sie mit diesem Scheitern umgehen und welche Lektionen Sie daraus lernen.
Hier sind einige Tipps:
- Definieren Sie einen sicheren Raum/eine Peer-Gruppe, in der Menschen frei Fragen stellen können — denken Sie daran, dass es keine "dummen Fragen" gibt, sondern nur Menschen, die nicht fragen. Fördern Sie eine Kultur, in der Kollegen sich gegenseitig unterstützen und das Scheitern nicht hart beurteilt wird.
- Suchen Sie in Ihrem Netzwerk und versuchen Sie, Online- oder persönliche Gruppen zu finden, die Ihnen entweder Hilfe und Rat geben können, oder die mit den gleichen Problemen konfrontiert sind wie Sie und moralische Unterstützung leisten oder gemeinsam experimentieren können.
- (Für Lehrer) Richten Sie die Notenschemata für Ihre Bewertungen so ein, dass Sie immer noch eine angemessene Anzahl von Punkten erhalten können, selbst wenn Sie nicht das richtige Ergebnis erzielt haben, vorausgesetzt, der Prozess ist gut dokumentiert. Vergeben Sie zusätzliche Punkte für Innovation.
- Führen Sie 'Show 'n' Tell' oder Einzelgespräche während eines Projekts mit Kollegen und Mentoren durch, um Feedback und Einblicke darüber zu erhalten, wo Sie falsch liegen, und um Rat zu erhalten, wie Sie auf den richtigen Weg zurückkommen.
- Führen Sie rückblickende Treffen durch, um Projekte zu analysieren, zu betrachten, was nicht so gut gelaufen ist, und darüber zu sprechen, wie man die Dinge beim nächsten Mal verbessern kann.