在找工作的時(shí)候,我給Microsoft、Google、Facebook等幾家大公司都投了簡(jiǎn)歷,并且都收到了offer,但是我最后選擇了FB,因?yàn)槲覀€(gè)人是扎克伯格的腦殘粉,此外,F(xiàn)B的工作環(huán)境也令我很滿意。下面就介紹一下我在FB的面試經(jīng)歷,希望對(duì)大家有用。
FB的面試流程很規(guī)范,包括電面和線下面試。
在線編碼
Q1:給定一個(gè)字符串,通過(guò)忽略空格來(lái)檢查它是否為一個(gè)回位。
Lintcode原題link:http://www.lintcode.com/en/problem/valid-palindrome/
solution link:http://www.jiuzhang.com/solution/valid-palindrome/
Q2:大字符串相乘
Lintcode原題link:http://www.lintcode.com/en/problem/big-integer-multiplication/
solution link:http://www.jiuzhang.com/solution/big-integer-multiplication/
這一輪在線編碼的題目很簡(jiǎn)單,很容易就能通過(guò),也沒(méi)有用太久的時(shí)間,通過(guò)了之后就開(kāi)始等預(yù)約電話面試了。
Phone interview
1st Round:
電話面試一開(kāi)始,和其他的公司面試大同小異,都是先講講以前做過(guò)的項(xiàng)目的經(jīng)歷和經(jīng)驗(yàn)收獲什么的,然后會(huì)根據(jù)這些問(wèn)幾個(gè)簡(jiǎn)單的問(wèn)題。之后就開(kāi)始出具體的題目了。
我被問(wèn)了兩個(gè)問(wèn)題,其中一個(gè)我記得是:
你有兩個(gè)稀疏的向量(大量的0)。首先告訴我一種表示和存儲(chǔ)它們的方法,然后找到點(diǎn)積。
電話面試由于沒(méi)辦法把具體的代碼呈現(xiàn)出來(lái),所以需要比較具體地說(shuō)明自己用到的方法和具體應(yīng)該怎么做,盡可能讓面試官能夠考察到他希望看到的東西。
2nd Round:
這一輪還是電話面試,不過(guò)與前面的電話面試的面試官和面試內(nèi)容都不太一樣,有了很明顯的深入的問(wèn)題。
雖然如此,一開(kāi)始還是先問(wèn)了關(guān)于我的簡(jiǎn)歷和我的以前的工作經(jīng)驗(yàn)的問(wèn)題。
然后面試官又出了兩道題來(lái)考我,在回答完這兩道題之后,面試官又進(jìn)一步詢問(wèn)了我一些更加深入的問(wèn)題,比如像你為什么會(huì)這么做?在此基礎(chǔ)上再加一個(gè)條件,要怎么處理?等等這些問(wèn)題。
onsite
1st Round:
這一輪是技術(shù)面,除了對(duì)于我過(guò)去的工作學(xué)習(xí)經(jīng)歷和項(xiàng)目經(jīng)歷都進(jìn)行了更加深入的了解和詢問(wèn),還問(wèn)了我2個(gè)算法問(wèn)題:
Q1:給n個(gè)在一列直線上房屋染色,共有k種顏色,設(shè)計(jì)一種染色方案使得相鄰的房屋顏色不同,并且費(fèi)用最小。
Lintcode原題link:http://www.lintcode.com/en/problem/paint-house-ii/
solution link:http://www.jiuzhang.com/solutions/paint-house-ii/
Q2:合并k個(gè)排序鏈表
Lintcode原題link:http://www.lintcode.com/en/problem/merge-k-sorted-lists/
solution link:http://www.jiuzhang.com/solutions/merge-k-sorted-lists/
2nd Round:
這一輪依舊是技術(shù)面,整個(gè)面試下來(lái)做了很多道題,從簡(jiǎn)單到深入,這一輪面試官與之前不同的是在原題的基礎(chǔ)上對(duì)很多問(wèn)題都有延伸,進(jìn)而問(wèn)了我很多延伸出來(lái)的問(wèn)題,有時(shí)候我會(huì)卡住要求停下來(lái)想一想,然后把自己能想到的都說(shuō)出來(lái),整體表現(xiàn)還不錯(cuò),面試官都對(duì)我挺滿意的。
Q1:搜索旋轉(zhuǎn)排序數(shù)組
Lintcode原題鏈接:http://www.lintcode.com/en/problem/search-in-rotated-sorted-array/
solution link:http://www.jiuzhang.com/solutions/search-in-rotated-sorted-array/
Q2:正則表達(dá)式匹配
Lintcode原題鏈接:http://www.lintcode.com/en/problem/regular-expression-matching/
solution link:http://www.jiuzhang.com/solutions/regular-expression-matching/
3rd Round:
這一輪是manger面,與之前的做題解題相比,這一輪面試就沒(méi)那么死板,面試官問(wèn)的問(wèn)題比較“天馬行空”,給我一種生活處處有問(wèn)題,隨手就可以拿來(lái)一個(gè)問(wèn)題然后進(jìn)行發(fā)展,這種面試問(wèn)題很考驗(yàn)人,需要很靈活的思維才會(huì)能夠給出一個(gè)比較好的回答,在這方面是沒(méi)辦法進(jìn)行固定形式的準(zhǔn)備工作的,而是需要對(duì)平時(shí)生活的觀察和平時(shí)就養(yǎng)成的對(duì)問(wèn)題的深究和思考能力,不過(guò)就算覺(jué)得自己的方法思路并不是很好也沒(méi)有關(guān)系,只要有自己的想法,自信的說(shuō)出來(lái)就好了。
4th Round:
最后一輪是HR面。
這一輪面試很簡(jiǎn)單,HR也很友好,問(wèn)了一些簡(jiǎn)歷上面的問(wèn)題,然后就是一些像覺(jué)得FB未來(lái)前景和有什么改善的地方的問(wèn)題,這些問(wèn)題總體上算比較輕松,只要做了功課,能夠發(fā)表一些有道理的見(jiàn)解即可。
大概過(guò)了一周我就收到offer了,F(xiàn)B的package也很誘人。
最后,還是要提醒各位,面試時(shí)一定要淡定從容,不要結(jié)巴,面試前要準(zhǔn)備充分,做到有備無(wú)患,只打有準(zhǔn)備的仗。