BlaXuan 发表于 2021-9-3 22:11

开发岗位是身体累,算法岗是心累,但是如果让我选择,一定选算法岗。
开发岗有接不完的需求,工作苦也就罢了,还会遇到一些神奇的需求。明知道没有什么价值,却仍然要去做。开发和产品绑定,甚至开发很难决定自己的命运。
后来痛定思痛,我转了算法岗。
算法岗首先需要搞清楚做什么,解决哪些问题。然后发现A问题已经有人在做了,B问题也有人在做了。好不容易找到一个可以做的却是风控领域比较难出结果的复杂关系网络。
几年来,感觉也就10%的想法是有价值的。即使是我自己做数据产品,那个开发估计也是会天天吐槽糟糕的需求。只不过自己提出想法自己做,中间消除了沟通成本和测试成本。
   与其被人坑,不如坑自己。我宁可选择算法岗。

Ylisar 发表于 2021-9-3 22:16

赞同楼上的说法。
开发的话因为有明确的design doc,技术实现也都有很多前人的经验,项目进度上是比较利于规划的,知道做完这步下一步要干嘛,而且开发调试起来也比较方便。
算法的话就不太一样了,不过得看你是research engineer还是research scientist。后者一般得是PHD,估计题主不是。research engineer的话一般也不会创造新的算法,以实现已有算法为主。但是ML这块有很多坑,很多时候实现了发现不对就很难找到bug在哪,可能是数据的问题,也可能是模型的问题,就很烦。。。
不过对应届生而言,有时候我觉得累是好事,说明你在学新东西,如果你对你在干的活已经了如指掌,那自然不累,但是长期而言对你的职业生涯发展一定是不好的。。。

kyuskoj 发表于 2021-9-3 22:20

开发和算法都做过的也来回答下:
刚毕业的时候,做的是开发,干了两年以后转了算法。
要说累的话,
开发岗更多的是有点按部就班,大脑不需要太多思考,不需要理解公式,不需要过多较真,属于能达到目的就行,能做成就行,成就感是慢慢积累,做很久,基本都会有可见的收益,不会有很大的挫败感,它的累可能有时候体现在做工作相对无聊而使人略显动力不足。
算法岗更多的是充满不确定性,需要很认真的思考,很较真。得分析数据,得不断想改进,明明系统已经优化的很好了,还得他妈的要想各种办法去做的更好,这是一种心累,无力感。它的累就是一种长期折磨人的焦虑,当然取得好的效果后带来的成就感也是非常强大。
两者怎么选呢,就一条原则:选钱多的,钱多了,再累也感觉没那么累了。
如果工地搬砖钱更多,我就去搬砖,到时候在知乎发个帖:对于信息化农民工而言,开发岗,算法岗,和工地搬砖,哪个更累啊?

LiteralliJeff 发表于 2021-9-3 22:24

总的来说是开发吧,我其实挺心疼我们的开发同事的!走的晚,而且线上出问题要随叫随到,但是话说回来,身体上开发要肯定累一些,但是做算法的心累啊!现在这个年代,离2012年过去了7年,很多事情已经不再像过去跑一个新paper上model就能变成start-of-art,特别在业务中落地,很多时候考验的不是你的算法多么fancy,而是你的特征做的好不好,数据质量,建模思路,模型之后的规则设置,这些是真的考验人的,心累但是极其有趣,甚至有点像上了瘾,做算法的感觉就是每个项目进来都总有好几次山穷水尽的时候,心累,但是又总会柳暗花明,真是欲罢不能
其实累不累很多时候看你的心境吧,如果你真的喜欢这个岗位,喜欢你做的事情,就像问你打游戏累不累一样,都是不累的,但如果你不喜欢你的岗位,比如让我天天去银行坐柜台,虽然朝九晚五,但我觉得挺累的。

yukamu 发表于 2021-9-3 22:27

两边都做过,算法做过推荐和搜索,工程做过推荐系统,电商,在线教育。

做算法是心累,复现不出论文的效果,折腾来折腾去效果提升慢。有时候算法的提升远不如优化产品交互或者产品形态。

做工程是代码量大,体力累。好处是做的事情都是比较确定的,一定会上线落地,能看到很多用户在用你实现的功能,那种感觉确实有点高潮。

我是更喜欢做确定的问题,所以选择了做工程。经验变丰富后,工程的活对我来说已经很轻松了。

过去积累的经验、想法、代码和文档也都用得上,所以现在无论做多复杂的工程,都有种成竹在胸的感觉。

与其考虑累/不累,不如多问问自己喜欢什么方向,适合什么方向。

DungDaj 发表于 2021-9-3 22:30

有些公司一个岗位既搞开发,又搞算法,很累。

zt3ff3n 发表于 2021-9-3 22:40

这个问题类似在量化里的量化研究和量化开发
开发面对的不确定性少,主要面对的是来自产品/研究的需求,体力上要求高一些,适合喜欢确定性的性格的同学,产出是比较确定的功能性代码
研究/算法面对的是很多的不确定性,适合有好奇心喜欢探索的同学,但是精神压力会比较大,得有想法并且能够落地实践
这两种工种特征其实在工业界最早也是划分的很细的比如最早IBM的CRL/CDL,微软的研究院和工程院,现在的互联网企业里基本也都有算法和工程的划分
希望对你有帮助

mastertravels77 发表于 2021-9-3 22:41

业务开发累,是被业务推着跑
算法研究累,是被机器推着跑

最爽的是做基础开发和内核开发的
技术上能钻的深
没有业务推
功能确定,结果可期

七彩极 发表于 2021-9-3 22:46

清一色回答的都是开发是体力,算法是脑力。
觉得开发是体力的大概是因为开发的应用程序都比较简单吧。
觉得算法是脑力的大概是因为搞算法还刚入门吧。

JoshWindsor 发表于 2021-9-3 22:55

算法火热,但目前隐隐已供大于求,开发持久,但需要长期保持学习吸收。
先说说算法:
这些年人工智能、云计算等领域确实热度高,因此算法工程师也逐渐最为抢手的一个岗位。
目前来看,算法是大数据向人工智能转化的基础,要让机器人准确完成一个完整行为,需要设计无数算法告诉机器人对信号如何处理。
一般说的算法岗,其实有两个,一是算法设计,二是算法实现,做算法设计的不管实现过程。当然也有许多team把其二合一了,做算法设计的同时也要负责实现。
做算法的工程师研究生及以上学历占比相对较高,主要是数学、物理、计算机等专业。工作复杂性上,算法工程师的工作强度确实更大,精神压力也比较大,毕竟要对产出负责。但算法工程师的职业周期相对开发更长一些。
再聊聊开发:
主要包括前端开发、后端开发、移动端开发等等,更多程序员做的都是开发岗工作。
开发岗位人数多,占技术团队的比例更大,与算法相比较,普遍情况是开发岗的职业周期都相对较短,一般开发岗位在做到一定年龄(比如互联网人谈之色变的35岁)之后都会转型。
一部分会转向项目经理等管理岗位,一部分会转型做架构师,还有一部分转型为行业咨询专家。当然,转型为算法工程师也是当下比较流行的一个方向。
此外,开发岗可能连续性会弱一些,也就是说,二次学习是一个更加持之以恒的行为,新语言新框架等等。
对应届生而言,除了考虑其本身的特性,可能也需要考虑一下市场需求,目前算法岗比起开发岗的供应更多,如果想提升录取率的话,开发岗或许是当下更好的选择。
以上,感谢!
页: 1 [2] 3
查看完整版本: 对于技术岗位而言,开发岗累还是算法岗累呢?