算法岗累,还是开发岗累?
有人会说,你说打灰和抹墙,哪个更累?工地还有不累的吗?
这个比方的没毛病,我们看一下算法和工程两种岗位的特点。
开发岗的工作内容非常明确,产品的需求明确,PRD一出,差不多就可以排期干活了。
算法岗相对而言,只有一个明确的大方向,可能是搞钱,降本增效,拉人头等等…通常不是说做完了某件事就done了,有点像万里长征,需要你不断持续迭代。
一句话来说就是,工程开发岗身累,算法岗心累。
大家仔细观察下,工程岗的排期基本都是满的,需求排好期后,按部就班开发,测试,验收。
当然这个过程里面,也有很多撕逼扯皮的地方,比如客户又改需求了,这个地方设计之初没考虑到的冲突情况出现了,得一遍一遍和需求方明确出来。有时候需求方的优先级给的很高,还得熬夜加班。
所以说工程做的大部分都是确定性的事情,里面有一小部分劳心费神的地方。
算法岗很多时候第一步就比较困难,就是定义好问题。这个应该优化什么指标,约束项有哪些?有哪些客观评价,哪些主观评?
有了具体的目标后就得想办法搞数据,建模型了。通常这一步的baseline还是比较简单的, 可以找一些业界通用的方法。然后你万里长征的第一步就开始了,后面的每一天,你都要绞尽脑汁想提升方法,落实到实验上验证。很有可能面对N次失败,一次成功。
比如我们老生常谈的...
更别提,每到年底快要打绩效的时候,很有可能出现了折腾了很久的无用功,强制的排名都是残酷的。这时候你就会很没有安全感。
尤其是在今天大环境不佳,增长见顶的情况下,就别提有多慌了。
这两个岗位都有一些小技巧让工作体验更好一些。
一个经验丰富的算法工程师一大优势就是掌握一系列确定性提升的方法,并且能持续稳定释放出来,让自己的离线指标,业务指标同步上涨,并且在每个动作都有充分的归因,看起来高大上的方法。
事情和预期不符合后,还得有高超的甩锅技术。
一个经验丰富的开发工程师,除了能保证安期高质量交付,还得把控需求方的需求优先级和需求有效性,每个需求方都想着越快越好地满足自己所有的要求最好。
在和产品对接的时候,根据紧迫程度,预期收益,评估难度来合理排期,能让自己工作更顺利。
在保证满足业务需求后,还要继续钻研代码业务逻辑之外,比较有技术含量的部分。
整体看下来的就是算法心累,工程是身体上的累,当然还有一种,算法和工程都要一个人搞,只能说兄弟注意身体了。
往期精彩回顾
适合初学者入门人工智能的路线及资料下载 (图文+视频)机器学习入门系列下载 中国大学慕课《机器学习》(黄海广主讲) 机器学习及深度学习笔记等资料打印 《统计学习方法》的代码复现专辑 AI基础下载 机器学习交流qq群955171419,加入微信群请扫码: