▲圖片來源:freepik,CC Licensed。
文/由 Arsene Kuo. 授權轉載,並同意修訂標題,原文《2020末2021初 junior 前端工程師求職心得》
2020 年 6 月中左右參加了 Lidemy 程式導師計畫,前陣子結業後順利找到前端工程師的正職,因此想分享一些心得。這篇先分享求職心得,後續再分享結業心得。
中間會有一大段面試心得,想看總結和要點可點擊 求職總結。
首先,直接放最終結果
投遞履歷:116 間
面試邀約:16 間(含自己投遞 11 間,公司主動邀請 5 間)
實際面試:8 次(包含同一間公司的二面三面)
得到 offer:2 間
看這數據其實投了非常多間卻沒有很多面試,且也沒有拿到很多 offer,但不管拿到多少 offer 最終還是只能選一間,而且我得到的月薪有超過 50K,就這結果來看是非常超出我預期了。
學歷:機械工程學碩士
工作經歷:沒有在資訊業的正職工作經歷
在學時沒認真學過程式語言,念大學時整體成績不錯常拿校長獎,但大一必修的計算機概論只拿 7x 分,基本上當時就是對程式語言有點排斥,之後也沒再修過 CS 相關的課程了。
研究所畢業後換了許多份機械相關的工作,當過機構工程師、專利工程師、專案經理,幾乎都待一年左右就換工作故履歷很差,後來想當 UX Designer 所以去當了一年的設計實習生,原本希望能轉正但去年剛好遇到疫情所以機會渺茫,因此另外學程式設計而展開另一條路。
原先是在 Udemy 上買前端課程學習,後來無意間看到 Lidemy 的計畫,覺得可以幫助自己更快上手並順利轉職,所以就報名並幸運地錄取了。加入後經過六個月的學習,於十二月中開始求職。
在 Lidemy 的課程最後有一部分是關於求職有關的,基本上有幾個要點
以上這幾點在這邊只有簡單描述,這篇最後會有總結,裡面會多多少少再次提到。
此外,推薦看以下這些文章
詳細過程
這間是新創公司,網路上的資料非常少,主要產品是一個叫 DreamPlayer 的教育平台。先講面試前的測驗,對方丟了一個 Google form 還有一個 React 題目的 pdf 給我。
Google form 總共有十題,其實都是面試常問的人生背景題目,只是通常都是面試時由 HR 問,看來他們是直接省略 HR 面試這一步驟,因為面試時真的沒遇到 HR。再來是 React 的題目,規定要用的工具包括 React Hook, React-Router, styled-components, Material-UI,管理狀態可用 Context 或 Redux,分為三題分別是做一個留言板、瀏覽訊息功能以及圖片上傳的預覽功能,三個都要做 RWD,這邊就不公布人家的題目。
做完交出去,當天就約面試了。
面試有兩關但都在同一天,一個是技術部門面試另一個是 CEO 面試。
第一關:技術部門
面試官有三位分別是 PM, Tech team leader 和 Front-end engineer
一開始先自我介紹,接著對面三人分別開問
第一個開問的是前端工程師:
再來是 Tech team leader(後來發現他負責後端的)
最後是 PM 發問
問完之後就讓我問問題了,我問了這些
這部分結束之後,換 CEO 和我面談。
第二關:CEO
一上來就問一個奇怪的問題,什麼如果有一間學校要蓋籃球場,學生 600 人… blah blah
聽到這邊就想說屎了…其實這題之前稍微有瞄到,我在面試前有估狗過這間公司的資料,資料真的非常少!
唯一有面試心得的還是在面試趣上,這網站的特色就是無法直接看到內容 ( https://interview.tw/c/d5lNs ),所以我沒真的看到內容,且面試職位也不一樣,所以沒特別注意到這題,結果一來就遇到!
後來隨便按自己邏輯推理,他聽完感覺只是想知道面試者怎麼思考,應該答案是啥不是很重要。
接下來列一下他問的其他問題
接著他問我為什麼是期望是這個薪水,我就分三個點來講
他問完之後就讓我發問,我就問這公司和 CMoney 有什麼關係嗎?
CEO 就滿訝異為什麼我會問,我就說是事前在網路上搜尋的資料很少,有相關的內容基本上都和 CMoney 相關,所以推測是不是有關聯。
接著 CEO 就說他們其實原本是在 CMoney 裡的一個團隊,後來才拆出來的,目前是 CMoney 有投資在他們身上,所以 CMoney 算是母公司的角色。
然後我再問如果沒錄取的話,是什麼原因呢?
CEO 就說我的特質滿符合的但期望待遇太高了,他說他也有在 CMoney 負責一些項目,而 CMoney 也有訓練轉職者的課程,按他們那邊的標準是新人大約是 42–45K,好一點的可能有到 48K,所以他們是沒法給新鮮人那麼高的薪水。
最後,他說會再和其他成員討論,大概三天左右會給我答覆。
詳細過程
這間非常特別,我在人力銀行投履歷後大概一兩天聯繫我,聯繫我的人把人力銀行回覆通知當作 messenger 來用,都只回覆很簡短的話,後來直接和我要 telegram 聯繫,最後也的確是透過 telegram 約好面試的。
面試前想找這家的資料,但基本上啥都搜尋不到,可是他們的人力銀行上的職缺薪資直接開 50K 以上,我心想這場面試可能是比較硬的,所以就多加強自己技術方面的知識。
到了面試時,面試官小遲到了一下,後來帶我去一個小房間面談,面試官先自我介紹說他是業務,聽到這邊我就想那應該沒什麼技術問題了 😆。
接著就是頗輕鬆的對談,先是讓我自我介紹,然後問一下怎麼會想離開前公司,基本上都是轉領域的人常會碰到的問題,接著展示我的作品給他看,就稍微看一下有什麼功能。
另外,比較讓我注意的是他有提到我個人網站寫的文章,我猜他可能是近期面試的公司裡唯一有點開來看的。他說覺得我是班上厲害的那種同學,可以把事情歸納整理得很清楚,他自己則是那種和同學借筆記的,聽到這邊我就是尷尬不失禮貌的微笑 😅。
然後他開始介紹公司狀況,是一個行銷整合的公司,會幫客戶做線上線下的行銷,目前沒有別的工程師,他們要找的人算是夥伴性質的。目前有固定的大客戶,之前幫客戶做網頁都是他自己在弄 Wix 或 Weebly,但後來還是覺得應該找個專門的人來處理;而因為是行銷為重的公司,所以工程師也要做 SEO。另外,工程師自備電腦,如果真的有需要配的話也是可以商量。
心得
整場面試沒什麼壓力,對方也以聊天的方式來進行這場面試,另外雙方都戴著口罩但我覺得面試官長得有點像我朋友,所以面試起來格外輕鬆(?。
不過至今我已經找到工作了,仍沒收到後續消息。
詳細過程
到了現場先填資料,其實覺得這種資料表格都存在一堆不應該在這時候填的資料,像是戶籍地址、通訊地址或緊急聯絡人,有不少甚至要家庭狀況,每次看到都直接不填寫留白了。
填完之後面試官一進來就發名片給我,先請我自我介紹,然後問一下學習的過程,接著針對學習的內容再發問,像是 XSS, SQL injection, Webpack, git, SCSS。
Webpack 的部分我沒有講很好,後面做 React 專案都用 create react app 偷懶,所以 Webpack 都忘得差不多了。
接著就開始白板題了!第一次遇到白板題令人興奮又惶恐(?
以下憑記憶還原,首先問個一題 hoisting,問會印出什麼然後解釋為什麼會得到這些結果
上面這題沒啥出槌,接著問變數覆蓋
這題答錯了,我回答三個 300,後來他問我 for loop 是怎麼作用的,我才想起來 i 最後會到 3,所以會是三個 undefined。
後來他繼續問如果要得到 100 200 300,那要怎麼做?
我先說最簡單的方式就是把 var 改成 let,他說如果不用 ES6 語法呢?我就把 for loop 內容拿出來寫成 function,然後在 for loop 裡面直接 call function,大概長這樣
再來問如果要做一個 input 然後旁邊有一個 button 要有以下效果,可以用 vue 或 react 來做,那應該怎麼設計
我寫得內容大概是這樣
後來他說這樣可以,但其實可以改 input 的 type 就好,完全忘記有這個 attribute(糗)。
因為上面這題我用了 react hook 的 useState,他就接著問我實作一個 useState 的 function
這邊我用 closure 解啦,他說可以。
白板題之後他就開始介紹公司的事情了,說公司有分三大主要業務,分別是電商平台、倉儲管理系統還有 POS 系統。
公司內部都是跑 Scrum,每個 sprint 開始會有 planning 結束有 refinement,每天下班前有 stand up meeting,目前開發團隊有 25 人左右其中兩個是 designer,目前計畫要擴編到 50 人。
薪資部分由 12 個月的底薪加固定 1 個月 bonus,另外有績效獎金分年中及年末給,此外有簽約金是要鼓勵員工待滿一年的,一般來說總共會有 14 個月。
最後問他關於我有什麼可以改進的,他提了三點
心得
事前有看到面試趣的這篇面試心得,其中有提到薪資結構,畢竟是別家網站的資料這邊我就不節錄了,總之我看了覺得不是非常有興趣,所以就當練面試經驗。
實際面過之後覺得滿好玩的,因為第一次遇到白板題,事後看自己回答得內容頗鳥的,但當下就是有點緊張,腦袋只能想出這種鳥東西。
公司和面試官整體感覺都滿好的,隔天傳訊息來約下週一的面試,原本已經答應要赴約了,即使沒興趣也當作練練面試,但我後來收到一個不錯的 offer 也答應要去上班了,所以就推掉這個二面了。
至於二面的情報,據說是由 CTO 和 CEO 進行,總之給大家參考看看。
詳細過程
事前約好時間後,面試官發了 Google Meet 的連結給我,結果時間到了不過面試官小遲到了一下。
面試官是公司的技術長,開始面試後就是請我先自我介紹,然後開始問一些過去經歷、學習的經驗還有技術使用的經驗,基本上沒有啥很硬的題目。
後來問我期待薪資,因為已經有拿到別家的 offer 了,我就直接報五萬,他說相信我有這能力可以拿到這樣的薪資,但他們沒辦法給這麼多,不過之後有案子的話可以考慮用外包的方式合作,當下我就了解這家不用考慮加入了 😆。
雖說知道應該不會去這間,但還是聊了一下,因為也可能以後真的可以用接案的方式合作。
之後他就介紹公司,公司是接案公司,而老闆是瑞士人所以也滿多歐美的案子,若英文能力好的話還滿吃香。
心得
因為後面就真的當聊天,所以真的沒啥壓力,後來互相加了 LINE 😆。
我覺得他們不是很急著找正職,還開職缺的原因可能是要用來找接案的合作對象吧,畢竟他也沒說到實際上如果要招正職進來是會給多少。
其實 Lidemy 的求職課程就有建議海投,但我一開始投遞的時候不信邪,每一間都客製化 cover letter,結果投十間只有一間約我面試,後面才調整方向開始海投且每一間的 cover letter 都一樣,所以這邊建議
海投吧~只要你懂海,海就會幫助你
不太清楚是否有很多轉職的人在做 final project,我看了一些其他的機構都建議要做(例如六角、ALPHA Camp 或是 AppWorks School),但 Lidemy 的老師是說做不做都可,沒做的話拿課程的作業來整理放在履歷和 GitHub,有做 project 的話也不見得要做完才投,一邊做一邊投履歷也行。
我的狀況是有和同學組隊進行但其實當時還沒做完,不過我在履歷有寫上這個 project 充版面,並註明 進行中 然後放上 repo,事實證明沒做完也是會被邀約面試且同樣可以找到工作的。
所以建議有在進行 project 的人,可以參考這樣的方式開始投遞,另外再放上一兩個過去做的小練習放履歷,面試邀約機率就會高點,進行面試時秀出來讓人看專案邏輯也多多少少有幫助喔。
面試前的準備
常見題目一定要準備好,也可參考 Lidemy 課綱 上的每週自我檢測,很多也真的常被問。
另外,我自己準備題目時,會訓練自己在 1–2 分鐘內把概念講完,因為我覺得真的懂的人可以用很簡潔的方式把概念說清楚,所以這部分一方面訓練自己弄懂概念,另方面也算訓練口條。
這個方法不確定是不是正確的,就提供給大家參考。
再補充一點,面試時常被問:你知道我們公司是做什麼的嗎?
或是:為什麼想來我們公司?
這問題基本上就是想了解面試者有沒事前調查公司,所以建議要查好人家是做什麼業務賣什麼產品,除非你實力強到人家非常想要你,不然我覺得滿必要事前調查的。
當然你已知該公司是博弈業的話也不用查了,因為你可能也查不到啥…
面試態度
面試過程就放輕鬆吧,畢竟面試就是雙方挑選未來同事的過程,如果你表現得自然大方,對方也能感受到真正的合作狀況是怎樣,所以我遇到題目不懂的也很自然地請對方給點提示,就想成和同學/同事一起完成一件事情,我有遇到白板題的狀況都是這樣處理的,而目前入職的公司當初面試時也是這樣應對的。
決定 offer
我是先拿到“麒凌國際”的 offer ,這家公司在網路上也可找到面試心得,所以我不另外發一篇文章了。
其實原本打算接受這家的 offer,雖不是非常滿意薪資且用的框架是 vue(我自己比較想練 React),但覺得求職時間也夠長了且目前待業中,所以真的差點就答應對方,後來還是忍住和對方商量希望給一段時間評估。
好在面完”xx 雲端”後馬上被約二面,且我太太也鼓勵我去試試,所以就應約接受挑戰,面完二面過沒多久就是老闆打來電話面試,最終得到目前的結果。
談薪水
談薪水放最後講,因為我覺得這部分滿有趣的。
通常都是面試到最後才會談薪水,但我在面“麒凌國際”時是一開始填資料就把期待薪資寫上,第一關人資進來就先討論這部分:
我一開始是寫上 48K,而人資問我:是否有最低能接受的薪資?
因為面試主管若覺得沒法給到 48K 的話就不會給更低薪水的 offer
所以我就下調到 45k,事實上這部分也真的被殺價了,最後只給殺過價的最低薪資。
如果是按常見流程,也就是面完最後才談薪水的話,只要覺得面試過程表現得不錯,那就大膽開價吧。
當然如果手上已經有別的 offer,這樣談價的勇氣就更高,因此建議第一個 offer 可以用軟一點的方式去談,拿到第一個之後就當籌碼去別家試著談更高。
我接受的 offer 是面完當下就覺得面試官肯定我的能力,後來老闆打電話過來第三次面試也稍微問一些技術問題,答完之後我覺得自己整體表現不錯所以直接開 50K(該公司的徵才頁面也是寫 50K 以上),後來對方問我最快能什麼時候上班,我就說如果你們公司給我的條件不錯,那我下週一就可以去上班了,對方就說
那我們乾脆一點,給你 5xK 這樣可以接受嗎?
這邊讓我保密一下實際薪資吧,反正就是比 50K 多一點,所以我當下就答應了。
我認為 “很快能報到” 也是談判的一個點,如果求職者能答應很快就報到,那對方遇到候選人烙跑的風險就比較小,公司也不用再重跑一次徵才流程,畢竟時間也是成本。
不過呢,公司如果不急著補人的話,這招可能也沒用,總之也是參考看看就好。
總結
其實我們課程有教後端的 express,但我之前偷懶略過那部分,所以自己知道能力上沒有比其他同學好,不過還是盡量展現自己優勢,包括面試前的技術知識、面試當下的表現談吐以及過去的工作經驗(不管有無相關),把自己能拿出來的籌碼都秀出來,最大化自己的價值吧!
這篇集中分享前端工程師的求職,之後再找個時間好好寫一下 Lidemy 結業心得,謝謝各位的閱讀。