肥貓啃魚頭
從體力和經(jīng)歷來說算是,算法工程師屬于高體力和腦力的勞動,如果到了一定的年齡,會有跟不上的時候,就算是一段時間的工作經(jīng)歷,不過以后可以有其他的發(fā)展方向。
算法工程師是做數(shù)據(jù)模型進(jìn)行推薦、分類、識別、預(yù)測等工作的建模型算法工程師,通常JD上也寫成數(shù)據(jù)挖掘工程師、深度學(xué)習(xí)工程師等。這類大體的工作就是結(jié)合業(yè)務(wù)場景,選擇合適的算法模型,將數(shù)據(jù)進(jìn)行處理后使用模型獲得結(jié)果,也被戲稱為“調(diào)參工程師”。
算法工程師可以考慮轉(zhuǎn)行自由職業(yè),很多國家成熟的IT環(huán)境讓程序員成為IT自由職業(yè)者似乎并沒有那么難,方式主要可以分為線上和線下兩種。
在大數(shù)據(jù)行業(yè)內(nèi)生存的時間越久,算法工程師其經(jīng)驗也會越得到肯定,這也是大多數(shù)資深I(lǐng)T人士定義大數(shù)據(jù)或?qū)?0、60歲的“老”專家的原因,很多IT從業(yè)者試圖向大數(shù)據(jù)轉(zhuǎn)型。
月光下的芙蓉
很遺憾的告訴你算法工程師,就是吃青春飯的也許你不高興,但是事實就是這樣,國內(nèi)沒研發(fā)環(huán)境,一般都是調(diào)用框架,現(xiàn)在算法入門比軟件開發(fā)更低,調(diào)用tensorflow訓(xùn)練一個模型,就出來了。你以為去了公司真給你研發(fā)?那公司都倒閉了。企業(yè)生產(chǎn)跟科研不一樣,不能生產(chǎn)穩(wěn)定產(chǎn)品,遲早倒閉。再說,你的算法比別人高個百分點,對生產(chǎn)無意義。公司需要落地的產(chǎn)品,所以一個公司基本上就一兩個算法工程師,需求算法工程師極少,但是現(xiàn)在讀研的人越來越多,2019年是算法火坑年,聽說北京985碩士,基本上很少有人拿到算法offer也許你不喜歡聽,但是事實就是這樣的。企業(yè)需求極少,人越來越多,以后會更多,門檻極高,算法很難做產(chǎn)品,做不出產(chǎn)品,被開除的概率極大
出格范兒
一、算法工程師簡介(通常是月薪15k以上,年薪18萬以上,只是一個概數(shù),具體薪資可以到招聘網(wǎng)站如拉鉤,獵聘網(wǎng)上看看)算法工程師目前是一個高端也是相對緊缺的職位;算法工程師包括音/視頻算法工程師(通常統(tǒng)稱為語音/視頻/圖形開發(fā)工程師)、圖像處理算法工程師、計算機(jī)視覺算法工程師、通信基帶算法工程師、信號算法工程師、射頻/通信算法工程師、自然語言算法工程師、數(shù)據(jù)挖掘算法工程師、搜索算法工程師、控制算法工程師(云臺算法工程師,飛控算法工程師,機(jī)器人控制算法)、導(dǎo)航算法工程師(@之介感謝補(bǔ)充)、其他【其他一切需要復(fù)雜算法的行業(yè)】專業(yè)要求:計算機(jī)、電子、通信、數(shù)學(xué)等相關(guān)專業(yè);學(xué)歷要求:本科及其以上的學(xué)歷,大多數(shù)是碩士學(xué)歷及其以上;語言要求:英語要求是熟練,基本上能閱讀國外專業(yè)書刊,做這一行經(jīng)常要讀論文;必須掌握計算機(jī)相關(guān)知識,熟練使用仿真工具M(jìn)ATLAB等,必須會一門編程語言。算法工程師的技能樹(不同方向差異較大,此處僅供參考)1 機(jī)器學(xué)習(xí)2 大數(shù)據(jù)處理:熟悉至少一個分布式計算框架Hadoop/Spark/Storm/ map-reduce/MPI3 數(shù)據(jù)挖掘4 扎實的數(shù)學(xué)功底5 至少熟悉C/C++或者Java,熟悉至少一門編程語言例如java/python/R加分項:具有較為豐富的項目實踐經(jīng)驗(不是水論文的哪種)二、算法工程師大致分類與技術(shù)要求(一)圖像算法/計算機(jī)視覺工程師類包括圖像算法工程師,圖像處理工程師,音/視頻處理算法工程師,計算機(jī)視覺工程師要求l 專業(yè):計算機(jī)、數(shù)學(xué)、統(tǒng)計學(xué)相關(guān)專業(yè);l 技術(shù)領(lǐng)域:機(jī)器學(xué)習(xí),模式識別l 技術(shù)要求:(1) 精通DirectX HLSL和OpenGL GLSL等shader語言,熟悉常見圖像處理算法GPU實現(xiàn)及優(yōu)化;(2) 語言:精通C/C++;(3) 工具:Matlab數(shù)學(xué)軟件,CUDA運算平臺,VTK圖像圖形開源軟件【醫(yī)學(xué)領(lǐng)域:ITK,醫(yī)學(xué)圖像處理軟件包】(4) 熟悉OpenCV/OpenGL/Caffe等常用開源庫;(5) 有人臉識別,行人檢測,視頻分析,三維建模,動態(tài)跟蹤,車識別,目標(biāo)檢測跟蹤識別經(jīng)歷的人優(yōu)先考慮;(6) 熟悉基于GPU的算法設(shè)計與優(yōu)化和并行優(yōu)化經(jīng)驗者優(yōu)先;(7) 【音/視頻領(lǐng)域】熟悉等視頻編解碼標(biāo)準(zhǔn)和FFMPEG,熟悉rtmp等流媒體傳輸協(xié)議,熟悉視頻和音頻解碼算法,研究各種多媒體文件格式,GPU加速;應(yīng)用領(lǐng)域:(1) 互聯(lián)網(wǎng):如美顏app(2) 醫(yī)學(xué)領(lǐng)域:如臨床醫(yī)學(xué)圖像(3) 汽車領(lǐng)域(4) 人工智能相關(guān)術(shù)語:(1) OCR:OCR (Optical Character Recognition,光學(xué)字符識別)是指電子設(shè)備(例如掃描儀或數(shù)碼相機(jī))檢查紙上打印的字符,通過檢測暗、亮的模式確定其形狀,然后用字符識別方法將形狀翻譯成計算機(jī)文字的過程(2) Matlab:商業(yè)數(shù)學(xué)軟件;(3) CUDA: (Compute Unified Device Architecture),是顯卡廠商N(yùn)VIDIA推出的運算平臺(由ISA和GPU構(gòu)成)。 CUDA?是一種由NVIDIA推出的通用并行計算架構(gòu),該架構(gòu)使GPU能夠解決復(fù)雜的計算問題(4) OpenCL: OpenCL是一個為異構(gòu)平臺編寫程序的框架,此異構(gòu)平臺可由CPU,GPU或其他類型的處理器組成。(5) OpenCV:開源計算機(jī)視覺庫;OpenGL:開源圖形庫;Caffe:是一個清晰,可讀性高,快速的深度學(xué)習(xí)框架。(6) CNN:(深度學(xué)習(xí))卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)CNN主要用來識別位移、縮放及其他形式扭曲不變性的二維圖形。(7) 開源庫:指的是計算機(jī)行業(yè)中對所有人開發(fā)的代碼庫,所有人均可以使用并改進(jìn)代碼算法。(二)機(jī)器學(xué)習(xí)工程師包括機(jī)器學(xué)習(xí)工程師要求l 專業(yè):計算機(jī)、數(shù)學(xué)、統(tǒng)計學(xué)相關(guān)專業(yè);l 技術(shù)領(lǐng)域:人工智能,機(jī)器學(xué)習(xí)l 技術(shù)要求:(1) 熟悉Hadoop/Hive以及Map-Reduce計算模式,熟悉Spark、Shark等尤佳;(2) 大數(shù)據(jù)挖掘;(3) 高性能、高并發(fā)的機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘方法及架構(gòu)的研發(fā);應(yīng)用領(lǐng)域:(1)人工智能,比如各類仿真、擬人應(yīng)用,如機(jī)器人(2)醫(yī)療用于各類擬合預(yù)測(3)金融高頻交易(4)互聯(lián)網(wǎng)數(shù)據(jù)挖掘、關(guān)聯(lián)推薦(5)無人汽車,無人機(jī)相關(guān)術(shù)語:(1) Map-Reduce:MapReduce是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運算。概念"Map(映射)"和"Reduce(歸約)",是它們的主要思想,都是從函數(shù)式編程語言里借來的,還有從矢量編程語言里借來的特性。(三)自然語言處理工程師包括自然語言處理工程師要求l 專業(yè):計算機(jī)相關(guān)專業(yè);l 技術(shù)領(lǐng)域:文本數(shù)據(jù)庫l 技術(shù)要求:(1) 熟悉中文分詞標(biāo)注、文本分類、語言模型、實體識別、知識圖譜抽取和推理、問答系統(tǒng)設(shè)計、深度問答等NLP 相關(guān)算法;(2) 應(yīng)用NLP、機(jī)器學(xué)習(xí)等技術(shù)解決海量UGC的文本相關(guān)性;(3) 分詞、詞性分析、實體識別、新詞發(fā)現(xiàn)、語義關(guān)聯(lián)等NLP基礎(chǔ)性研究與開發(fā);(4) 人工智能,分布式處理Hadoop;(5) 數(shù)據(jù)結(jié)構(gòu)和算法;應(yīng)用領(lǐng)域:口語輸入、書面語輸入、語言分析和理解、語言生成、口語輸出技術(shù)、話語分析與對話、文獻(xiàn)自動處理、多語問題的計算機(jī)處理、多模態(tài)的計算機(jī)處理、信息傳輸與信息存儲 、自然語言處理中的數(shù)學(xué)方法、語言資源、自然語言處理系統(tǒng)的評測。相關(guān)術(shù)語:(2) NLP:人工智能的自然語言處理,NLP (Natural Language Processing) 是人工智能(AI)的一個子領(lǐng)域。NLP涉及領(lǐng)域很多,最令我感興趣的是“中文自動分詞”(Chinese word segmentation):結(jié)婚的和尚未結(jié)婚的【計算機(jī)中卻有可能理解為結(jié)婚的“和尚“】(四)射頻/通信/信號算法工程師類包括3G/4G無線通信算法工程師, 通信基帶算法工程師,DSP開發(fā)工程師(數(shù)字信號處理),射頻通信工程師,信號算法工程師要求l 專業(yè):計算機(jī)、通信相關(guān)專業(yè);l 技術(shù)領(lǐng)域:2G、3G、4G,BlueTooth(藍(lán)牙),WLAN,無線移動通信, 網(wǎng)絡(luò)通信基帶信號處理l 技術(shù)要求:(1) 了解2G,3G,4G,BlueTooth,WLAN等無線通信相關(guān)知識,熟悉現(xiàn)有的通信系統(tǒng)和標(biāo)準(zhǔn)協(xié)議,熟悉常用的無線測試設(shè)備;(2) 信號處理技術(shù),通信算法;(3) 熟悉同步、均衡、信道譯碼等算法的基本原理;(4) 【射頻部分】熟悉射頻前端芯片,扎實的射頻微波理論和測試經(jīng)驗,熟練使用射頻電路仿真工具(如ADS或MW或Ansoft);熟練使用cadence、altium designer PCB電路設(shè)計軟件;(5) 有扎實的數(shù)學(xué)基礎(chǔ),如復(fù)變函數(shù)、隨機(jī)過程、數(shù)值計算、矩陣論、離散數(shù)學(xué)應(yīng)用領(lǐng)域:通信VR【用于快速傳輸視頻圖像,例如樂客靈境VR公司招募的通信工程師(數(shù)據(jù)編碼、流數(shù)據(jù))】物聯(lián)網(wǎng),車聯(lián)網(wǎng)導(dǎo)航,軍事,衛(wèi)星,雷達(dá)相關(guān)術(shù)語:(1) 基帶信號:指的是沒有經(jīng)過調(diào)制(進(jìn)行頻譜搬移和變換)的原始電信號。(2) 基帶通信(又稱基帶傳輸):指傳輸基帶信號。進(jìn)行基帶傳輸?shù)南到y(tǒng)稱為基帶傳輸系統(tǒng)。傳輸介質(zhì)的整個信道被一個基帶信號占用.基帶傳輸不需要調(diào)制解調(diào)器,設(shè)備化費小,具有速率高和誤碼率低等優(yōu)點,.適合短距離的數(shù)據(jù)傳輸,傳輸距離在100米內(nèi),在音頻市話、計算機(jī)網(wǎng)絡(luò)通信中被廣泛采用。如從計算機(jī)到監(jiān)視器、打印機(jī)等外設(shè)的信號就是基帶傳輸?shù)?。大多?shù)的局域網(wǎng)使用基帶傳輸,如以太網(wǎng)、令牌環(huán)網(wǎng)。(3) 射頻:射頻(RF)是Radio Frequency的縮寫,表示可以輻射到空間的電磁頻率(電磁波),頻率范圍從300KHz~300GHz之間(因為其較高的頻率使其具有遠(yuǎn)距離傳輸能力)。射頻簡稱RF射頻就是射頻電流,它是一種高頻交流變化電磁波的簡稱。每秒變化小于1000次的交流電稱為低頻電流,大于10000次的稱為高頻電流,而射頻就是這樣一種高頻電流。高頻(大于10K);射頻(300K-300G)是高頻的較高頻段;微波頻段(300M-300G)又是射頻的較高頻段。【有線電視就是用射頻傳輸方式】(4) DSP:數(shù)字信號處理,也指數(shù)字信號處理芯片(五)數(shù)據(jù)挖掘算法工程師類包括推薦算法工程師,數(shù)據(jù)挖掘算法工程師要求l 專業(yè):計算機(jī)、通信、應(yīng)用數(shù)學(xué)、金融數(shù)學(xué)、模式識別、人工智能;l 技術(shù)領(lǐng)域:機(jī)器學(xué)習(xí),數(shù)據(jù)挖掘l 技術(shù)要求:(1) 熟悉常用機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘算法,包括但不限于決策樹、Kmeans、SVM、線性回歸、邏輯回歸以及神經(jīng)網(wǎng)絡(luò)等算法;(2) 熟練使用SQL、Matlab、Python等工具優(yōu)先;(3) 對Hadoop、Spark、Storm等大規(guī)模數(shù)據(jù)存儲與運算平臺有實踐經(jīng)驗【均為分布式計算框架】(4) 數(shù)學(xué)基礎(chǔ)要好,如高數(shù),統(tǒng)計學(xué),數(shù)據(jù)結(jié)構(gòu)l 加分項:數(shù)據(jù)挖掘建模大賽;應(yīng)用領(lǐng)域(1) 個性化推薦(2) 廣告投放(3) 大數(shù)據(jù)分析相關(guān)術(shù)語Map-Reduce:MapReduce是一種編程模型,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運算。概念"Map(映射)"和"Reduce(歸約)",是它們的主要思想,都是從函數(shù)式編程語言里借來的,還有從矢量編程語言里借來的特性。(六)搜索算法工程師要求l 技術(shù)領(lǐng)域:自然語言l 技術(shù)要求:(1) 數(shù)據(jù)結(jié)構(gòu),海量數(shù)據(jù)處理、高性能計算、大規(guī)模分布式系統(tǒng)開發(fā)(2) hadoop、lucene(3) 精通Lucene/Solr/Elastic Search等技術(shù),并有二次開發(fā)經(jīng)驗(4) 精通Lucene/Solr/Elastic Search等技術(shù),并有二次開發(fā)經(jīng)驗;(5) 精通倒排索引、全文檢索、分詞、排序等相關(guān)技術(shù);(6) 熟悉Java,熟悉Spring、MyBatis、Netty等主流框架;(7) 優(yōu)秀的數(shù)據(jù)庫設(shè)計和優(yōu)化能力,精通MySQL數(shù)據(jù)庫應(yīng)用 ;(8) 了解推薦引擎和數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)的理論知識,有大型搜索應(yīng)用的開發(fā)經(jīng)驗者優(yōu)先。(七)控制算法工程師類包括了云臺控制算法,飛控控制算法,機(jī)器人控制算法要求l 專業(yè):計算機(jī),電子信息工程,航天航空,自動化l 技術(shù)要求:(1) 精通自動控制原理(如PID)、現(xiàn)代控制理論,精通組合導(dǎo)航原理,姿態(tài)融合算法,電機(jī)驅(qū)動,電機(jī)驅(qū)動(2) 卡爾曼濾波,熟悉狀態(tài)空間分析法對控制系統(tǒng)進(jìn)行數(shù)學(xué)模型建模、分析調(diào)試;l 加分項:有電子設(shè)計大賽,機(jī)器人比賽,robocon等比賽經(jīng)驗,有硬件設(shè)計的基礎(chǔ);應(yīng)用領(lǐng)域(1)醫(yī)療/工業(yè)機(jī)械設(shè)備(2)工業(yè)機(jī)器人(3)機(jī)器人(4)無人機(jī)飛控、云臺控制等(八)導(dǎo)航算法工程師要求l 專業(yè):計算機(jī),電子信息工程,航天航空,自動化l 技術(shù)要求(以公司職位JD為例)公司一(1)精通慣性導(dǎo)航、激光導(dǎo)航、雷達(dá)導(dǎo)航等工作原理;(2)精通組合導(dǎo)航算法設(shè)計、精通卡爾曼濾波算法、精通路徑規(guī)劃算法;(3)具備導(dǎo)航方案設(shè)計和實現(xiàn)的工程經(jīng)驗;(4)熟悉C/C++語言、熟悉至少一種嵌入式系統(tǒng)開發(fā)、熟悉Matlab工具;公司二(1)熟悉基于視覺信息的SLAM、定位、導(dǎo)航算法,有1年以上相關(guān)的科研或項目經(jīng)歷;(2)熟悉慣性導(dǎo)航算法,熟悉IMU與視覺信息的融合;應(yīng)用領(lǐng)域無人機(jī)、機(jī)器人等。
不蓉錯失927
算法工程師不是青春飯。
在入職的年齡中,算法工程師的入職年份越多,就有越多的公司要你。由于算法工程師對于知識結(jié)構(gòu)的要求比較豐富,同時算法工程師崗位主要以研發(fā)為主,需要從業(yè)者具備一定的創(chuàng)新能力,所以要想從事算法工程師崗位往往需要讀一下研究生,目前不少大型科技企業(yè)對于算法工程師的相關(guān)崗位也有一定的學(xué)歷要求。
未來要從事算法工程師崗位,可以重點關(guān)注一下大數(shù)據(jù)和人工智能相關(guān)方向,比如目前計算機(jī)視覺、自然語言處理、機(jī)器學(xué)習(xí)等方向就是比較熱門的選擇,另外也可以選擇智能裝備方向。
提到人工智能,就不得不提人工智能領(lǐng)域最炙手可熱的算法工程師。算法即一系列解決問題的清晰指令,算法工程師就是利用算法處理事物的人。算法工程師主要根據(jù)業(yè)務(wù)進(jìn)行細(xì)分,常見的有廣告算法工程師、推薦算法工程師、圖像算法工程師等等。
但作為熱門領(lǐng)域和人才供不應(yīng)求的人工智能,開出的薪資依舊讓人羨慕眼紅。獵頭Jony表示“人工智能科班出身的博士,50萬年薪僅僅是起步價,優(yōu)秀的開到80萬、100萬都不一定能搶到?!?/p>
我心起飛揚
要說算法工程師的日常工作,那就是做優(yōu)化優(yōu)化再優(yōu)化,那很多人要問了:未來的發(fā)展呢?難道一直日復(fù)一日?這只是籠統(tǒng)地說,但真正的細(xì)分還是有很多的,比如: 數(shù)據(jù)挖掘和數(shù)據(jù)分析,比如說異常檢測、欺詐檢測等; 自然語言處理(NLP),比如說我們算法部門就有專門的NLP組,主要負(fù)責(zé)搭建上層算法應(yīng)用的基礎(chǔ)設(shè)施,如文章關(guān)鍵詞、實體詞、相似度計算等,在智能翻譯、語音處理當(dāng)中也會用到相關(guān)技術(shù); 圖像處理(CV),比如自動駕駛當(dāng)中涉及到的圖像拼接、車道線檢測,推薦當(dāng)中涉及到的圖像特征提取等; 推薦算法,當(dāng)前各大互聯(lián)網(wǎng)公司基本都會有這個崗位,信息流推薦、商品推薦等; 搜索算法,和推薦算法用到的技術(shù)很類似了,信息搜索、商品搜索等; 廣告算法,技術(shù)上和推薦算法很像,但是涉及到的其它知識會稍微多些,因為廣告要考慮的不僅僅是用戶和內(nèi)容的關(guān)系了,還多了一層商家的關(guān)系。 其它的還有一些偏研究性質(zhì)的崗位,這個一般要求也比較高,博士研究生招的比較多,主要是不差錢的大廠會成立相關(guān)部門,比如阿里的達(dá)摩院,其它公司的AI Lab等,這些部門當(dāng)中一般也有專門做研究與應(yīng)用相結(jié)合的一些崗位。 程序員的職業(yè)發(fā)展路徑一般就是,初級工程師、高級工程師、資深工程師、專家、高級專家、資深專家、研究員,大公司會有相應(yīng)的職級,比如阿里技術(shù)序列就對應(yīng)P1~P14,校招一般是P4~P5,本科一般P4,研究生一般P5,能力強(qiáng)的可能給到P6甚至P7,但這畢竟是鳳毛麟角。P5~P7是干活的中堅力量,占比比較大,一般一到兩年晉升一次,當(dāng)然升不升和怎么升跟你的個人能力和產(chǎn)出強(qiáng)相關(guān),評定的標(biāo)準(zhǔn)還是比較規(guī)范的,P7往上升卡得比較嚴(yán)。
優(yōu)質(zhì)工程師考試問答知識庫