GDE 社群焦點:Nishu Goel

Nishu Goel 是印度知名的網頁工程師,也是 Google 開發人員專家 Angular 和網路技術的專家。她告訴我們社群的參與、職涯規劃,以及學習網頁程式的最佳方法。

莫妮卡賈諾塔
Monika Janota

Nishu 上。

Nishu Goel 是印度知名的網頁工程師,也是 Google Developers 專家 Angular 和網路技術的 Google Developers 專家,Microsoft Most Valuable 專業人員。她是《Step by Step Angular Routing》(Step Angular Routing) 與 2019 年 (BPB) 與《A 手冊-on Guide to Angular》(2021 年教育指南) 的作者,以及 Web Almanac 2021 JavaScript 章節的作者,Nishu 目前任職於 Epilot GmbH ,擔任完整的堆疊工程師。她告訴我們社群的參與、職涯規劃,以及學習網頁程式的最佳方法。

Monika:讓我們先說故事。促使你成為開發人員並在開發人員社群中積極參與的動力是什麼?

Nishu:我精通電腦科學學士學位,並研究資料結構,這就是程式設計的開始所在。在工程部門第三年期間,我們藉由參與 Microsoft Imagine Cup Nationals 的競賽,透過程式碼來提供解決方案,因此與開發人員社群建立起深厚的連結。我們打造的應用程式構想是為當地學生 (尤其是女孩) 提供教育機會。我在這趟旅程中遇到了一群非常激勵人心的參賽者,包括參賽者及發起人。

自 2018 年,我的專業職涯起跑,所以我開始與 Angular 合作。Angular 成為促使我參與 GDE 計畫的主要技術。同時,我開始撰寫網誌文章,並且針對自己正在研究和學習的主題建立內容。Dhananjay Kumar 讓我踏上這趟旅程,也希望我能繼續向前邁進。我的第一篇報導是探討 Angular 的基本概念。我很快就開始在活動中演講,第一個是尼泊爾的 Angular 研討會。因此,多虧了 Angular 和網路技術的邀請,

Nishu 和其他來自年輕印度的人士。

Monika:您的專業經驗為何?

Nishu:前兩年來,對 Angular 和網路元件進行都是如此。我原本使用 Angular 建構網路,但很快就決定不再侷限於那個領域,進一步探索其他領域。我不想自己設限,以免必須切換專案。這就是我開始在 Angular 中建立網頁元件,並用於其他架構

我做的第一件事就是用 Angular 建立網頁元件我將這個檔案發布至 npm,並在 React 專案中當做示範。我已在稍後的一些講座和簡報中討論過這項功能。我的下一項工作必須使用 React 和 Typescript。現在,由於我曾與 React 合作,因此不再只使用一個架構,而是大致使用網路。那時我學到了許多網路知識,尤其是網頁效能。這時我必須開始思考最大 Contenful Paint (LCP)首次顯示內容繪製 (FCP),也就是應用程式載入應用程式所需的時間,或最長的轉譯時間。我一直致力於選擇最佳做法,來提升應用程式的效能。

基於對網頁效能的關注,我參與了 Web Almanac 並編寫 JavaScript 章節。Web Almanac 的年度報告對於整體網路環境的看法,並告訴我們使用者如何使用各種功能。去年有 860 萬個網站經過篩選,資料進行分析並顯示在報告中。此報表包含多種統計資料,例如 <script> 元素中 asyncdefer 屬性的使用狀況。有多少網站已正確使用、有多少未使用,以及與 2020 年相比改善的網站數量。上一份 Web Almanac 報告提到,約 35% 的網站在相同的指令碼中使用兩種屬性,這種反模式會導致效能降低。去年有這項論點,今年我們想嘗試這個情況是否有所改善。我也在 ngConf 和 Reliable Dev Summit 大會中演講,以網路效能為主。

印花版 Web Almanac。

