0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一名算法工程師的學(xué)習(xí)經(jīng)驗和求職經(jīng)驗

工程師人生 ? 來源:工程師吳畏 ? 2019-08-19 15:28 ? 次閱讀

今天已經(jīng)是11月初了,找工作的階段已經(jīng)進入尾聲。回想這半年的時間,充滿苦澀與艱辛,有幸拿到了幾個offer,騰訊和滴滴的SP,還有百度和華為的offer,秋招之路也畫上了一個圓滿的句號。下面分享一下自己這兩年的學(xué)習(xí)與近半年的求職路上的一些經(jīng)驗與心得,供后來人參考,不一定是最好的方法,但是大家可以借鑒一下,結(jié)合自身情況,找出最適合自己的方法。

先說一下樓主的情況,本科普通一本,碩士西南985。研究生期間走上了機器學(xué)習(xí)算法學(xué)習(xí)之路。參加過天池幾個比賽,拿到的成績一般,有幾個前20的比賽。本篇文章我只想把我學(xué)習(xí)與求職路上最干貨的東西分享給大家,那些很細致的學(xué)習(xí)路線或者求職面經(jīng)有很多大神已經(jīng)分享啦,大家可以去看一看~~~。

寫在前面的話:你是否真的決定走算法這條路。

我當(dāng)時想法很簡單,確實認(rèn)為算法,AI(機器學(xué)習(xí),深度學(xué)習(xí))這方面以后會有前途,也結(jié)合自身情況覺得可以去學(xué)一學(xué),當(dāng)真正走在路上時發(fā)現(xiàn)困難重重,曾經(jīng)一度認(rèn)為自己是不是不適合算法,但是沒有后悔,也沒有放棄,最后的結(jié)果還不錯。但是在今天這一個時間節(jié)點上,很多人都想學(xué)算法,找算法的工作,我們就要重新審視這一個問題了,你真的適合嗎,你真的有能力做到全國競爭者中的前百分之一嗎。如果對自己有信心,也覺得自己很有執(zhí)行力,并且能拿出每天8小時,持續(xù)12個月以上的學(xué)習(xí)時間,那就去做。但是我們不得不承認(rèn)的一個事實就是現(xiàn)在想做算法的人實在太多,未來一段時間各個公司能給出算法崗位HC至少不會比今年少,但是競爭人數(shù)會呈爆炸式增長,所以競爭必然會增大。

以下的部分分為兩個部分:學(xué)習(xí)與求職路上的心得和經(jīng)驗以及踩過的坑。

學(xué)習(xí)心得和經(jīng)驗

一、理論知識要扎實

既然是走算法之路,最基本的算法理論都必須要熟悉,最常見的要做到如數(shù)家珍。常見的分類,聚類,優(yōu)化算法,深度學(xué)習(xí)等等的算法最好能推導(dǎo)(要想面試表現(xiàn)做到前百分之一必須要會推導(dǎo),是加分項)。要融會貫通,對這些算法有自己的理解,面試的時候能說出自己與某某算法的一些心得和理解。比如面試官讓你講講XGB原理和優(yōu)缺點,你可以對比著GBDT或者LightGBM講,說說自己在使用的時候有什么trick。另外的算法就是數(shù)據(jù)結(jié)構(gòu)算法要掌握常見的題目。這部分也可以作為coding能力考查,最基本是看完《劍指offer》,《leetcode》,自己練習(xí)的時候可以手寫練一下,最后要達到能熟練手寫的程度。推薦在牛客網(wǎng)上的在線編程刷題,有精力的可以再看看《編程之美》和《程序員面試寶典》的內(nèi)容。

二、coding能力要過關(guān)

算法的同學(xué)coding能力是在面試中必須要考察的。所以自己的coding能力必須多練練,推薦在??途W(wǎng)的在線編程多多敲代碼。掌握類似leetcode medium程度的題目就可以了,hard程度的可以不用掌握。面試中一般會出幾道題目,要求手寫,能順利寫出的都是加分項。語言要掌握一大兩小三門語言,大語言是Java或者Cpp,小語言掌握python,SQL。有時間精力可以將常見的算法用python實現(xiàn)一下。語言不必掌握很深,但是要做到能熟練用Python或者SQL處理數(shù)據(jù),算法用Python也要掌握差不多。對于大語言來說基本語法和一些基本概念都要熟練掌握。

三、項目比賽經(jīng)歷

單單有理論的code能力是不夠的,最好能參加一兩個有含金量的比賽或者項目,盡力做一做,拿一個好名次,拿不到的話也要根據(jù)前幾名隊伍的答辯思路好好總結(jié)一下,用到什么算法,自己在項目比賽中負(fù)責(zé)什么工作,有什么創(chuàng)新點,自己有什么收獲等等,一定要好好總結(jié),因為這可能是面試官和你聊的最多的東西,所以提前一定要下功夫總結(jié)整理好。

