算法工程師不是碼農。碼農只需要能夠熟練使用編程環境,掌握幾種編程語言、開發框架和開發庫,並善於編寫代碼。他們是專業水平不高的程序員。算法工程師是比較高端的崗位,本科以上學歷,專業技術要求高。他代表壹些材料研究能力很強的工程師,通常是在壹個產品的前期,解決技術問題,提供壹些技術方案,包括方案的初始算法實現,主要負責數據挖掘,機器學習相關的內容計算,以及壹個比較高端的程序員群體。所以,總體來說,算法工程師不是碼農。
互聯網發展初期,發展基本屬於壹勺壹匯。程序員自己做需求,設計,完成算法,測試,上線,提供售後服務。後來隨著職能和業務復雜程度的加深,有了更精細的分工。特別是大數據和AI的興起,對算法和數學能力要求很高,非普通軟件人員也能完成。所以算法工程師主要在邏輯模型,程序員主要在實現,但兩者不能完全割裂。
程序員是從事IT行業的人的總稱。任何寫程序的人都可以被稱為程序員。沒有非常嚴格的類別界限,是壹個組名。而算法工程師,主要是設計算法的工程師,屬於程序員群體。算法工程師其實代表的是壹些數據挖掘和計算能力很強的工程師。壹般在壹個產品的前期,他解決技術問題,提供壹些技術方案,包括方案的初始算法實現,主要負責機器學習領域的數據挖掘和相關內容。
中國的算法工程師和R&D工程師在工作職責上還是有很大區別的,和矽谷的職能分配有很大不同。在谷歌和臉書等美國互聯網巨頭,算法工程師不得不編寫大量代碼。