協作與團隊合作
作為 Web 行業的專業人士,您將在專案的多個階段與他人合作——集思廣益、撰寫提案、實施程式碼等等。本文將探討如何與他人協作。
| 預備知識 | N/A |
|---|---|
| 學習成果 |
|
與他人合作
作為一名 Web 開發者,無論您是受僱還是學習,您都將花費大量時間與同行合作。您的同事或同學對您的學習可能是一個非常有價值的幫助,正如我們最初在研究和學習中討論的那樣,您至少應該確保一開始就能與他們相處融洽。
以您希望被對待的同等同理心和尊重對待他人非常重要。不同的人在情感、社交等方面有不同的需求,但最基本的是,您在所有互動中都應該禮貌、尊重和合作。
加入社群網路
Web 行業擁有強大的社群意識,這意味著您經常會與您的直接工作或學習小組之外的人互動,討論感興趣的話題或解決問題。Web 行業有其自己的線上空間,例如論壇(例如 Discord 伺服器)、Slack 頻道等。它還有許多線下活動,從備受矚目的會議到更低調的本地聚會。
您應該加入其中一些小組,打個招呼,認識一些人,分享資源,提出問題,並主動提供幫助。認識社群中的人有許多優勢——您將:
- 結識可能有用的聯絡人,他們最終可能成為朋友、未來的同事或僱主。
- 學習新的技術,並獲得技術問題的幫助。
- 練習解釋程式碼的工作原理並回答他人的問題。
- 瞭解資源、聚會和行業新聞。
- 遇到招聘廣告。
- 查詢有關其他社群成員工作的公司資訊,這也有助於考察就業市場並確定您想在哪裡工作。
以下是一些如何參與社群網路的初步想法:
- 在您當地進行一些研究,看看有哪些本地的線下聚會小組,並參加其中一些。您可以使用 Meetup.com 或 Eventbrite 等網站查詢活動。
- 檢視 confs.tech 等資源,查詢感興趣的技術會議。如果超出您的預算,請嘗試聯絡組織者,看看您是否可以作為志願者參加會議——您仍然可以參加會議並結識很多人。
- freeCodeCamp 論壇是提問和回答問題的另一個好地方。
- 檢視 前端開發者 Discord 伺服器。
- 在 MDN 的 Discord 伺服器上閒逛。
- 加入友好的開發者導向的 IRC 頻道,例如 Libera.Chat。
- 我們的學習夥伴 Scrimba 透過他們的 Discord 伺服器提供強大的社群和協作體驗,旨在幫助他們的學生獲得與他人合作的經驗。
- 在社交網路上尋找 Web 開發者,看看他們在說什麼,並加入對話。
如果您不確定如何參與,可以從閱讀現有帖子並觀察經驗豐富的人如何參與討論開始。
注意:大多數社群都會發布一份名為行為準則(或參與指南)的文件,其中定義了參與其專案的人員的行為預期。這些指南通常包括對什麼是不可接受的行為、不可接受行為的後果以及如何報告不可接受行為的定義。例如,MDN 受更廣泛的 Mozilla 社群參與指南管轄。
幫助他人,提問
如果同事或網路聯絡人遇到困難,請主動提供幫助。提供幫助的 Web 開發者更有可能建立牢固的關係並獲得回報。
- 如果您在他們遇到困難的領域已經有一些經驗,請與他們分享知識或程式碼示例。解釋某些事情的行為也會提高您的理解力,從而幫助您學習。
- 如果您知道他們可能在哪裡找到一些有用的答案,請幫助他們做一些研究。
- 即使您不確定答案是什麼,也請主動與他們休息一下,並在他們解釋問題時傾聽。您可能會有一些有用的見解,解釋問題的行為可能會幫助他們找出解決方案(請參閱休息一下,和橡皮鴨除錯法)。
始終傾向於幫助直接的同伴,而不是等待老師或高階開發人員去幫助所有人。能力較差的同伴將更快獲得幫助,而能力較強的同伴將成為導師並體驗由此帶來的滿足感。
提問和回答問題是一門藝術。練習提出正確的問題以找出您需要知道什麼,以及當別人問您時解釋您正在做什麼至關重要。如果您不擅長這樣做,請詢問您的同伴是否可以與他們安排會議,他們提問,您解釋您的程式碼如何工作,反之亦然。
同行評審也是練習這方面的好地方(參見下文)。
釋出您的作品
通常來說,釋出您的作品非常值得,包括原始碼、經驗教訓、挑戰等。您的同行會覺得這非常有用,更廣泛的社群也會如此。
當您找到有用的答案時,請寫下來。將您的程式碼放在像 GitHub 或 GitLab 這樣的社交程式設計網站上,並在部落格上寫下您的想法。透過社交媒體分享您的出版物。
撰寫過程不僅會澄清概念,您還會獲得社群的驗證和/或反饋。這可以幫助您在行業中嶄露頭角。
即使您認為自己的成就微不足道,您也可能比您想象的更瞭解,而且總會有人在掌握程式碼的旅程中處於早期階段,會發現您的作品很有用。
參與開源
結交朋友和影響他人的另一種方法是尋找開源專案並提供更新以修復他人工作中的問題。只要您禮貌和尊重,並解釋您的更改及其背後的原因,專案所有者將非常感謝您的貢獻。您的更新還將為您提供寶貴的經驗和實踐。
例如,MDN 的原始碼在 GitHub 上可用,我們有許多您可以處理的問題。MDN 上有大量的社群資源,描述了該專案以及如何為其做出貢獻。
如果您不確定什麼是開源以及為什麼要開始貢獻,或者如何開始貢獻,以下兩者都非常有用:
團隊合作和同行評審
您經常需要與其他開發者組成團隊工作,不同的團隊成員在團隊中扮演不同的角色。我們將在工作流程和過程中探討您將遇到的不同角色和常見工作策略,但現在,請思考在團隊中工作意味著什麼:
- 共同擁有您正在從事的專案——無論是成功還是失敗。
- 共同計劃您將要做什麼,以及如何協作實現它。您將使用什麼流程?您將如何衡量成功?您有多少時間;需要實現哪些目標,以及何時實現?
- 定期公開溝通,確保問題及早發現,並且每個人都知道正在發生什麼。
- 始終對其他團隊成員表現出同理心,尤其是在事情不按計劃進行需要調整時。
- 互相幫助以取得成功。
即使您沒有在進行真實的開發專案——您可能正在進行大學模擬專案,或者正在從事自己的業餘專案——您也應該像真實的軟體專案一樣進行實踐,包括時間表、計劃和職責。瞭解典型的軟體開發生命週期。學習一些基本的專案規劃技能和工具,以便能夠估算和規劃您的工作。
開始進行同行評審也是一個好主意——同事將互相評審工作,並就如何改進提供反饋。審查的領域可能包括總體程式碼質量和對程式碼樣式指南的遵循、效能、遵守最佳實踐、可用性和文件質量。無論您是評審者還是被評審者,您都能從中受益匪多:
- 如果您正在評審他人的工作,請力求在鼓勵和表揚優秀工作與批判性反饋之間取得平衡。練習如何建設性地、尊重地提供反饋。即使它們看起來微不足道,在討論或評審同伴工作時,也總要提出一兩個問題。
- 如果您的工作正在被評審,請儘量不要將批評視為人身攻擊,而是專注於積極的方面以及您可以學習到的東西。假設您的評審者是出於好意——他們只是想提供幫助。
學會擁抱失敗
導致學生和新開發者迴避實驗和冒險(例如,在開始新專案或探索新想法時)的一個非常常見的問題是對失敗的恐懼,以及它將如何被同伴/隊友評判。您應該花一些時間瞭解從錯誤中可以獲得的價值。
失敗實際上只是通往成功之路上的一個小臺階。所有最成功的開發者都曾多次失敗,重要的不是實際的失敗,而是您如何處理這種失敗,以及您從中吸取的教訓。
這裡有一些提示:
- 定義一個安全的空間/同伴小組,人們可以自由提問——請記住,沒有“愚蠢的問題”,只有那些不提問的人。培養一種同伴互相支援、失敗不被嚴厲評判的文化。
- 尋找您的網路,嘗試尋找可以給您幫助和建議,或者面臨與您相同問題並能提供精神支援或一起實驗的線上或線下小組。
- (對於教育工作者)設定您的評估評分方案,以便即使您沒有獲得正確結果,只要過程記錄良好,您仍然可以獲得合理的分數。為創新額外加分。
- 在專案進行到一半時,與同伴和導師進行展示和講解或一對一會議,以獲取反饋和見解,瞭解您哪裡出了問題,並獲得如何回到正軌的建議。
- 舉行回顧會議,分析專案,看看哪些地方做得不好,並討論下次如何改進。