算法岗诸神黄昏,算法初级职位内卷,如何选择适合自己的方向?

技术讨论 shijie ⋅ 于 2个月前 ⋅ 500 阅读

问题:算法岗诸神黄昏,算法初级职位内卷,如何选择适合自己的方向\?

在当下时代,算法岗无疑是非常热门且有前景的方向,但与此同时,算法岗也内卷严重,竞争激烈,有人拿着高薪,也有人愁于找工作。面对这样的复杂情况,到底是进是退?又如何选择真正合适自己的方向和出路?本文分享了一些有价值的观点。

来源:https://www.zhihu.com/question/343743405

知乎高质量回答

一、作者:**胡津铭**

浙江大学

https://www.zhihu.com/question/343743405/answer/1158653672

本文来自知乎问答,回答已获作者授权,著作权归作者所有,禁止二次转载。

19年校招的参与者来回答一下这个问题,分享一下自己的体会。
首先自报家门,本科985非CS,硕士浙大CS,硕士做的CV和ML方向。0已中的顶会一作paper,暑期实习/秋招之前有一段日常实习经历,在导师的公司杭州飞步科技,暑期实习在Google北京的CloudAI团队。最后前前后后大概拿了10来家公司的offer,其中有一半左右(主要是国内企业)是算法岗的,大概包括阿里搜索推荐、腾讯WXG、头条推荐等offer。我也有写过我的自学CS、找工作经验,在这个帖子里。
可以看到,我拿下的offer也是比较多的,而且在算法岗的面试中我没有失手过一次,拿下offer的几率在100\% 。我在面试的过程中也很少感受到有压力,基本上每场面试我都知道自己一定是过的,无非是开多少钱的问题。我之前其实有看到一些文章说现在的算法岗,没有顶会文章是很难拿下offer的,那么就我个人2019年的经验来看,我觉得这个说法至少不适用于我。
OK,炫耀结束。首先我想说一下自己对算法岗求职现状的看法。我认为算法岗确实内卷严重,竞争激烈。有些答主说那是因为你不够优秀,所以拿不到offer。可是如果是同等水平的开发同学,那拿offer往往会容易很多。这还不能说明内卷,那什么叫内卷......要说一些同学不够优秀,这也确实,可本身真正优秀的人所占比例就是比较少的,说这个也没什么意义......
接下来说一下算法岗求职中最重要的能力是什么。我非常赞同这个回答里所说的:那就是基础扎实,做事扎实。我认为合格或者优秀的面试官能够轻易判断出一位候选人是否扎实。所以如果你基础扎实、做事扎实,那只要你运气不是特别差,能碰到合格的面试官,就一定会有不错的offer的。那有同学要问了,什么叫扎实呢?说实话,扎实不扎实你自己心里没数吗......还有同学会问了,那有些公司就是要拿顶会一作paper作为要求或者门槛,那没有顶会paper怎么办呢?对于这种情况,我只能说,换一家公司/部门。以顶会一作paper作为硕士算法岗的门槛,我认为这个部门不适合去。除了做事扎实之外,很重要的能力还包括快速学习的能力、沟通交流的能力、解决问题的能力等等。我在这个地方有根据我的经验总结了不同公司/岗位对各种能力的要求,也提供给大家参考。打算找算法岗工作的同学也可以朝着优秀的算法工程师方向努力。
最后也不说什么劝退不劝退的吧。我就告诉大家,做了两三年的CV、ML,并且拿下了这些大多数人眼中可能还算不错的offer之后,我最后还是选择了一家外企的开发岗......
很多同学在评论区问我为什么最后转了开发,我在这里更新一下吧。我本不想劝退,是大家逼我的......大概有以下几个原因:
1. 在国内,算法岗基本上只存在于一些国内的IT大厂当中,例如BAT。众所周知,这些公司为了员工的竞争力着想,都要求员工修一些福报,来更快地成长。然而作为咸鱼的我觉得自己不配这样的着想,更希望能从事一份work-life balance的工作,这时候的选择往往就是一些来自于水深火热的资本主义社会的外企了,本着我不入地狱谁入地狱的想法,我毅然加入了这样的公司。而这些公司往往在国内只提供开发岗的工作。
2. 机器学习是非常有用且伟大的技术。Machine Learning is great! 但是现在的深度学习会有些过于玄学,菜鸡如我往往不能从各种调参经验中获得很好的insight,我并不知道这玩意儿为什么会work,那玩意儿为什么不work。心理素质不佳的我常常为此感到惶恐。开发就不一样了,there are always some reasons why it works and why it doesn't.
3. 有同学提到在机器学习、深度学习中数据data的重要性。是的,我非常认可这种观点,在机器学习中数据比什么都重要,而这种数据中的坑常常是非常多的,需要自己去踩过去,并且获得一些对数据/场景的insight。但是对我这种菜鸡来说,踩data的坑是一件相当boring甚至frustrated的事情。况且,我能从踩这些坑中得到什么呢?5年前工业界做机器学习的人还是各种特征工程,他们获得大量的特征工程经验,然而以cv为例,CNN出来之后,特征工程多数时候还有意义吗?那之前积累的data经验是不是就会有很大一部分作废了呢?再以nlp为例,13年word2vec出来之前,大家还是各种LDA;19年bert出来之前,大家在各种任务上还是各种魔改的LSTM等等,现在呢.....而开发在这点就很明显不一样了,10年前写C++的人现在可能还写C++,虽然会有一些变化,但总是大差不差的。
4. 要在互联网公司的一线上做算法,就需要快速学习的能力,要频繁地去跟最新的工作。这件事情并不简单,尤其当公司还有很大的业务压力和加班压力的时候。当我还年轻没有家庭压力的时候我也许能跟得上,可当我年龄大一些有家庭了呢?
5. 做算法是要承受很大的精神压力的。你很难去预估自己完成一个算法模块的工期。你的feature或者模型今天没work,you may never know when it will work. 但是开发不一样,开发相对容易去预估工期,知道自己完成了项目的百分之多少,这样精神压力会小很多。我这种咸鱼,还是喜欢精神压力小的生活。
最后,以上都是我个人观点,仅供参考。不做劝退,不做劝进,各位根据自己的情况考虑。

