前端面試心得

冠逸
BillyNote
Published in
11 min readJul 26, 2018

大家好,我是冠逸,目前是 junior 前端工程師,在面試過程中,因為自己會做一些記錄,例如: 自己應對的狀況、對公司的感想等等,而在這過程也決定如果有錄取後要來寫一篇這樣的心得文,希望能對於想面試的前端人有些小小的幫助。這篇文章主要會分成三個部份: 投遞履歷前、職缺內容、面試部份。
(特別說明: 面試雖然有一些模式在,有時候也是一些運氣成分,這篇心得純屬個人的面試準備與經驗,並沒有標準答案,有任何相關討論或問題都歡迎留言~)

投遞履歷前:

在我們投遞履歷前,想當然的我們要先準備履歷、個人網站,這些可以讓業主很快的認識我們是誰,這邊先來分享一下自己在這部分的過程。首先要先感謝六角學院的老師,提供了履歷健診以及在私訊詢問時,都能給予一些建議!
六角學院邁向前端之路,這是剛開始先參考的資料,這份文件對於新手或者是想轉職到前端的人非常的友善,因為他把學習、工作相關方向都提供的非常清楚,前 7 個關卡都是屬於技術範疇,這邊不多做討論,主要是對於第 8關後的工作相關部份。在這邊我對於個人網站製作、一頁式履歷的製作方向,都有參考一些前輩的方法,而這邊也提供自己的個人網站、一頁式履歷。除此之外,我也有在 104、CakeResume 製作履歷。
(把一頁式履歷、個人網站做出來之後,104 跟 CakeResume 的部份就會很快)

https://yaj55billy.github.io/billy-web/public/ https://github.com/yaj55billy/billy-resume

對於個人網站跟履歷如果做個分類,主要分成: 自我介紹、掌握技能、經歷(作品集)、聯絡方式,而在履歷部分通常還需填寫工作經歷,不過大致上的分類是這樣。這邊先提一些常常沒注意的部分,像是技能名稱是否正確 (JavaScript 常常被打成 Javascript),以及技術的英文名前後如果是中文,要記得帶空格(ex: 我會使用 JavaScript 來製作......)。再來我們就對於上方提到的分類依序做簡單說明。

自我介紹: 主要是對於自己在前端部份的介紹,並不需要把你家大大小小的事情拿出來講,也不太需要細講繁瑣的事情。簡單的提一下前端經歷、近期研究的技術、未來規劃等等。我自己是還有說明為什麼會喜歡前端,以及前公司工作配合的情況。
掌握技能: 履歷通常會用條列、個人網站用圖表的方式來表達,共通點就是不要只是單純讓人家知道你會 HTML、CSS、RWD......等等技術;而是要說明這些技術你可以做到什麼部分,或者在什麼專案(作品)有運用到此技術,也可以附上連結。
專案經歷(作品): 這邊來說明一下專案經歷、作品集有什麼不同,雖然他乍看下只是一個名稱,一開始我也沒注意到這個細節,是被老師履歷健診後才知道的。專案經歷指的是: 實際有前端工作經驗並參與專案開發,如果是外包經驗那也是專案經歷;而作品集是: 在前端部份,目前沒有實際工作經驗,但自己有寫一些作品。
聯絡方式: 這個就是必備的,要面試就一定要讓人家找的到人,簡單的mail、電話提供等等。
其它: 除了這些部分,還有一些觀念可以提出來分享,也是我之前有的誤區,我之前覺得履歷就是要完整,把自己會的全部塞進去,讓人家能看的到我;後來經過履歷健診跟自己思考過後,就知道為什麼要去走一個精簡俐落的路線,簡單來說,公司在看你的履歷時,有很多都是概略的看一下並判斷你是不是預期的人選,如果這時候你塞了很多的資訊,那麼觀看的人是不是會比較難聚焦呢?
這邊也想到以前有看過心理學相關書籍,內容大概是這樣: 有個團隊想實驗 "選擇比較多的時候,人們是否比較會有購買欲望",於是他們做了兩個測試來做比對,他們在商場賣果醬,第一次測試只賣 5 種類別的果醬,而第二次測試賣 20 多種類別的果醬,本來以為第二次測試的生意會比較好,畢竟它的選擇比較多;但結果竟然是第一次賣 5 種類型果醬的生意比較好,因此也驗證人很多時候並沒有辦法一次消化太多資訊,同時有太多資訊進來時,我們裝載著遠古時期的大腦會想辦法只篩選出幾個,或者就什麼都不篩選。

對於精簡內容,這邊也以履歷部分舉例:
1. 專案經歷只需放自己覺得比較棒的專案,若兩個專案用到的技術都是 一樣的話,那就擇一即可。
2. 如果你是設計轉前端,並且想走前端工程師這個方向,那就比較不需要在技能強調你會設計,來看你履歷的公司也比較能聚焦在前端工程師的部份,相對也比較不會被抓去當設計工具人使用 XD

