PTT推薦

[心得] 2020前端面試Tiktok/LINE/17LIVE/Binance

看板Soft_Job標題[心得] 2020前端面試Tiktok/LINE/17LIVE/Binance作者
scps960740
(BlueSky)
時間推噓22 推:22 噓:0 →:9

想要完整的觀看體驗,
建議Medium好讀版:https://bit.ly/3kAeLbW


— 前言
每次在準備面試的時候,最困擾的問題就是找不到類似的經驗參考,所以想把這一年面試的心得分享給需要的人。

最一開始求職的原因很簡單,因為上半年時,原本的約聘工作合約快到期,快沒飯吃了所以開始找工作。

但面試時間不是集中在上半年看起來有點奇怪,這是因為年中年尾意外遇到了一些機會是HR linkedin上邀約的,覺得有興趣就去試試看。

時間線+結果大概像這樣:

- LINE Taiwan:2019/10 ~ 2020/01 (沒Offer)

- 17Live: 2020/02 (Offer Get)

- Binance:2020/07 (Offer Get)

- 新加坡Tiktok(ByteDance):2020/11 (Offer Get)

所有面試的職位都是前端工程師/Frontend engineer。

主要是分成主動投遞(LINE,17live)跟HR linkedin上邀約(Binance,Tiktok/ByteDance),有些公司說不定已經改變了面試流程,但我想應該還是可以當個參考。

------------------------------


— 開始前,想問問題?都來加入問答LINE群吧!

開始正文前,想先分享一下我的LINE問答群~

工程師職涯初期,如果有個管道可以隨心所欲地發問,甚至認識引路人(mentor饅頭),肯定可以少走很多彎路。

所以最近我創了一個LINE問答的交流群,除了一般技術討論,也想讓剛入行前端的新手有管道可以免費詢問問題,如果我有看見我都會盡力回答!

另外有老手想加入也歡迎一起進來討論交流技術~~!

點我加入:https://bit.ly/3dWXWXi

------------------------------

— 題外話 - Tiktok & Bytedance內推機會

如果對新加坡有興趣的朋友,歡迎站內信找我幫你內推唷!


------------------------------

— 正文開始~ 背景+準備

簡單說一下背景好了,本身是私立科大資管系畢業,大四開始第一份工作。

如果不算大四工作+大三實習的話,畢業後到現在前端工作經驗是約2.5年的時間。
這篇文章一開始求職時(2020年初),在那時大概是1.5年。

會走上Web前端這條路其實也蠻莫名其妙的,因為原本在大學時,自己想做的是寫app,大二大三學了一些Android開發後想去找個Android開發的實習,結果去了實習的公司之後被分配去做Web前端…沒想到這樣誤打誤撞反而學出了興趣,最後踏上了這條不歸路。

------------------------------

— 準備方向

我想可以分成兩個部分,第一個是基本前端+JS知識,第二個是leetcode刷題。

1. 基本前端+JS知識

先說說第一個好了,我想不管前端後端面試,都要給自己一個概念:面試的重點不是想知道「你會用什麼工具」,而是想知道你「為什麼要這樣做」或「要如何解決基本的問題」

做出東西很容易,但你理解「為什麼」要這樣做嗎?

很多人可能認為只要學會XXX框架XXX工具然後做出東西就足夠了,雖然滿足業務邏輯生出產品沒有什麼錯,但對工程師來說,真正該學會的是你必須明白「為什麼要這樣做」。

舉個簡單的例子,選擇用React來做前端開發時,不該只是因為這東西很潮去用他,而是去
理解為何要用它後才決定用它。

另外,很多人在面試前總會擔心會不會被問到XXX框架或XXX工具要「怎麼用」等問題,反而卻忽略了「基本」這個心法對一個工程師來說有多麼重要。

舉個例子來說,下面一個很經典的scope問題在實戰上很常會遇到,如果沒有這方面的「基
本」JS概念應該答不出來。

