一份來自亞馬遜工程師的 Google 面試指南:GitHub 9.8 萬顆星,已有簡體中文版

這位名叫 John Washam 的工程師,立志要成為 Google 軟體工程師,3 年前寫下了一篇超完整學習和面試教學,在 GitHub 上線以來,已收到近 10 萬星的好評。
評論
截圖_2020-03-24_下午6_39_04
John Washam Github 頁面截圖
評論

原文《一份來自亞馬遜工程師的 Google 面試指南,GitHub 收穫 9.8 萬星,已有簡體中文版本》刊登於「數據分析那些事」medium。這是一個專注於數據分析職場的內容部落格,聚焦一批數據分析愛好者,分享數據分析相關知識點推送、(工具 / 書籍)等推薦、職場心得、熱點資訊剖析以及資源大盤點,希望同樣熱愛數據者一同進步。也歡迎追蹤「數據分析那些事」的 Facebook 粉絲專頁

一位從 1997 年就入行的 Web 工程師,立志要成為 Google 軟體工程師,3 年前寫下了一篇超完整學習和面試教學,以此作為自己的奮鬥計畫。

這位名叫 John Washam 的工程師,換了好幾份工作,最後卻陰差陽錯在 2017 年成為了亞馬遜 AWS 的技術專家。

但這並不妨礙他的教學成為熱門,在 GitHub 上線以來,已收到近 10 萬星的好評。

而且最近這篇教學已經完成了中文翻譯,就算你沒有去 Google 面試的機會,也可以用它來好好充實一下自己。

為何寫這篇教學

作者 Washam 本人並非電腦學位,但在兒時就已經展現出對電腦的濃厚興趣,從事的工作是關於 web 程式的建構、伺服器的建構。

作為一名非專業人士轉行,Washam 已經算是相當成功。然而,他還是想去 Google 工作,真正地理解電腦系統、演算法效率、數據結構性能、低階程式語言及其工作原理。

可對這些知識都不了解的他,怎麼會被 Google 錄取呢?

於是他在網上收集了各類電腦專業知識,以及進入 Google 工作的員工分享的資源,並系統化地整理了這些資料。

Washam 強調,想去 Google 工作首先不要妄自菲薄。Google 的工程師都是才智過人的。但是,就算是工作在 Google 的他們,仍然會因為覺得自己不夠聰明而感到不安。

學習資源

接下來就跟著 Washam 的腳步去學習。

首先要做的就是選擇一種語言,在 Google 一般是 C++、Java、Python,有時也會用到 JavaScript、Ruby。背後還有一些如 SQL、HTML 等技術沒有列出。

接著開始學習電腦硬體知識:

1_8hkOrgoa6ivr6U_Cj8m4PA

然後補充電腦專業的基礎數學知識,如演算法複雜度 / Big-O / 漸進分析法、數據結構、樹、排序、圖論。

1_eBx7DeJYSKwtgOvxtmK9FQ

此外還有遞歸、動態規劃、組合與概率、NP&NP - 完全和近似演算法、緩存、線程與進程、系統設計、可伸縮性、數據處理。

看到這麼多知識點,你會不會覺得有點傻眼呢?Washam 告訴你一點小技巧。

因為你不可能一遍就記住所有知識點。所以需要把要回顧的知識點做成字卡(flashcard):正常的及帶有程式碼的,類似於背單詞。

1_30P3dAqaAmPbNpPVqZMEnw

每種卡都會有不同的格式設計。專案首頁中就有字卡的原始碼,可以根據自己的學習特點去製作。

Washam 還留有一組 ASCII 碼表、OSI 堆疊、Big-O 記號及更多的小抄,以便在空餘的時候可以學習。每寫半個小時就要休息一下,並去回顧你的字卡。

當然,論文的閱讀也是必不可少的,尤其是 Google 曾經發表的一些基礎技術論文。

1_LQuxMNaKyvhBAjLgFZMCFQ

書籍則推薦一些關於演算法和 C++ 語言之類的。

1__b4mjBnaizUrAGqrRydiZQ

去 Google 面試需要注意什麼

面試的第一步當然是要有一份好的簡歷,這樣才能為你爭取到寶貴的面試機會。知名科技布洛克 Steve Yagge 給出了 10 個訣竅,幫你做出一份還不錯的簡歷。

1_Eu56xWzj0NvEytJIFW3guw

這位 Steve 曾經在亞馬遜、Google 都工作過,Washam 的這個專案就大量地引用了他的技術部落格內容。

在面試時,你可能會遇到這 20 個問題,每個問題準備 2–3 種回答。準備點故事,而不要只是擺一些你完成的事情的數據。

1_UHRLNd_NeqwshBMNDdJH7Q

面試官在也會問你還有哪些問題,不要說自己沒有什麼要問題,可以試試問一些此類問題:

1_pxuIJe5APqTedekzeZSuww

當然,進入 Google 也不代表著結束,你還有新的學習過程等著。

Washam 還有一份附加內容,包括 Emacs 和 Vim、Unix 命令列工具、密碼學。這些內容雖然不會直接用到,但是會大大提高你的效率。

