算法工程师和程序员有什么不同?( 二 )

在互联网发展初期做开发基本属于一勺汇 , 程序员自己做需求 , 做设计 , 完成算法 , 测试 , 上线 , 售后服务 。 后来随着功能与业务的复杂程度的加深 , 就有了更精细的分工 。 特别是大数据与AI的兴起 , 对算法要求和数学能力要求比较高 , 非一般软件人员可以完成 , 所以细分出来的 , 算法工程师主要在逻辑模型 , 而程序员主要在实现 , 但二者不可完全分开 。

程序员是从事IT行业人员的统称 , 写程序的都可以叫程序员 , 没有非常严格的类别界限 , 是一个群体称呼 。 而算法工程师 , 就是主要设计算法的工程师 , 属于程序员的一众 。 算法工程师其实比较代表一些数据发掘、计算能力较强的工程师 , 一般是在一个产品的初期 , 去解决技术上的难题 , 提供一些技术方案 , 也包括方案的初步算法实现 , 主要负责数据挖掘 , 机器学习领域相关的内容 。

国内的算法工程师和研发工程师在工作职责上还是有很大的差别的 , 这一点跟硅谷的职能分配是有很大的区别的 , 在Google、Facebook等美国互联网巨头 , 算法工程师一样要写很多代码的 。

推荐阅读