Monika:你也致力為社群做出貢獻,最近您加入烏幹達非政府組織 YIYA 的自願行事,這次合作是如何開始的?合作的主要重點為何?

Nishu:首先,GDE 團隊向我們告知 YIYA 的自願性機會。Ugandan NGO 希望邀請工程師協助準備內容準備或技術功能。這項計畫旨在協助烏幹達的學齡兒童,並使用當地現有技術 (而非電腦或教科書,而非基本鍵盤手機和無線電) 為學生提供教育機會。孩子會撥打特定號碼並取得一組資訊,再使用另一組號碼來取得更多資訊,依此類推。在疫情期間,這項功能會更加實用。

我向來都參與社群及永續發展目標,因此決定與我接洽。我與 YIYA 團隊會談後,協助我取得 Python 指令碼或任何客戶提出的任何錯誤,以及入口網站的任何問題。我們合作了一小段時間。

Monika:2022 年有哪些計畫?有什麼特別特別著重的事項?

Nishu:我打算換工作,要搬到其他國家/地區。我會使用 Golang 改善整體網站效能,並改善網站效能。我會繼續討論網站效能領域,因為這個領域相當有趣且複雜,有不少值得瞭解並進行最佳化的地方。儘管我們分配了大量時間,但現在仍有許多需要學習的地方。舉例來說,我想瞭解如果透過 CDN 處理圖片資源,將能如何提升應用程式的運作速度。我想成為網站效能專家,隨著課程開始逐漸發展,我喜歡相信 :)

Monika:您提到在自己不是專家時開始寫字,只是編寫了自己學到的內容。對於剛接觸的新開發人員,您有什麼建議是他們沒有可分享的想法?

Nishu:這正是我開始寫作時的感覺。我不覺得我不該把這些內容排除在外。也許那是錯的?我擔心文章無法幫助讀者。但重點在於我撰寫的內容對我有幫助。一段時間後,我會忘記事情,然後回頭查看先前寫的內容。把事情寫下來是好主意。

本書上的 Angular Route 書籍。

我會建議大家,不論在哪個階段,只要寫作就好。即使您已完成某項課程的某個部分,您的學習是寫在紙上。您有時應知道的資訊,可能對其他還不知道的人有所幫助。你不必成為專家。寫作可助您一臂之力。無論處於哪個階段,每個人的職涯中都能獲得滿足。

Monika:建議追蹤剛學到新事物的人,因為他們已經知道所掌握的所有事情。成為專家後,就會很難記住初衷的生活樣貌。對於剛進入網站開發的使用者,有沒有什麼建議?

Nishu:許多人在一開始就詢問應選擇哪種架構,但我覺得這不是正確問題。我們隨時都在瞭解什麼,以後的階段也會派上用場。我會建議所有人不要限制這些限制,然後先使用 HTML 或 JavaScript 做為日後獲利能力。

然後無論想到什麼都不能錯過當我無意間想尋找作者的 Web Almanac 相關資訊時,出現了這種情況。我只是想:「喔,這很有趣,或許對每個人都有所幫助」有幫助。因此我以此成為 JavaScript 章節的內容主管,而我也花了六個月的時間撰寫文章。所以我認為重點是抓住相關商機並付出心力

Monika:對於整體網路技術的未來,您是否有任何預測或想法?下一個熱門主題會是什麼?什麼數字一定會快速成長?

Nishu:我很喜歡現在可在瀏覽器內執行伺服器,這是個很棒的進展。舉例來說,最近透過瀏覽器執行 Node.js 時,在系統尚未安裝 Node.js 的情況下,我們無法執行任何程式。現在我們可以透過瀏覽器完成所有工作。這對網路生態系統而言是更加重大的事。停在主執行緒外。執行緒處理也會獲得大幅改善。Web Asembly 的發展日新月異,開發人員可以做到這一點,而我認為網路生態系統的未來是未來的發展方向。