四、實際工程trick

雖然我們都是在校生,但是面試官可能會問我們他在工作中遇到的實際工程問題,所以這部分也需要我們?nèi)ヌ崆傲私鈱W(xué)習(xí),最好的方法就是看別人的面經(jīng)進行總結(jié),下面我也會貼出自己遇到的問題,供大家參考。

五、所謂的智力題

這部分的問題最不好準(zhǔn)備,常見的一些問題可以準(zhǔn)備一下,但是不常見的問題就靠自己臨場發(fā)揮了,不過大家在平時多多留意一下。

求職心得和經(jīng)驗

一、關(guān)于每年3,4月份的實習(xí)

樓主在這個期間只投了阿里,在最后的HR面之后被掛。雖然沒去實習(xí),但是在這4-5場的面試中學(xué)習(xí)到很多。技術(shù)面一開始也很緊張,慢慢的查找自己的漏洞,然后在后面查漏補缺。所以推薦大家在3,4月份去投著試一試,雖然可能當(dāng)時的能力達不到公司要求,但是可以去增長一下經(jīng)驗。

二、簡歷

簡歷最好一頁,將最能代表自己能力的寫清楚,最好簡潔扼要。自己獲得的獎勵最好都寫上,但是盡量寫與崗位和公司match的,如獲得天池名次,國獎之類的。馬拉松獲得第幾之類的就可以不寫。

三、面試技巧

1. 面試通過=50%實力+30%運氣+20%技巧。

2. 首先要告訴自己,這不是一場面試,而是一場與自己未來同事之間的交流探討。盡量消除緊張心理,完全不緊張也是不可能的,但是還是要盡可能穩(wěn)下來。面試過程中盡量幽默,能做到和面試官談笑風(fēng)生你就贏了。在脈脈上看到的有人說做了面試官之后才發(fā)現(xiàn)其實你技術(shù)差不多就行,決定你過不過的就是看你順不順眼,所以最好能讓面試官在短短幾十分鐘里喜歡上你!

3. 在準(zhǔn)備面試的時候看過一個公眾號的文章,文章意思就是比如你的實力是80,那么你在面試中的表現(xiàn)一般是在60-100之間,如果你整場面試都表現(xiàn)平平,那么面試官對你的評分可能是60-80,但是如果你偶爾有一兩個問題沒回答好,但是另外的一兩個問題答的很完美,那么你很可能就是80-100分。面試官最后決定錄不錄用此人,更大程度上是根據(jù)面試者的最佳表現(xiàn)和結(jié)束時表現(xiàn)。所以要反復(fù)演練自己的最佳亮點和如何結(jié)束面試。

4. 電話面試的話要注意語速吐字,現(xiàn)場面試也要注意語速,可以用在草稿紙上寫一寫的方式幫助解釋。

5. 面試中遇到?jīng)]理解的問題要盡可能與面試官溝通,說不定他就在考你的溝通能力呢。

6. 在面試中遇到不會的或者完全不會的問題要在面試之前想好策略。我的策略一般是允許自己對于最多兩個問題直接說我不會,此策略一般是對于自己完全沒有把握的問題,讓面試官換另一個問題。如果你強答這個題的話只能是勉勉強強的回答一下。在一場面試中有1,2個問題說不會的沒有多大問題,但是對于其他的問題要盡量做到完美作答,這樣才有把握。

7. 關(guān)于HR面,樓主在面阿里實習(xí)生是第一次HR面,當(dāng)時聊的比較嗨,掛了,事后想想應(yīng)該是自己表現(xiàn)的太有個性和想法了,所以各位在HR面的時候盡量表現(xiàn)的老實規(guī)矩一點吧,這樣最好。。。

四、面試遇到的代表性問題

1. 比賽項目展開的問題

1.1 比賽中特征設(shè)計思路,為什么這么設(shè)計。

1.2 模型融合有什么創(chuàng)新點,為什么這么做。

1.3 針對大數(shù)據(jù)量,有什么處理方法,具體怎么做。

1.4 業(yè)界開源的分布式訓(xùn)練框架。

1.5 給出一個集群框架,每一個集群包括CPU,存儲,時序等等變量,運用什么算法或者策略使得總的效率最高。

1.6 對于某一個地區(qū)中的車輛和乘客怎樣合理安排司機-乘客使得滴滴總的收益最大(主要考慮距離)。

1.7 滴滴的拼車功能的拼車價怎么定,使用什么策略或者算法。

2. 算法理論方面

2.1 LR,SVM,KNN,GBDT,XGB推導(dǎo),算法細節(jié)(LR為何是sigmod,理論推導(dǎo)出sigmod,KNN距離度量方式,XGBoost為什么要用二階信息不用一階,LR和SVM對比,GBDT和XGB和LightGBM對比)。

2.2 CNN DNN RNN 細節(jié)以及相關(guān)問題(poll層,激活函數(shù),梯度消失彌散問題,LSTM結(jié)構(gòu)圖,深度網(wǎng)絡(luò)優(yōu)勢及缺點)。

2.3 常見排序算法的復(fù)雜度和一些細節(jié)以及改進優(yōu)化。

2.4 樹模型建模過程。

2.5 特征選擇方法。

2.6 模型訓(xùn)練停止方法。

2.7 正則化作用。

2.8 模型效果評價指標(biāo)。

2.9 AUC理解和計算方法。

2.10 Hadoop,Hive,Spark相關(guān)理論。

2.11 L_BFGS,DFP推導(dǎo)。

2.12 弱分類器組合成強分類器的理論證明。

2.13 FM,F(xiàn)MM,Rank_SVM算法細節(jié)。

2.14 map_reduce基本概念以及常見處理代碼。

2.15 過擬合的解決方法。

2.16 各個損失函數(shù)之間區(qū)別。

2.17 L1,L2正則化相關(guān)問題。

3. Coding

3.1 SQL查詢相關(guān)業(yè)務(wù)題目。

3.2 Java基礎(chǔ)(GC,死鎖,多線程,重載重寫等)。

3.3 Python基礎(chǔ)(常見數(shù)據(jù)結(jié)構(gòu)用法,類繼承,內(nèi)存管理)。

3.4 Linux處理文本日志相關(guān)常見命令。

3.5 給定n,螺旋打印矩陣。

3.6 Z字形打印樹。

3.7 基礎(chǔ)的數(shù)組,鏈表操作。

3.8 大巴車求陰影(至今沒明白什么意思)。

3.9 在一個一維坐標(biāo)軸中,給定 n 個線段起止點(ai,bi) (ai、bi 的取值在 double 范圍內(nèi)), 如何計算所有線段覆蓋的總長度,請編程實現(xiàn)。

3.10 。一個數(shù)組A[1,。..,n](n≥3),滿足A[1]≥A[2], A[n] ≥ A[n-1](第一個數(shù)比第二個數(shù)大,最后一個數(shù)比倒數(shù)第二個數(shù)大,其他位置不保證大小關(guān)系)。用最快的辦法找到一個i, 滿足A[i-1]≥A[i] ≤ A[i+1],并給復(fù)雜度。

3.11 輸入:兩個等長的數(shù)組a,b (a、b元素都不小于0),每次可對a數(shù)組做如下兩種改動中的一種

1)選取a數(shù)組中任意一個元素,將其值增加1;

2)將a數(shù)組中任取若干個元素,將其值都乘以2;

輸出:最少需要操作次數(shù),將a數(shù)組轉(zhuǎn)化成和b數(shù)組完全一樣;如果做不到,輸出-1,請編程實現(xiàn)。

3.12 數(shù)組里面連續(xù)值的和為S的區(qū)間,給出邊界。

4. 智力題/開放題

4.1 淘寶有1億總量的商品數(shù)量,你作為一個用戶通過什么辦法得到京東的商品總量。

4.2 連續(xù)遞增的數(shù)據(jù),拿出兩個,打亂順序,求拿出的兩個。

4.3 n個人圍城一圈握手問題,不能交叉,不能落單,求一共有多少種握手?jǐn)?shù)目(卡特蘭數(shù)推導(dǎo))。

4.4 54張撲克,抽去大小王,均分給4個人,問紅桃A和黑桃A在同一個人手中的概率。

4.5 對于一個query,”時效性” query的判斷,運用什么算法。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法工程師
    +關(guān)注

    關(guān)注

    2

    文章

    30

    瀏覽量

    6133