最後,在這樣一個特殊的時期,好好給自己充個電。祝大家在新的一年裏都能面試成功!

傳送門

資源地址

來自:量子位


責任編輯:Mia


最新發展:


公有雲無限儲存時代結束, Synology Drive 如何協助企業掌握成本與資料自主權?

不少企業因為檔案存取的即時性以及同時團隊協作功能,選用雲端儲存解決方案。
評論
評論

顧問公司 GoodFirms 就指出,全球已有 94% 企業正在使用雲端,並將超過 60% 資料存於當中。而這些資料裡面有近一半屬於敏感類型,包括員工和客戶資料、企業財務數據以及知識產權。

然而,近期許多提供無限儲存方案的公有雲廠商,紛紛調整服務條款:Google Workspace 取消了教育和企業的無限儲存方案,2023 年 Microsoft 和 Dropbox 的類似方案同樣跟進結束,導致儲存成本將大幅增加。同時,公有雲端空間潛在的隱私與安全性風險,也逐漸成為企業日益關注的問題,Synology 就收到不少企業用戶反映了類似困擾。

為了滿足企業「最小化儲存空間成本」與「資料所有權」兩項條件,私有雲將是更適合的解決方案。Synology 推出的私有雲檔案平台 Synology Drive,便是運行在企業本地端 Synology 伺服器上,不僅提供高度穩定性和可用性,並可依使用量彈性擴張,消除對第三方服務提供商的依賴。以下就列舉 Synology Drive 如何協助企業面對儲存空間需求增長、安全性的關鍵優勢:

輕鬆擴充空間又無須支付授權費,打造企業專屬檔案管理與協作平台

首先,Synology Drive 無須額外支付訂閱費用,組織只須隨著使用需求,購買適合容量的硬體設備即可,就算未來需求成長亦能輕鬆擴張容量,有助於最小化上雲的成本。相較於市售公有雲服務如商用情境常見的 Google Workspace,假設每位用戶都配置 2TB 儲存空間,每月即須支付 360 元,每年就得花費超過 4000 元,還得擔心未來訂閱方案更動、負擔更多成本。

不只免除雲端服務的訂閱費用,以及充足的擴充彈性,企業選擇 Synology Drive 的同時,還能使用一樣免授權費用的 Synology Office,團隊得以更即時且安全地在私有雲上協作,編輯和分享文件、簡報及試算表,加速團隊溝通效率與生產力。

當然,考量到企業仍有部署公有雲的需求,因此 Synology Drive 亦整合了 Synology C2 Storage 和其知名公有雲服務商,企業得以創建混和雲架構,像是雲地之間能輕鬆達成即時同步,甚至是備份資料,保持營運不中斷。

交還資料自主權,並針對檔案版本與分享設計安全功能

下一個優勢,為 Synology Drive 能幫助企業擁有 100% 資料控制權,敏感與機密類型的資料都可掌握在手中,保證其安全性和隱私權。Synology 也提供多種免受權的資料備份服務,幫助 IT 人員在有限預算之下,為寶貴營運資料做好檔案、系統到裝置的多層次保護機制。

另外,資料安全性涉及的範圍相當廣泛,Synology 從客戶實際使用情景,預先設計了許多應對功能。例如用戶可回溯資料的特定歷史版本,甚至能永久保存被刪除的檔案,大幅降低檔案遺失或誤刪的風險。Synology Drive 還能為整個資料夾或單一檔案加上浮水印,確認外流來源,甚至碰到裝置遺失時,可遠端移除已同步的資料夾,防止資料外洩。

Synology Drive 提供完整且便利的公開連結設定功能,可以規範外部使用者的權限,並能設置密碼、連結有效期限等安全措施。Photo Credit : Synology

行政院原子能委員會核能研究所就看中 Synology Drive 上述優勢,替換掉傳統 SMB 服務,建置高度安全且直覺操作的私有雲檔案協作平台。由於單位需長期保存研究資料,勢必需不斷擴充儲存空間,受惠於免授權費的模式,即便高達千人的規模也能符合預算需求。

另外核研所內部合作頻繁,還有許多對外分享檔案需求,而 Synology Drive 可為資料設定精細的權限,區分出檢視、評論與編輯角色,亦可規範外部對象能否下載或刪除、設定開啟密碼與檔案分享的到期日等。該單位就分享,「Synology Drive 的第一個優勢是安全性高,其次是使用的直覺便利性,第三個是價格,過去我們使用過多個品牌,Synology 性價比絕對是最佳的。」

總結來說,面對各大公有雲服務商逐步取消無限儲存方案而來的儲存成本上升,以及資訊隱私性的挑戰,Synology Drive 私有雲儲存解決方案具備擴充彈性、100% 資料自主權,且無需支付授權費,即可享有便於企業協作、共享,且能在客戶端與伺服器端安全同步資料,更適合為當前企業建置完整的資料儲存與保護架構。

Photo Credit:Synology

本文章內容由「 Synology 」提供。