<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從疫情到求職寒冬,我的算法求職經(jīng)歷

          共 5513字,需瀏覽 12分鐘

           ·

          2021-02-05 21:27

          《從杉數(shù)到滴滴》系列又來(lái)啦

          大家好!


          經(jīng)過(guò)了近一個(gè)月的混亂期,找工作期,疫情嚴(yán)重期和求職寒冬期,我最終選擇了快手的商業(yè)化(廣告)部門(mén)從事算法工程師(深度學(xué)習(xí),實(shí)習(xí))相關(guān)的工作,結(jié)束了自己的失業(yè)期。這一個(gè)月來(lái),感謝朋友們,學(xué)長(zhǎng)學(xué)姐們,老師們,同事們的鼓勵(lì),推薦和鼓舞,也感謝自己每天早九晚十一的刷題和復(fù)習(xí)(雖然真的不想第二次這樣了,也不想再一次被毀約了)。這一篇文章就是上一篇文章(鏈接)的下一篇,主要以我這個(gè)月的面試經(jīng)歷為基礎(chǔ),希望能夠給大家介紹一些面試的注意點(diǎn),面試官和公司所看重的知識(shí)與技能,并提供一些面經(jīng)給大家做參考。


          那么我們開(kāi)始吧。


          概況

          10月底開(kāi)始面試滴滴的社招崗位,11月17日停止工作,11月24日被通知offer被撕,12月3日通過(guò)快手面試,又過(guò)了兩周入職,差不多經(jīng)過(guò)了一個(gè)多月的時(shí)間,這中間一共收到了這么幾家公司(精確到部門(mén))的面試邀請(qǐng)。

          字節(jié)跳動(dòng)tiktok推薦算法工程師

          字節(jié)跳動(dòng)抖音推薦算法工程師

          騰訊游戲AI算法工程師(應(yīng)用研究崗位)

          快手商業(yè)化廣告算法工程師

          百度上層排序組搜索推薦算法工程師

          正仁量化投資公司研究員(quant)

          以上均為實(shí)習(xí)。最終快手,百度和正仁量化通過(guò)了面試。加上之前的滴滴國(guó)際化算法工程師社招崗位,一共經(jīng)歷了7個(gè)部門(mén)的面試。這些公司有互聯(lián)網(wǎng)也有金融,面試的風(fēng)格雖然大部分受制于面試官,但公司的文化,部門(mén)的核心程度,部門(mén)所做的工作,都影響著面試的氛圍和難度。因此希望通過(guò)幾個(gè)部門(mén)的面試題對(duì)比,能夠讓大家更好地了解目前找實(shí)習(xí)的難度,并希望更多對(duì)此感興趣,但對(duì)前景迷茫的朋友,能夠更有方向,拿到自己喜歡的offer。

          注意:所有的面試題均有一些小小的改動(dòng)(有的是改了問(wèn)法,有的是改了細(xì)節(jié),有的則是模糊處理等等),但大體上不影響對(duì)比和理解。同時(shí)不推薦大家去背面試題(除了leetcode),因?yàn)楹芏嗝嬖嚬贂?huì)有換題,考察面試者能力也有千奇百怪的考法。

          01

          字節(jié)跳動(dòng)tiktok/抖音推薦算法工程師

          字節(jié)跳動(dòng)的推薦算法不用多說(shuō),絕對(duì)是核心中的核心。他們家面試有三輪,每一輪都會(huì)有代碼能力的考察。我們放一些題目具體來(lái)分析。

          tiktok

          敘述集成學(xué)習(xí)的好處

          敘述gbdt與隨機(jī)森林的區(qū)別與聯(lián)系

          敘述xgb可以調(diào)整的參數(shù)

          敘述非均衡問(wèn)題的可能的處理方案

          代碼題:給你一個(gè)數(shù)組,在這個(gè)數(shù)組中找出不重合的兩段,讓這兩段的子段和之差最大,返回最大差

          敘述推薦系統(tǒng)的協(xié)同過(guò)濾算法的原理

          敘述描述向量相似性的可能方案

          是否了解Spark與Flink?

          代碼題:給定一個(gè)正方形的中心點(diǎn),給定平面上的其他點(diǎn),給定一個(gè)整數(shù)K,找到一個(gè)合理的,邊長(zhǎng)最小的正方形,可以涵蓋最少K個(gè)點(diǎn)。

          敘述word2vec的原理

          敘述常見(jiàn)的降維方案

          敘述過(guò)擬合的定義與神經(jīng)網(wǎng)絡(luò)降低過(guò)擬合的可能的解決方案

          是否了解梯度下降法相關(guān)的優(yōu)化方法

          代碼題:一個(gè)m長(zhǎng)有序數(shù)組,一個(gè)n長(zhǎng)有序數(shù)組,找它們的中位數(shù)。

          問(wèn)如果一個(gè)推薦系統(tǒng)給一個(gè)視頻錯(cuò)誤了添加了流量,有什么可以糾正的方法?

          抖音

          聊簡(jiǎn)歷

          代碼題:大數(shù)乘法,要求復(fù)雜度O(n log n)。

          我們就不回答這些題了,大概的描述和公司的對(duì)比才是這一篇文章的主要內(nèi)容。想看對(duì)題目的解釋和分析,可以看一下我的知乎live。

          對(duì)于這些題目,我們可以把它們分為三塊:機(jī)器學(xué)習(xí)基礎(chǔ)知識(shí),深度學(xué)習(xí)基礎(chǔ)知識(shí),代碼題。

          01

          機(jī)器學(xué)習(xí)基礎(chǔ)知識(shí)

          1-4,11,13(題號(hào)就辛苦大家按順序數(shù)一下!)考查機(jī)器學(xué)習(xí)的基礎(chǔ)知識(shí)。對(duì)于算法工程師而言,機(jī)器學(xué)習(xí)基礎(chǔ)知識(shí)是重中之重。算法工程師在大廠中,是真的需要靈活運(yùn)用各種模型,寫(xiě)各種Python和C++/Java,并且進(jìn)行分析的。在一些深度學(xué)習(xí)組更是需要時(shí)常跟進(jìn)頂會(huì)paper

          02

          深度學(xué)習(xí)基礎(chǔ)知識(shí)

          6,7,10,12考察對(duì)深度學(xué)習(xí)的了解,這需要結(jié)合部門(mén)的業(yè)務(wù)來(lái)看。推薦,尤其是抖音/tiktok的推薦,都是極度依賴深度學(xué)習(xí)模型的,因此面試官希望面試者具備這方面的了解。

          03

          代碼題

          5,9,14,包括抖音的2是Leetcode中的題目,leetcode是一個(gè)刷題社區(qū),也是互聯(lián)網(wǎng)大廠考察算法與數(shù)據(jù)結(jié)構(gòu),代碼能力的題庫(kù)。一般我們會(huì)使用社區(qū)中,leetcode標(biāo)記的難度(easy,medium,hard)來(lái)判斷面試的難度。刷過(guò)leetcode的可以看出來(lái),這四個(gè)題有2個(gè)是hard,有一個(gè)是ACM競(jìng)賽難度(大數(shù)乘法的最快算法是快速傅立葉變換),對(duì)于算法面試來(lái)說(shuō)已經(jīng)是地獄難度了。

          04

          場(chǎng)景題

          15是場(chǎng)景題,也可以認(rèn)為是業(yè)務(wù)面

          字節(jié)跳動(dòng)(Bytedance)的面試難度,個(gè)人認(rèn)為在國(guó)內(nèi)可以排前三(有句話說(shuō)得好,叫通過(guò)Google面試不一定能通過(guò)字節(jié)面試)。面試tiktok部門(mén)的時(shí)候在三面被刷,面試抖音部門(mén)的時(shí)候更是一面直接被刷(所以面經(jīng)也只有兩個(gè)題嗚嗚嗚)。

          02

          騰訊游戲AI算法工程師(應(yīng)用研究崗位)

          騰訊游戲也是騰訊一個(gè)相對(duì)核心的部門(mén),因此內(nèi)部的工程師也是具備很強(qiáng)的算法與工程能力的。

          聊簡(jiǎn)歷

          類似字節(jié),問(wèn)決策樹(shù)的構(gòu)造,GBDT,XGB等常見(jiàn)模型。

          敘述一下強(qiáng)化學(xué)習(xí)的基本原理,并列舉一些Value-based的算法。

          敘述一下繼承和多態(tài)的概念與區(qū)別。

          敘述一下反射的含義。

          代碼題:Leetcode 戳氣球。

          這里很有特點(diǎn)的題目就是3-5。


          3考察了強(qiáng)化學(xué)習(xí)的一些細(xì)節(jié)。這是因?yàn)?strong style="box-sizing: border-box;">游戲部門(mén)有很多算法是依賴強(qiáng)化學(xué)習(xí)的。


          4-5考察對(duì)軟件開(kāi)發(fā)的基礎(chǔ)知識(shí)的了解,也是我面別的部門(mén)的時(shí)候沒(méi)有遇到過(guò)的情況。這是因?yàn)轵v訊游戲部門(mén)的工程師很多時(shí)候會(huì)算法開(kāi)發(fā)一起做。


          另外,6也是一道hard。


          我因?yàn)闆](méi)有太深入研究過(guò)強(qiáng)化學(xué)習(xí),開(kāi)發(fā)那一塊也做得少,因此這一塊回答的一塌糊涂??赡芤?yàn)檫@個(gè),盡管代碼題我出來(lái)了,但一面結(jié)束之后也就沒(méi)下文了。

          03

          快手商業(yè)化廣告算法工程師

          快手面試有兩輪,每一輪都有代碼能力的考察??焓稚虡I(yè)化是一個(gè)近兩年快手開(kāi)始重視的部門(mén)。雖然不是最核心的(最核心肯定還是快手短視頻推薦什么的),但是也是一個(gè)業(yè)務(wù)量很大,嚴(yán)重依賴深度學(xué)習(xí)的部門(mén)。

          聊簡(jiǎn)歷

          機(jī)器學(xué)習(xí)基礎(chǔ):gbdt,xgb,常見(jiàn)評(píng)判指標(biāo)等。

          是否了解sigmoid函數(shù),求它的導(dǎo)數(shù)和簡(jiǎn)便表達(dá)。

          cross-entropy是什么?用在什么場(chǎng)景?

          了解CNN嗎?感覺(jué)它和一般的ANN相比設(shè)計(jì)思路差別在哪里?

          矩陣分解的基本思路?

          代碼題:拓?fù)渑判颉?/p>

          代碼題:二叉搜索樹(shù)中找第K大。

          代碼題:找一棵樹(shù)中,兩個(gè)節(jié)點(diǎn)的公共祖先。

          代碼題:反轉(zhuǎn)鏈表。

          總體的考察點(diǎn)和字節(jié)跳動(dòng)很像:機(jī)器學(xué)習(xí),深度學(xué)習(xí)(3-6),代碼能力。但是區(qū)別在于快手的關(guān)注點(diǎn)更加集中于業(yè)界常使用的一些知識(shí)點(diǎn)上。對(duì)于代碼題的考察也聚焦于常見(jiàn)的算法與數(shù)據(jù)結(jié)構(gòu)的簡(jiǎn)單應(yīng)用,難度適中但考察的面廣。我個(gè)人不太喜歡刷偏難怪的東西,因此很對(duì)我胃口,當(dāng)然最后也就通過(guò)了面試。

          04

          百度上層排序組搜索推薦算法工程師

          百度面試也是三輪,但是第三輪是經(jīng)理面(總監(jiān)面),前兩輪有對(duì)代碼能力的考察。百度作為老牌BAT之一,近兩年倒是不止一次的被人吐槽過(guò)業(yè)務(wù)下滑,但是他們家的原始技術(shù)的積累和成熟度,說(shuō)是國(guó)內(nèi)頂尖肯定還是沒(méi)問(wèn)題的。

          聊簡(jiǎn)歷

          機(jī)器學(xué)習(xí)基礎(chǔ):lr,svm(硬間隔與軟間隔),gbdt,xgb,它們?nèi)绾巫霾⑿谢模?/p>

          敘述優(yōu)化中共軛梯度法和牛頓法的原理。

          word2vec原理?

          介紹一下LSTM和GRU的設(shè)計(jì)思路與對(duì)比。

          敘述Attention,Transformer和Bert的原理。

          代碼題:Leetcode 編輯距離,交叉鏈表。

          總體來(lái)說(shuō)百度的面試難度介于快手和字節(jié)之間。代碼題為1個(gè)hard和1個(gè)medium,但對(duì)基礎(chǔ)知識(shí)的考察比較嚴(yán)謹(jǐn)和細(xì)節(jié)。另外百度這一個(gè)部門(mén)的面試題,可能學(xué)nlp的人看到會(huì)狂喜,這是因?yàn)榘俣人阉鲬?yīng)對(duì)的絕大部分場(chǎng)景都是自然語(yǔ)言,自然需要很多自然語(yǔ)言處理方向的知識(shí),通過(guò)面試題5,6,以及代碼題的編輯距離,其實(shí)都能看出來(lái)這一點(diǎn)。


          不過(guò)這里要感謝的是三輪面試的面試官都是比較nice的人,聊完我們加了微信,也問(wèn)了一些nlp相關(guān)的問(wèn)題,補(bǔ)充項(xiàng)目的方法等等。我沒(méi)有學(xué)過(guò)nlp的東西,因此回答基本上都比較一知半解,對(duì)深度學(xué)習(xí)訓(xùn)練遇到的常見(jiàn)問(wèn)題更是毫無(wú)思路。雖然二面的小哥和我說(shuō)“在項(xiàng)目經(jīng)驗(yàn)這一塊上,你不能加分”,但可能看在我其他問(wèn)題回答的還行,所以還是給我通過(guò)了面試。

          05

          滴滴國(guó)際化算法工程師(社招面試)

          滴滴我一共經(jīng)過(guò)了四輪面試(2輪技術(shù)面,2輪業(yè)務(wù)面),如果加上HR面,那么就是六輪面試……u1s1,雖然他們家HR撕了我的offer,但是他們的leader和同事還是比較友好的。滴滴國(guó)際化部門(mén)是一個(gè)新的部門(mén),也會(huì)做拼車(chē),順風(fēng)車(chē)等滴滴核心業(yè)務(wù),但總體的數(shù)據(jù)量還比較初期,因此算是一個(gè)中規(guī)中矩的算法崗位。

          聊簡(jiǎn)歷

          機(jī)器學(xué)習(xí)基礎(chǔ):決策樹(shù),隨機(jī)森林,xgb,lgb,gbdt,svm(核函數(shù),正定性等),sgd。

          代碼題:四則運(yùn)算表達(dá)式解析

          代碼題:Dijsktra算法

          敘述Adam的原理,用到了物理的什么概念?

          敘述CNN中卷積和池化的原理。

          敘述Python中tuple,list,set,dict的區(qū)別。

          是否了解在線學(xué)習(xí)?舉出它的核心思路。

          討論深度學(xué)習(xí)中“雙下降”曲線的出現(xiàn)原因。

          敘述MapReduce的原理。

          是否了解Kafka?

          敘述Spark中RDD的設(shè)計(jì)原理?

          場(chǎng)景題:青桔單車(chē)的地區(qū)分配和人力調(diào)動(dòng)問(wèn)題。

          到了社招面試的階段,可以看出對(duì)基礎(chǔ)知識(shí)的要求相比較實(shí)習(xí)面試要高了一個(gè)層次,考察更加靈活,同時(shí)也有增添對(duì)深度學(xué)習(xí)(5,6),分布式(10,11,12)和Python(7)的考察(盡管部門(mén)用不到深度學(xué)習(xí))。同時(shí)加了專門(mén)的業(yè)務(wù)面,考察一個(gè)人對(duì)一個(gè)具體業(yè)務(wù)的設(shè)計(jì)思路。這很多時(shí)候是希望面試者已經(jīng)具備了在某一些業(yè)務(wù)上的深入了解,并且希望在入職之后,能夠很快上手,并且完成核心任務(wù)。換句話說(shuō),如果實(shí)習(xí)生是進(jìn)去學(xué)習(xí)的話,那么正式崗就是進(jìn)去扛大旗的。我?guī)缀鯖](méi)有工作經(jīng)驗(yàn),所以業(yè)務(wù)基礎(chǔ)幾乎為0,這也使得在最后談薪資的時(shí)候,沒(méi)有比較明顯的競(jìng)爭(zhēng)力。

          06

          正仁量化投資公司研究員(quant)

          量化投資屬于金融行業(yè)。不同于傳統(tǒng)的金融業(yè)務(wù),基金等,量化投資(quant)是相對(duì)比較tech,比較需要理工科思維的一個(gè)崗位。對(duì)于這一家公司,大家可以在百度搜索,在此非常感謝他們提供面試機(jī)會(huì),并給我這個(gè)小白詳細(xì)介紹了他們做的事情和對(duì)應(yīng)的背景。


          quant沒(méi)有相關(guān)的題庫(kù),面經(jīng),是因?yàn)橄啾容^互聯(lián)網(wǎng)來(lái)說(shuō),招聘更加自由,且沒(méi)有硬性對(duì)leetcode的考察。比方說(shuō)他們正在做一個(gè)降維,就會(huì)直接把這個(gè)主題丟給面試者,希望面試者和他們討論一個(gè)方案。當(dāng)然quant正式崗還是很卷的崗位,對(duì)應(yīng)的面經(jīng)也和互聯(lián)網(wǎng)技術(shù)面試差別很大,這里我們就不詳細(xì)介紹了。

          07

          對(duì)比與面試準(zhǔn)備技巧

          回頭看這么幾家公司的面經(jīng),有各自的特點(diǎn),但也有很多共通的地方。

          01

          關(guān)于Leetcode

          互聯(lián)網(wǎng)公司考察leetcode幾乎已經(jīng)成為了一個(gè)共識(shí),大部分情況下算法工程師考察的難度都是medium,但是對(duì)于相對(duì)核心的組,考察hard的可能性也存在。不過(guò)這個(gè)也取決于面試官的認(rèn)知,有的面試官就很不喜歡leetcode,但又很希望考察代碼能力,那么就有可能通過(guò)考察Python,開(kāi)發(fā)基礎(chǔ)知識(shí),或者簡(jiǎn)單的算法與數(shù)據(jù)結(jié)構(gòu)模版題來(lái)達(dá)到這個(gè)目的。就我個(gè)人的面試經(jīng)驗(yàn)來(lái)看,字節(jié)跳動(dòng)的面試官更有可能在leetcode上出偏難怪的題目,因此對(duì)于他們家來(lái)說(shuō),面試之前多刷leetcode就是一件很有必要的事情。

          02

          關(guān)于算法面試的知識(shí)儲(chǔ)備

          對(duì)于算法工程師來(lái)說(shuō),基本上面試題可以拆分為機(jī)器學(xué)習(xí)基礎(chǔ),深度學(xué)習(xí)基礎(chǔ),業(yè)務(wù)能力,代碼基礎(chǔ)這幾塊。對(duì)于一些更加特殊的部門(mén)(比如說(shuō)騰訊游戲,菜鳥(niǎo)物流等),還有可能會(huì)考察到強(qiáng)化學(xué)習(xí),運(yùn)籌優(yōu)化等。其實(shí)脈脈,??途W(wǎng)中已經(jīng)有了很多的面經(jīng),但需要強(qiáng)調(diào)一句話:務(wù)必結(jié)合業(yè)務(wù)來(lái)判斷考察的知識(shí)點(diǎn)。像xgb,gbdt等考點(diǎn)絕對(duì)是高頻中的高頻,這是因?yàn)閷?duì)于比較傳統(tǒng)的問(wèn)題(用戶增長(zhǎng),風(fēng)控等),以gbdt為代表的樹(shù)模型占有絕對(duì)的王者地位。具體的面試考察點(diǎn)我在我的知乎live中也有給大家總結(jié)。

          03

          關(guān)于學(xué)習(xí)方法與學(xué)習(xí)資料

          勤學(xué)習(xí)和拓寬視野是一個(gè)算法工程師必備的能力。事實(shí)上這里的面試題,有很多我都不能夠很好的答出來(lái),但是這里我依然推薦大家勇敢和自信的向面試官表達(dá)自己的觀點(diǎn)。實(shí)際的工作場(chǎng)景中,主動(dòng)溝通和隨和是讓工作這一件事情變得愉快的非常重要的品質(zhì),因此這一點(diǎn)其實(shí)能給面試官非常積極的暗示。不過(guò)這一件事情也是有好有壞的,推薦主動(dòng)表達(dá)不代表推薦胡說(shuō)八道,因此最好大家保持對(duì)這一個(gè)行業(yè)的興趣,多尋找相關(guān)行業(yè)的學(xué)習(xí)資料。諸如Datawhale,李宏毅課程,天池,Kaggle等都是很好的開(kāi)源資料。我的專欄就更不用說(shuō)了(滑稽)

          04

          關(guān)于“內(nèi)卷”帶來(lái)的競(jìng)爭(zhēng)壓力

          最后一點(diǎn)是關(guān)于競(jìng)爭(zhēng)壓力的問(wèn)題。對(duì)于應(yīng)屆生面試(工作經(jīng)驗(yàn)1年及以下)或者實(shí)習(xí)生面試,面試官的考察中幾乎不會(huì)涉及到業(yè)務(wù)面。更進(jìn)一步地說(shuō),對(duì)于項(xiàng)目經(jīng)驗(yàn)相關(guān)的問(wèn)題,面試官都會(huì)相對(duì)比較寬容,除非他們部門(mén)完完全全不缺人。但也不要輕視“聊簡(jiǎn)歷”這三個(gè)字,因?yàn)楹?jiǎn)歷造假或者浮夸是招聘中極為常見(jiàn)的現(xiàn)象,所以是否對(duì)簡(jiǎn)歷項(xiàng)目有很好的掌握和理解,也是面試官需要重點(diǎn)考察的一個(gè)部分。但是如果是傳統(tǒng)的社招面試,則業(yè)務(wù)面是一個(gè)很關(guān)鍵的部分,畢竟如果沒(méi)有幾年的工作經(jīng)驗(yàn),其實(shí)公司招聘一個(gè)人就很難保證這個(gè)人有足夠的經(jīng)驗(yàn)去快速上手并承擔(dān)公司的業(yè)務(wù)。

          08

          小結(jié)

          衷心希望世界和平

          希望這些面試資料以及我自己對(duì)于面試情況的分析能夠幫到大家。


          “整理不易,點(diǎn)贊三連
          瀏覽 46
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  思思热思思操 | 久久99久久99精品免费看小说 | 日韩三级片在线看 | 干屄免费看 | 一本不卡免费特黄视频在线观看 |