二、作者:**行走的汉堡**

https://www.zhihu.com/question/343743405/answer/841340176

本文来自知乎问答,回答已获作者授权,著作权归作者所有,禁止二次转载。

我建议坚持做算法,大厂进不了就退一步,先去小厂潜伏,等5G商用普及。5G商用普及后,大量AI产品有了落地可能,到时候算法泡沫又会吹起来。选择比努力更重要,当初很多人选择算法岗本身就充满投机性,愿赌就别怕输。现在算法应届白菜价40万,到时候算法应届白菜价可能70万。只要有泡沫,有大饼,资本又会重新往AI里涌,钱又会多起来。这东西就像股票,涨涨跌跌。炒的就是预期。赌的就是未来。而未来肯定是AI的。目前AI确实退潮了,但这只是短期回调,长线上一定是大牛市,钱途一定是光明的。
往大了说,金融、经济、机电、航天、土木的同学,当年高考分可能比计算机还高,但他们现在又如何?月薪尚能过万否?选错了赛道,能力再强,再努力不也是白搭嘛。而算法就是计算机中的计算机,测试就是计算机中的土木,这是细分的赛道。将来房价还要涨,到时候应届生年薪没个七八十万,不是富二代拆二代,甭想在一二线城市买房了,到那时候工作五年是算法社招对标阿里p7的,可能年包都150万了。坚持做算法,等着猪重新飞起来,不要急于止损。还有,很多算法面试没有过的原因,是自己leetcode没刷够吧?leetcode不刷几百题就去面试,这是面试态度不端正的表现!面试官不考你leetcode题,难道和你谈笑风声聊paper?你怎么敢保证面试官做过你发表paper的方向?不是一个方向的怎么聊啊?没啥可聊的,人家不让你做几道手撕代码的题怎么打发时间?再说了,现在的大部分面试官当年读研的时候,还不流行发paper灌大水呢,你们有代沟!
再多说点,当初资本往AI里涌,是因为看好AI这条长线赛道,但由于迟迟没有产品落地,变现途径受阻,更重要的,2018年至今国家宏观去杠杆,资管新规落地,导致流动性紧张,资方不继续投钱了,很多AI公司现金流跟不上了,进行了裁员缩招之类的防御措施,所以短期上AI就有点退潮了,其实这里面很大一部分原因是后者,也就是宏观经济的影响。但学过经济的都知道,宏观经济是有周期的,现在流动性紧,未来往往会宽松,到时候5G商用也普及差不多了,很多新形态的互联网产品都可以部署了,AI就有了变现途径了,资方又有钱了,资本肯定又会大举杀入AI赛道,届时算法薪资必定水涨船高,职位必定进一步开放。所以大家需要做的就是等,踏踏实实做好自己的事情,没必要为了短期利益或自身恐惧而转开发转测试。
还有年轻人不要对泡沫嗤之以鼻,或瞧不起。那些买房早的,炒股赚钱的,炒币爆发的,入职阿里或蚂蚁早的拿了数千万元人民币期权的,哪个不是赚泡沫的钱啊?你996干10年还不如人家利用泡沫搭顺风车1年赚的钱多不是?这事儿在职业规划上也是一样的道理,分析大势,看准时机,并合理的利用泡沫进行投机,才能事半功倍。这些年算法工资高,一个是有资本泡沫,还有就是这个岗位本身就是比开发、测试更容易讲故事、画大饼,什么神经网络啊、增强学习啊,哗哗地往ppt上一画,让人眼花缭乱的多帅啊,这样子晋升答辩的时候才有得吹,而你的领导拿着你的ppt去忽悠大领导也是一样的,但做开发和测试的你ppt能讲出多少故事给领导听啊?所以在互联网大厂内部,都是做算法的比做开发测试的晋升更快,薪资更高。那些做开发和测试的看到算法的述职ppt都快跪下了。
不要听信一些面试官放屁,说写paper没有用。等你入职一两年之后你就会发现,写paper的能力大有可为!为啥?因为所有公司晋升都要做ppt答辩啊,到时候你的写作能力、PPT能力、吹牛能力就派上用场了,这些套路对于一个发过顶会paper的人来说不是驾轻就熟吗,这些能力才是决定你在职场能走多高的最重要因素!更有人因为ppt做得好,文字功力强,不用写代码了,就专门帮大领导做各种汇报ppt成了大领导心腹呢,工业界算法老油条之间流传一句话,“线上if else,答辩deep learning”,你好好体会一下。你仔细观察一下互利网大厂里的高p高t,除了极少数技术能力极强的,哪个不是吹牛大王靠着一张嘴上去的?别总是沉迷什么所谓的技术。