for(var i = 0; i <= 5; i++) {
setTimeout(function() {
console.log(i);
},1000)


要最大程度的提升自己對JS的基本理解,像是閉包,this,event queue等等還有很多,都
是該掌握的,這裡推薦可以看看you don’t know JS這本書。

前端知識的部分,自己已經熟悉的框架跟工具,能理解其中的一些原理跟用它的理由是必要的。

以React來舉例,像是useEffect的dependencies array沒搞好會出啥問題、React內部render階段跟commit階段做了什麼事情等等,不用真的要完全理解每一行源碼怎麼寫,而是去好好的認識自己在用的工具,然而這些都不是賽擠咖稱才來準備的,平常沒事就該多思考
這些部分。

保持著不斷詢問自己「為什麼要這樣做」的態度,我覺得對自己的成長有很大的幫助!

2. leetcode刷題

第二個這其實很難說,因為前端面試不一定會遇到考leetcode的部分,但以我的經驗來說,這次這幾間分享的公司都是有遇到的,難度介於Easy~Medium,所以這還是得準備一下。


能輕鬆解決Easy等級的題目我覺得是必要的,Medium部分能掌握的就盡量掌握,Hard我是沒遇見過。

練習方向我自己是把題目的類別區分開來練習,像是Google一下把BFS DFS BackTracking等類別分出來分開練習,個人覺得蠻有效的。

------------------------------

— 接下來開始心得分享。

LINE Taiwan

管道
透過Head hunter投遞。

面試流程
做作業 1輪phone interview 2輪onsite interview (可能更多,不太清楚)。

結果
沒offer。

心得
整體面試的感覺很不錯,唯一的缺點就是可能因為是年底,等待的時間太長了… 從開始

試到最後得到結果大概搞了快3個月的時間,面的職位似乎是LINE Today的職位。

作業的部分基本上就是leetcode easy~medium題目+一些前端應用題。

一開始是HR安排視訊面試,面試當天有兩位面試官,其中一位還是前同事,世界真的好小XD。

主要是針對履歷上的專案還有前面作業題目的討論跟考一些JS的基本題目,就這樣結束了第一面,後來收到了onsite的邀約,onsite的部分約了兩次。

第一次onsite是跟一位前端主管面試,討論了一些前端知識+履歷問題,比如SSR的應用跟
為什麼要用哪些技術等等問題,後來HR進來討論其望薪資等等。原本以為到這一關就結束了,結果HR通知還要約一次final onsite,跟之後的team member面試。

第二次onsite考了不少白板題,大多都是圍繞JS應用下去考,這部分算是前端實戰+基本能力的綜合考察,硬要舉例子的話有點類似像下面這些題目的感覺。
https://github.com/mqyqingfeng/Blog

後來就掛掉了,很可惜自己的能力還不足,最後沒有得到offer,但這份經驗對我的能力提
升有很大的幫助!


17Live

管道
透過官方的bamboo投遞。

面試流程
做作業 2輪onsite interview + 1輪HR interview。

結果
offer get

心得
整體面試的感覺很不錯,這次面試的速度很迅速,兩三個禮拜就搞定了。

面試下來的感覺其實也跟LINE差不多,都是要先做作業然後onsite這樣,只是17這邊的輪次就沒有到那麼多。

作業的部分是做個小程式,考對React的熟悉度+細節處理等等,還有JS的基本能力,通過
後HR邀約onsite面試。

第一輪onsite的部分,進來兩位面試官,主要是履歷上的討論+白板題,白板題考了一題leetcode easy~medium等級的題目+follow up,還有JS的api應用,題目類型跟LINE面試時遇到的很像,可以參考上面的連結。

第二輪是跟兩位manger面試,主要是討論履歷上的專案跟一些情境題的面試,蠻印象深刻的點是詢問技術問題的時候都能得到很清楚的解釋,沒有那種被含糊帶過的感覺,很被尊重的感覺。

最後HR的部分就是行為面試+對薪資待遇的期許等等,最後很幸運的收到offer!

去年年初的時候17的辦公室搬到仁愛路上,是一整棟獨棟的辦公室,一樓裝潢也很美,重點廁所很乾淨,是個很舒適的地方,有興趣的可以去試試看。

Binance

管道
HR LinkedIn上邀約

面試流程
全程遠端,HR安排面試 3輪Tech phone interview 1輪HR

結果
offer get

心得
Binance的職缺都是遠端的職位,台北也有辦公室可以辦公,看個人興趣要不要去辦公室。


比較特別的是3輪面試都是遠端進行,我遇到的面試官有台灣人也有中國人。

第一輪,主要是跟一位台灣前端面試,面試內容是對一些前端知識的討論,像是討論類似React的render階段跟commit階段分別做了什麼事情或者Redux狀態管理的討論等等,還有些JS白板題,算是中規中矩的面試,面試官人很好讚讚。

第二輪跟上一輪面試給我的感覺差不多,只是這位面試官對性能優化的話題很熱情XD,問了很多這類的問題,像是給你一個情境去優化個web app,自己本身對於效能優化的議題
很感興趣,算是個受益良多的一場面試。

第三輪是跟Binance前端業務的大主管面試,這一關可能因為前兩關已經把要問的基本問題
都問完了,所以大多是履歷上的討論+經驗的交流,最後來了個設計類型的題目,類似給你些個情境設計JS的Object等等,結束了這次面試。

最後就是HR通知要發offer了,然後談談薪資這樣。

遠端面試真的要特別注意網路的問題,我在第一輪開始的前10分鐘wifi突然出了點問題,還好重開機就好了,真的是嚇屎人。

Binance工作是全遠端的模式,喜歡遠端辦公的可以試試看。

Tiktok/ByteDance 新加坡

管道
HR LinkedIn上邀約

面試流程
全程遠端,HR安排面試 3輪Tech phone interview 1輪HR

結果
offer get

心得
因為面的是新加坡的職缺,所以全程都是用他們家的Lark遠端面試。

這次面試的感覺跟前面的都不太一樣,可能是因為大部分時間都是在考leetcode很新奇XD,整體面試的感覺很流暢非常滿意,從開始到收到offer大概只花一個月的時間。

主要有四輪,三輪技術,一輪HR,前兩輪應該是跟senior前端,第三輪則是hiring manger。

第一輪,一開始針對履歷討論了大概10分鐘後開始考leetcode的題目,難度medium,面試官人非常親切,一開始因為我英文爛,看題目時有點眼殘,面試官還很謙虛的說是他自己的問題沒把題目解釋清楚,給人的感覺真的很棒(英文真的很重要QQ)。面試過程很像是在交流,主要是想理解候選人的CS基礎到哪裡。

另外在面試的過程有一點很重要,解題時不要自顧自的寫,要像個人講點話。解完題後有額外想補充的一定要拿出來講或討論(但別裝B)。這樣可以讓面試官覺得你不只是在解題,而是真的像在實際工作上,遇到問題提出自己的想法跟同事一起討論的感覺,我想這也是面試的重點之一,因為沒有人會想跟機器人工作。
解題過程都是英文進行的,人生第一次英文面試真的有點抖,還好最後順利通過。


第二輪,跟前一輪很像,只是這輪考了兩題,一題Easy一題Medium,另外面試官好像對效能優化的討論挺感興趣,還好之前有做過類似的事情,分享了一些用React profiler的經驗跟怎麼樣針對某些需要調整的component預防re-render等等。

第三輪,這一關是跟hiring manager 面試,應該是因為前兩關都面的差不多了,主要是討
論了履歷上的經歷,問了些前端的知識+情境設計的問題,最後我問了跟團隊有關的一些問題。這裡很有趣的一點是,面試官真的很熱情XD,介紹很多團隊在做的事情,比如團隊在用的技術等等,這一關結束後有種半隻腳已經踏入Tiktok的感覺。

第四關,是HR的關卡,很多人到了這一關可能感覺已經上了,但其實這一關被刷掉的情況也是存在的,所以還蠻膽戰心驚。主要都是一些行為模式的問題,還有聊聊薪資待遇等等,等待了大約一個禮拜的時間後offer get!

現在這個職位好像也還在招人,所以想嘗試看看新加坡工作的朋友可以試試,因為新加坡的總部是新成立的,headcount的位置應該還是很多的。

------------------------------

— 結尾

以上就是這次的心得分享,整體感覺下來面試的方向都很像,所以歸納成基本前端+JS知識跟leetcode刷題。

其中Tiktok的面試對我來說是最新奇的,因為這是我第一次面幾乎全考leetcode的面試,之前在練習刷題的時候總是懷疑自己是不是真的能夠上戰場,這一次的經驗給了自己很大的信心。

不管是leetcode還是JS的白板題,都很看重基本跟交流溝通的能力,還有真的要明白自己用某些技術的理由而不是盲目跟風,反而會不會用框架等這種問題都沒遇見過,畢竟有心法(基礎)的人學框架真的很快。

最後謝謝耐心看到這裡的人,希望這些分享能夠幫助到大家~

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.65.60.108 (新加坡)
PTT 網址
※ 編輯: scps960740 (111.65.60.108 新加坡), 03/01/2021 19:55:43

ddoll28803/01 20:15

LinuxKernel03/01 20:16Byte台幣應該有200up?

terry62303/01 20:31好強

ag0562003/01 20:53

duck1070403/01 21:13推推

superpandal03/01 21:27非常好 不過通常面試官注重點不同 IM是閒聊好工具

nitero03/01 21:30push

meokay03/01 21:34

superpandal03/01 21:47不過說實話的 討論職缺這種事情還是資訊更開放的平台

superpandal03/01 21:48更好 含引路人 因為引路人並不會知道所有事情

lairx03/01 22:08

CYFer03/01 22:10歡迎加入~有不懂或生活上需要幫忙的地方可以私訓我

Inglenook03/02 00:42

taipoo03/02 02:30

kerokan03/02 09:34

※ 編輯: scps960740 (27.125.172.215 新加坡), 03/02/2021 11:54:32 ※ 編輯: scps960740 (27.125.172.215 新加坡), 03/02/2021 12:00:27

kelen886132503/02 14:35

ZooseWu03/02 14:44我怎麼印象有看過這篇

hydradevil03/02 15:20強者, 推推!

Robias03/02 16:42推推

ilikekobe0103/02 20:42推個

jeffreyup103/03 10:28資策會上課中 推推

PHEj03/03 18:01歡迎加入Bytedance!

PHEj03/03 18:01在新加坡有問題我可以幫忙解答~

algorithms03/03 20:45恭喜

DonkeyLiu03/05 00:44

CGSBN03/06 18:26好強!

shou5003/08 17:47推分享!

superpandal03/09 02:28得證 更喜歡聽好話的群 充斥的一些不要破壞同溫層建

superpandal03/09 02:28好規則的要求者

superpandal03/09 02:31這年頭說實話說真話真的難

a8261114103/16 11:37