職缺選擇:

在我們把個人履歷、網站建置完成後,再來就是去看職缺部份,在投遞或開放履歷之前,可以先問問自己:
1. 我想要什麼樣的前端工作?
2. 想提升什麼樣的技能? 例如:希望工作可以碰到框架...
3. 預期想要的公司看起來像怎麼樣? 例如: 希望到新創公司上班,希望團隊比較平行...
4. 產業類別? 想去博弈嗎? 還是遊戲產業? 或者是自有產品的公司?......
很多部份可以自己先花時間思考一下,在了解自己的需求後,對於投遞履歷、公司邀約面試時,你可以花比較少的時間做篩選,也比較不會手足無措。前置思考是很重要的,我自己是到面試時才漸漸摸索到這些部份。

這邊也提供幾個自己的篩選: 想去小公司、不找遊戲業(因為本身很少打遊戲)、不希望常態加班、職缺需求不能太誇張等等,對於這幾個部份,我也來說明一些想法:
1. 想去小公司,這個部份純粹是我個人偏好,大公司有些程序上是比較需要等待的,SOP也會比較多,自己的耐性也比較沒那麼好。這是考量到自己個性跟偏好,未來並不一定排斥大公司,事實是各有優缺。
2. 不找遊戲業,因為自己很少打遊戲,這個部分簡單來說,如果你今天對金融有興趣,那麼你到相關的產業任職前端,你也會比較得心應手,又有點"摸喇仔兼洗褲"因為遊戲對我的吸引度還好,也知道有在玩遊戲的人,相對比較清楚玩家的需求,而在開發上也會比較順利。
3. 不希望常態加班,其實本身不會到很排斥,偶爾有些狀況要幫忙都是 ok的;但如果不知道自己為何而加,或者是常態加班甚至六日都會吃掉的話,那我就不傾向選擇這些公司,畢竟一天已有 1/3 的時間是在公司了,人生還有很多事情可以做,不論想陪家人、女友、朋友或者是想繼續進修等等。
(加班狀況可能要去面試,甚至開始工作後才會比較清楚,有時候也可以事先看出一些狀況,或者像求職天眼通會有一些資訊。)
4. 職缺需求不能太誇張,這個部分會講的比較多一點,也會提到一些職缺內容。有些工作內容的刊登,不一定是懂程式的人在刊登,或者是沒有很清楚自己公司的需求,我也有看過很誇張的案例,複製別人公司的工作內容,而且完全一樣......
除了我們會投遞履歷,也會有公司來邀約我們。 以我們在投遞履歷來說,我們會先做一個基本篩選,Junior 就不會去找 Senior,還有你不會 .Net 就不可能去找相關技術要求,一定是會找跟自己技能比較有相關的職缺;但是有時候你會接到一些公司邀約你來面試,有一些公司預計要找 Java工程師,但是我們履歷技能是提到 JavaScript,或者是工作內容需要設計 banner 結果跑來找要應徵前端工程師的我們,其實這滿雷的,原則上我也會拒絕掉這些邀約,比較不會浪費雙方的時間,畢竟需求差了十萬八千里。
提到了職缺內容,有的公司也會把很多技術洋洋灑灑的都寫上去,其實去面試時,得知工作內容並不會真的需要用到那麼多技能,所以有時候不要被內容嚇壞了,我這邊的經驗是只要你對這些技能有 6~7 成掌握度就可以試試看,真的不曉得怎麼篩選,可以請教一些在業界的前輩。 如果真的不清楚自己想要怎麼樣的公司,或者是沒什麼想法,那麼不妨在一些基本需求確認後直接去面試看看,有時候跟面試官應對的過程,會刺激我們一些想法的產生。

https://www.yourator.co/
https://mit.jobs/?locale=zh-TW
https://www.cakeresume.com/
除了 104 或 1111 也能在這些地方找職缺。

面試實戰&準備:

面試是一面鏡子,這個直接實戰的過程,可以快速的了解對於技能還有面試狀況的掌握度,而當自己遇到非預期的題目或者是突發狀況時,我們也能透過這些經驗快速進化。
面試簡單來說大致上分成: 非技術型問答、技術型問答(測驗),這邊主要會針對非技術型的問答做一些分享,因為自己遇到技術型問答的部分比較少,所以就先不對這個部分做討論,技術部分可以去看看六角學院邁向前端之路的第十一關。(其實google一下也有非常多資訊)