三、作者:**微调**

卡内基梅隆大学

https://www.zhihu.com/question/343743405/answer/841340176

本文来自知乎问答,回答已获作者授权,著作权归作者所有,禁止二次转载。

我最近换方向了。
换方向本不稀奇,但心路历程和这道夸张的题目小有关系,因此分享出来供大家一笑。时光退回到我本科那时,机器学习这个名词还没火起来,我就读的某普通美国学校都还没有相关的课程和专业,那个时候最类似的课程叫做intelligent system(智能系统),主要讲perceptron,SOM和简单的MLP。我研究生时去了深度学习很前沿的一所学校,一年多的学习后我对机器学习的认识也只是停留在各种基本算法。而上完研究生/博士必修的机器学习课后,我去申请成为一门本科机器学习课的助教,结果被老师当场用一堆矩阵推导给劝退了。其实机器学习要想研究的话是无穷无尽的,本身就不是能速成的内容
后来去业界工作了几年,做建模、咨询相关的工作。阴差阳错钻到了某个小方向,做了一些自主研究和开发,发了一些还过的去文章和轮子。后来想不如百尺竿头更进一步,不如夯实理论基础,做点深入工作,就又回到了学校读博。
读博的开始当然是上课,上课和各种研讨会上认识了很多年轻的大佬,未来或许都是能在机器学习某个领域执牛耳者。和他们一起上课和交流,我最大的震撼不是他们有多聪明或是多努力,因为这些都只是入场券,并没啥特别的,而是他们对自己研究的热爱与兴趣。就是那种对自己研究谈起时就滔滔不绝,能为了一个看起来无关紧要的小问题推演一下午。自从观察到这点后,我就已经认清了如果拼理论和算法,那我注定不在一个起跑点上,是一场没开始就结束的比赛。不管你有多努力,可能都不会有机会和他们同台竞技。就像武侠世界,还没出招,我就知道这比试输了。
人贵在了解自己。比如我的兴趣一直都是机器学习模型在复杂社会、商业、教育、健康领域的迁移、部署、应用,和理解它们对于我们生活的影响,更加偏应用和政策方向,这很适合我喜欢交流的性格。毕竟不同领域都需要理解机器学习的人来推动跨领域研究。从纯做机器学习理论和算法的人角度来看,这种是“低价值”的工作。不论这种看法是否有偏见,但对我而言这是高价值且有可能做到出色的方向。同理,是否做算法岗也是如此,你不能把短期行业前景当做决策的全部,而忽略了自己才是这个选择中最重要的变量
这世界上有那么多有意思的课题,有那么多技能可能培养,有那么多契合你个人特质的行业。不能总把“我没得选”“何不食肉糜”挂在嘴边。其实大部分时候我们都只是想宣泄自己的愤懑,而非真的想解决问题。我能理解总有特例,但绝大部分人是符合正态分布的,不可能人人都没得选。我也是做过两年电路设计的人,发现不适合自己后转向了软件工程,后来才转向了机器学习。我们往往怠于思考自己的方向,而倾向于选择模仿。以为是低成本的优化方向,却可能是对自己不负责的做法。
所以我并不会劝退或是劝进,因为这没意义,我只会劝大家更好的了解自己。就像鲁迅说「学医救不了中国人」,劝退既不是目的也不是手段。你该问问自己,自己是否有机会在所在的领域做到拔尖,你的个人特质能否作为自己的护城河,下一步是否会面临来自方方面面的挑战。如果让你选一道菜吃十年,什么才会是你的心头好呢?
不要把转行当做出路,不要把转行当做末日
---

2019年11月28日更新:真香,我又重新开始做比较纯粹的算法研究了。

关于这个问题,你怎么看?欢迎在下方留言区抒发你的见解\~

成为第一个点赞的人吧 :bowtie:
回复数量: 0
暂无回复~
您需要登陆以后才能留下评论!