大家好,我是 Eric。我寫有關前端工程和職業發展的內容。許多人在前端領域中感到迷失,不知道如何進步,我希望這篇電子報能對你有所幫助。
作為一名 Senior Software Engineer,我有豐富的技術面試經驗。在這些面試中,我的職責不僅是評估面試者的技術能力,還要通過互動來判斷是否能與他們合作。我個人不喜歡把面試當作考試,而是更願意把它當作面試者主導的 pair programming。
我見過很多優秀的面試者,但也見過許多有不良習慣的人。以下是我在面試中常見的三大不良習慣。通過避免這些,你可以增加獲得 “strong hire” 的機會。
“我覺得我做不到。”
“我數學不好。”
“你能問我其他問題嗎?”
這些都是我曾經聽過面試者在面試開始的5分鐘說過的話。作為一名工程師,你應該試著理解問題,利用現有工具解決問題,並通過分解問題來逐步解決。在現實世界中,我們不太可能反覆遇到相同的問題,所以你必須學會在面對新挑戰時解決問題。不嘗試就是直接拿到一個 “不錄用” 。
大多數公司並不要求你第一次嘗試就提供完美、最優化的解決方案。先從簡單或不太優化的解決方案開始,然後指出或在最後進行重構,看看在有更多時間的情況下你能做什麼。如果面試官能理解你的思路並了解你的做法,你已經比那些完全不嘗試的人更有優勢。
相關地,不要讓你的內心聲音說服你自己無法解決這個問題。從心理上講,你最終會相信自己無法解決。這不是你在面試中想要的心態。在通話之前,試著保持冷靜,自信,告訴自己你能做到。當你感到更放鬆、更積極時,你在 coding 和與面試官互動方面都會表現得更好。
在解決任何問題之前,無論是面試中還是工作中,如果你在沒有驗證細節或詢問任何問題的情況下就開始解決問題,這不是一個好現象。系統設計輪和有時候的 coding 問題本來就故意設計得模糊不清。例如,開發一個社交網絡動態。你可能會開始定義 component、選擇 library、layout UI,然後30分鐘後面試官告訴你這不是他們想要的。雖然面試官應該早點告訴你,但作為工程師,你有責任全面考慮這個 component 的使用方式、有沒有任何限制、CSR與SSR、infinite scrolling與分頁等等。所有這些都應該在構建任何 app 時考慮到。通過提問,你通常可以開始了解面試官想要關注的重點,例如性能或可訪問性。
在簡歷上,當我看到詳細描述的React專案時,我通常會問面試者他們對React的看法或他們最自豪的專案。我經常聽到的回答是:
“在這個專案A中,我使用了React和這些庫來構建這個功能。是個很好的體驗。”
這個專案的背景是什麼?有什麼有趣的地方?你的角色是什麼?結果如何?你學到了什麼?
作為面試官,這樣的回答沒有幫助。它沒有提供任何有用的信息來表明你可能是個合適的人選。雖然我可以繼續問問題,但並不是每次我都會想。如果你的初步回答不有趣,我可能不會繼續挖掘。
對於每個專案,試著準備一分鐘和三分鐘的版本,涵蓋專案的目的、你的角色、你需要做的事情以及結果。技術和技能很重要,但我們也希望了解你如何使用這些技能來解決問題。
有什麼想跟我說的歡迎私訊問我 😄