以下就來簡述一些非技術型問題:
1. 自我介紹: 這個是一定要準備的,也不需要把家裡大大小小請出來,或者把小時候的往事提出來,除非你小時候就有寫程式的經驗。其實這個部分跟我們寫個人網站或履歷的自我介紹很類似,還有不用在意一定要講多久,其實你講得順暢讓人家對你有初步了解就可以了,這邊也順便推薦這本書: 自我介紹的技術
2. 為何從上一家公司離開? 這個也是很常遇到的問題,這裡就有兩種狀況,一種是你本來就是前端;另一種是你剛轉職到前端。不論是哪一種切忌不要用講壞話的方式來敘述前公司,這樣的行為會讓面試官從負面去聯想你這個人。
3. 為何從 XX 領域離開? XX 可以自帶,通常會是你剛轉職到前端所遇到的問題。舉我自己講的例子:在接觸到前端後,發現前端能從畫面立即知道狀況,回饋很快速,成就感的累積也比較快......。
4. 為何有一段空窗期沒有工作? 如果你是待業一段時間的話,那也很容易被問到這個問題,這邊就可以提到自己在進修前端技能,除了進修之外也額外得知 XXX 的重要等等。(XXX可以自帶,我自己是額外體會到如何規劃時間)
5. 有沒有夢想? 這個雖然相對是比較少問到,但因為自己有遇到所以也提出來,如果比較有時間也可以順道準備。
6. 如何自學? 這個部份滿好應答的,例如網路現在有很多課程,可以學習或研究相當多技術,可以順道提一下最近在研究什麼技術。
7. 平常有什麼嗜好? 這個不要去瞎掰或唬爛,因為有遇過會繼續深入探究的,不過這個部份基本上很好準備,我相信也鮮少人會去唬爛。
8. 有跟其他部門合作過嗎? 通常會是你已經有前端經驗時遇到此問題,簡單提一下你跟團隊的配合狀況,讓面試官知道你具有團隊配合經驗即可;如果你是目前沒有前端經驗遇到此問題時,也有一些應對方式,例如: 在前端領域的話,我沒有相關經驗,但是透過一些與前輩的交流,會大概知道前端在一個團隊裡......,講完後也可以順便跟公司提一些問題,像是詢問公司部門的流程大概是怎麼樣去配合,除了了解公司,也能跟面試者達到雙向溝通。
9. 對於加班的看法? 若有遇到相關問題,不建議用直接的回覆(可接受或不可),我自己大概是這樣去應對: 基本上會看狀況而定,如果公司需要幫忙當然沒問題,不過也要去看這次為何要到加班,探討是因為流程或者是自己效率上的問題,也可以順道詢問公司一些狀況。這邊也再提醒,這類的問題你自己要先想過,心中有一把尺會比較好應答。
10. 你了解我們公司嗎? 這個也滿常詢問的,尤其是你主動投遞給公司履歷時。不過不論是我們主動投遞或者是公司來找我們,這都要準備一下,基本上你答應要面試了,結果不了解你要去的公司是在做什麼也說不過去。有些領域如果你有一些了解,那也能跟面試官做一些互動,提高自己拿到 offer 的機會。
11. 對於自己滿意的專案或作品? 可先抓一個自己相對喜歡的專案(作品),方向大概是,這個專案因為做了什麼所以......。
12. 你對你自己未來的技術發展有什麼規劃? 這個問題也滿好準備的,畢竟前端有太多技能可以研究。
13. 你有什麼想詢問公司嗎? 例如: 公司部門的流程大概是怎麼樣的? 公司的前端工程師,主要是要做些什麼呢? 公司未來發展,有沒有一個預期的方向?
整個時辰會是由誰決定呢? (基本上時辰我都會特別問,因為由個人經驗決定跟由團隊討論後整合並看客戶狀況,這兩個狀況差很多,也可以猜測是否常加班。)
14. 你還有其他公司等待面試嗎? 我這邊的回答會是: 有的,不過若有遇到喜歡的公司,而且公司也錄取我的話,我這邊沒有一定要面試很多家再做決定。
15. 期望薪資? 試著提看看,我之前都是說由公司決定,但是在網路看過一些文章後,發現我們常常會有這樣的通病,讓人家決定我們的市場價值,試著自己提出來看看。 (但是自己也要去判斷,如果你提的這個數字讓你一直拿不到 offer,那麼你可能要做一些調整,也可以跟前輩請教。)

像這類非技術型問題,我自己會先大致思考要怎麼講,然後把這些記錄起來做個模型,並不需要去背這些應答法,其實只要自己有先思考過,那就不至於講不出來。對於面試表現,第1~2 次的時候會比較沒那麼通暢,不過後面就會漸入佳境。

End:

這篇文章其實頗長,看到這邊也是滿辛苦哩,雖然有用過幾次 medium,但還滿不熟的,如果有覺得段落分的比較亂請多多包含。 若有任何建議或問題都歡迎留言給我~ 3Q

--

--

冠逸
BillyNote

菜鳥前端工程 (也會寫寫跟程式無關的文章)