2022 轉職前端的海外求職與面試心得 (Amazon 與 ByteDance/TikTok 等)

Booking.com

OA

時間有 100 分鐘,要用 Vanilla JS 寫一個能做到 CRUD 的前端 (類似 Todo List)。因為我過去兩年都寫 React,所以 Vanilla JS 變的不太熟,雖然題目很簡單,但我的程式碼寫得很亂,被刷掉我也覺得合情合理。有要申請 Booking.com 的人,如果平常工作上都用框架,申請前要先好好補強 Vanilla JS,才不會跟我一樣簡單的東西還寫得很亂。

Datafold

如開頭提到,我今年的目標是進大廠,所以會面試 Datafold 其實是個意料之外的事,因為 Datafold 目前是在 A 輪融資階段。會接觸到 Datafold,是因為在歐洲有個很有名的軟體工程作家 Gergely Orosz (很推薦大家追蹤他) 經營一個叫 Pragmatic Engineer 的網站,而該網站有個 Talent Collective 的人才庫。你可以申請讓自己的履歷被登入在人才庫,然後該作家精挑細選的公司如果覺得你是適合他們的人才,就會主動聯繫你。被聯繫後你可以選擇要不要跟他們面試。

Datafold 就是他們的人資透過那個人才庫聯繫我。雖然我今年求職目標是大公司,但因為 Datafold 是 YC 孵化的公司,加上創辦人本身是技術背景且有大廠經驗,加上職位是全球遠端 + 美國薪水 (Datafold 前端工程師開的年薪是底薪 11 萬到 20 萬美元之間,基本上對於我的年資來說,是比各間大廠在歐洲區的薪水都還高)。總之因為這些條件,讓我覺得是個值得一試的機會,所以就面了。而這也是我今年唯一面的一間新創公司。

一面 (人資)

都是問過去經驗為主,假如有準備 behavior interview 應該這輪不會有太大問題。有被問到對於下一份工作的看法,因為 Datafold 算仍在新創階段,所以可能講的方向要偏向那方面一點 (例如想要在迭代快一點的環境,想要有更大的影響力不想在大公司當小螺絲釘云云)。

二面 (工程主管)

也都是以過去經驗為主,會針對履歷上的技術點多挖一點。一面跟二面雖然都是問過去經驗,但二面會比較是技術類的經驗,例如會針對過去寫測試的經驗問 (例如問單元測試、E2E 測試的概念與我過去實作的經驗等)。這關也會有一大部分時間讓候選人問問題,我覺得整個面試有很雙向的感覺 (就是真的深聊去了解彼此適不適合)。

三面 (資深前端工程師)

這關是技術面試,一開始先針對履歷問,因為這關是我面完 Amazon 隔週面的,所以剛準備完 Amazon LP 題,在這關的履歷問題就答的特別深入,感覺面試官覺得我分享的故事很不錯。LP 完之後是一個 code review 問題。

四面 (技術長)

這關也是技術面試,是我當工程師以來,最特別的一場技術面試。在一開始簡單自我介紹後,被問到 React Hook 的問題,我概略地分享我的想法後,面試官就問說「你有想過怎麼實現 React 的這些 Hook 嗎?」,這時我就先舉 useState 為例,然後講了一下我會如何實現;初步說完,面試官就說「不然我們來實際寫一下吧」,這時我心裡想,沒想到這麼硬,要當場寫出 React Hook。

這時面試官竟然分享了自己的畫面,我一時納悶他為何分享畫面,原來要寫的人不是我是他。這真的是非常非常特別的面試,因為過去每場我遇過的技術面試,都是作為候選人的我寫,沒想到竟然會遇到一場是面試官寫。總之我們就花了約五十分鐘開始 pair programming。在過程中每寫完一個段落,面試官就會提問題,例如「如果我們有多個 useState 要如何確保在重新渲染時,原本的值會被記得且不會亂掉」,然後我就回答我的想法,就在這樣一來一往中,把 useState 實現出來。

回頭看,我覺得我非常非常喜歡這場面試。因為是面試官寫,某種程度上我的臨場壓力小了非常多;但同時因為過程中面試官會一直提問,所以他也能有效考察我對 JavaScript 與 React 的理解,以及我的思考。過去很常聽人說把面試當成 pair programming,這場面試真的是我面過各類面試中,最有 pair programming 感覺的了。

同時這個面試方式也讓我強烈感受到這個技術長的實力,作為一間做 data 產品的公司,該技術長的強項不是前端,但通過他的提問,我可以很直接感受到他如何思考,讓我有「厲害的工程師,即使不是自己最常碰的領域,還是可以透過思考讓自己在該領域有一定深度」的讚嘆;以及他實際在寫時,我看他寫的程式碼,就覺得他寫得真好。總之在這個互動過程後,我最直接的想法是「要是我跟著這個人一起工作,我一定能成長很多」。必須說,如果往後有人問我理想的面試形式,我絕對會提跟 Datafold 的這一場。

面試小結

前端工程各家大廠面試都不太一樣,但如果用最高標準來準備每個面向,那不管遇到哪類都不怕。前端知識點用 ByteDance 的標準,在面對其他間的前端知識問題就覺得相對容易;刷題用 FAANG 的標準,在面其他公司時的刷題就覺得相對容易。

當然,用高標準來準備不是件輕鬆的事,特別是對前端工程師來說,深入的知識點、刷題在工作上很常沒有直接的應用性,很可能在準備時就覺得「反正工作上用不到」就不讀或不刷;然而就像運動員需要有大量而枯燥乏味的體能與重量訓練,才有辦法在自己的專項上有好的基礎,準備面試過程讀到比較深的東西時,如果願意直球面對,把那些深入的知識點搞懂、把那些艱澀的題刷過,在面試時就能夠比別的候選人有更紮實的基礎、更突出的表現。

寫在最後,感謝的話

和去年的文章結尾一樣,最後免不了要說感謝的話。在準備面試上,真的是依靠前人們在網路上的分享,才讓我能比較有方向性地準備。寫這篇文也是希望能夠回饋社群,讓未來要面試的人有更多資料點能參考。當然如上面提到,很多時候大環境影響的因素更大,所以我的經驗也不必然適用正在面試的妳/你,在閱讀後還請多斟酌是否參考。

感謝讀到最後的妳/你,也祝正在準備面試的每位開發者,都能在準備的過程中一步步踏實地向前邁進,最終拿到自己心中理想的機會 ?

本文由 ExplainThis 授權轉載,原文連結

瀏覽 5,680 次

覺得不錯的話就分享出去吧!
上一頁 1 2 3 4

發佈留言

Back to top button