收藏 人收藏

    評論

    相關(guān)推薦

    電子工程師經(jīng)驗分享

    電子工程師在實際工作中積累了豐富的經(jīng)驗,這些經(jīng)驗對于新手工程師和電子專業(yè)的學(xué)生具有重要的參考價值。 、電路設(shè)計
    的頭像 發(fā)表于 01-14 10:14 ?54次閱讀

    為什么嵌入式驅(qū)動開發(fā)工程師可以拿高薪?

    技術(shù)領(lǐng)域具有不可替代的地位。 成為一名優(yōu)秀的嵌入式驅(qū)動工程師只需要深耕以下幾點: 1)堅實的技術(shù)基礎(chǔ): 首先,需要有堅實的基礎(chǔ),包括計算機組成原理、微處理器與微控制器架構(gòu)以及電路設(shè)計與硬件接口知識
    發(fā)表于 01-07 16:56

    KiCon 演講回顧(十三):嵌入工程師的硬件夢之 KiCad 經(jīng)驗和項目分享

    “ ?在KiCon Asia 2024,我們有幸聽到了@IAMLIUBO 的分享——嵌入式工程師的硬件夢之KiCad經(jīng)驗分享。 ? ” 以下是完整演講視頻: 為什么選擇KiCad? 跨平臺支持
    的頭像 發(fā)表于 12-09 01:02 ?253次閱讀
    KiCon 演講回顧(十三):嵌入<b class='flag-5'>工程師</b>的硬件夢之 KiCad <b class='flag-5'>經(jīng)驗</b>和項目分享

    人工智能工程師高頻面試題匯總——機器學(xué)習(xí)

    隨著人工智能技術(shù)的突飛猛進,AI工程師成為了眾多求職者夢寐以求的職業(yè)。想要拿下這份工作,面試的時候得展示出你不僅技術(shù)過硬,還得能解決問題。所以,提前準(zhǔn)備些面試常問的問題,比如機器學(xué)習(xí)
    的頭像 發(fā)表于 12-04 17:00 ?927次閱讀
    人工智能<b class='flag-5'>工程師</b>高頻面試題匯總——機器<b class='flag-5'>學(xué)習(xí)</b>篇

    OpenAI從谷歌DeepMind挖角三高級工程師

    Beyer、Alexander Kolesnikov和Xiaohua Zhai,他們在計算機視覺和機器學(xué)習(xí)領(lǐng)域擁有豐富的經(jīng)驗和卓越的技術(shù)實力。OpenAI高管在次內(nèi)部會議上透露,這三位新加入的
    的頭像 發(fā)表于 12-04 14:13 ?324次閱讀

    圖像算法工程師的利器——SpeedDP深度學(xué)習(xí)算法開發(fā)平臺

    隨著人工智能的興起,AI工程師特別是基于圖像的算法工程師日益成為炙手可熱的香餑餑。特別是在些行業(yè)市場例如工業(yè)領(lǐng)域等行業(yè)領(lǐng)域,需要根據(jù)具體場景對檢測識別
    的頭像 發(fā)表于 11-08 01:06 ?345次閱讀
    圖像<b class='flag-5'>算法</b><b class='flag-5'>工程師</b>的利器——SpeedDP深度<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>算法</b>開發(fā)平臺

    FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?

    ,共同進步。 歡迎加入FPGA技術(shù)微信交流群14群! 交流問題() Q:FPGA中的FPGA算法工程師、FPGA邏輯工程師、FPGA原型驗證工程師
    發(fā)表于 09-23 18:26

    需要無刷電控硬件工程師

    需要無刷電控硬件工程師,地點東莞松山湖。最好有5-10年經(jīng)驗,大功率電摩電控。有意私聊。
    發(fā)表于 09-11 22:51

    嵌入式軟件工程師如何提升自己?

    相關(guān)的實驗室項目或參加開源項目以積累寶貴的項目經(jīng)驗。 4.不斷學(xué)習(xí)與成長 嵌入式軟件領(lǐng)域的技術(shù)更新速度非???,因此,作為一名嵌入式軟件工程師,需要不斷
    發(fā)表于 06-12 11:20

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開發(fā)領(lǐng)域中的種專業(yè)工程師
    發(fā)表于 05-16 11:00

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程語言之。成為一名嵌入式C語言高手需要長時間的學(xué)習(xí)和實踐。下面將介紹
    發(fā)表于 04-07 16:03

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程語言之。成為一名嵌入式C語言高手需要長時間的學(xué)習(xí)和實踐。下面將介紹
    發(fā)表于 03-25 14:12

    單片機如何通過代碼控制硬件:一名工程師的分享

    今天跟大家聊聊單片機是怎樣通過代碼來操控硬件的。作為一名單片機工程師,我們平時的工作就像是給單片機編寫“指令集”,讓它按照我們的意圖去驅(qū)動各種硬件設(shè)備。
    的頭像 發(fā)表于 03-06 14:46 ?1564次閱讀
    單片機如何通過代碼控制硬件:<b class='flag-5'>一名</b><b class='flag-5'>工程師</b>的分享

    優(yōu)秀電源工程師需要哪些必備技能?

    隨著電源市場的不斷擴張,開關(guān)電源行業(yè)飛速發(fā)展,企業(yè)對電源工程師的需求日益增加,對電源工程師的技能要求也日漸提高,相信沒有位電源工程師會錯過讓自己變得更優(yōu)秀的機會。作為
    發(fā)表于 01-29 11:29