算法和开发岗相比,哪个前景更好呢?
这两个岗位的工作内容我都接触过,目前我带的大数据团队中既有算法工程师也有开发工程师,所以我说一说这两个岗位的区别,以及未来的发展方向。
算法设计与算法实现通常涉及到算法的岗位有两个,分别是算法设计和算法实现,现在有不少团队把这两个岗位进行合并,做算法设计的同时也要负责实现。但是也有一些团队是分开的,做算法设计的不管实现过程。
目前我带的团队中算法设计和算法实现是一个岗位,也就是说负责算法设计的同时要负责实现,大部分算法实现目前使用Python语言来完成。目前团队中做算法岗位的工程师都是研究生毕业,有数学专业、物理专业、计算机专业毕业的。从工作的复杂性上来说,算法工程师的工作强度还是比较大的,但是算法工程师的职业周期也比较长。
很多算法工程师最终成长为企业的首席科学家,或者是首席技术官等岗位,可以说算法工程师的发展前景还是非常不错的。
开发岗位软件团队的大部分岗位都是开发岗位,有前端开发、后端开发、移动端开发等,可以说大部分程序员做的都是开发岗的工作。
与算法岗位不同的是,开发岗位人数多,占比大,而且大部分开发岗位的职业周期都比较短,一般开发岗位在做到一定年龄(比如35岁)之后都会转型。
一部分会转向项目经理等管理岗位,一部分会转型做架构师,还有一部分转型为行业咨询专家等,当然,也有一部分开发人员转型为算法工程师。
从连贯性上来说,开发岗位没有算法岗位的连续性强,不少开发岗位的程序员面临二次学习的问题。
如果有扎实的数学基础,我还是建议程序员多从事一些关于算法方面的工作,毕竟程序开发说到底就是个数学问题。算法工程师的职业周期也非常长,35岁对于算法工程师来说职业生涯才刚开始。
我的研究方向是大数据和人工智能,目前我也在做机器学习方面的落地项目,对这方面内容感兴趣的朋友可以关注我的头条号,我会陆续写一些大数据、人工智能方面的科普文章。
如果有软件开发方面的问题,也可以咨询我。
谢谢!