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

我们通常听到的有很多的技术岗位 , 算法工程师、研发工程师、架构师、测试等等 , 这里面研发我们通常又分为前端、后台、移动等等 。

好的算法工程师一定是好的工程师 , 好的研发工程师的算法一定不会太差 , 至少也要熟悉常用的几十种经典算法 。 通常我们说算法岗位容易出科学家 , 而研发岗位更容易出架构师 。

算法工程师的要求与价值

算法岗位对数学有更高的要求 , 模型、计算公式都需要算法工程师来做 , 研究算法原理、调整参数、优化性能等等 , 大多数研发工程师做不了这样的事情 , 就像大多数研发工程师也做不了架构一样 。 不过也有很多算法工程师是纯数学专业毕业的 , 他们可能只会用Matlab这样的工具 , 他们的算法跟生产离得更远一点 。

算法+数据结构=程序 , 任何一个环节缺一不可 , 我不认为应该把这这两个岗位完全割裂开 , 就好像一个完备出色的微型互联网团队里面 , 运营最好要懂一些产品 , 产品最好要懂一些技术 , 而研发最好要懂一些产品和算法 , 算法则最好能够写得一手好代码 。 这样的团队才是最完备和成熟 , 也不容易出现问题 。

推荐阅读