找回密码
 立即注册
查看: 1135|回复: 20

计算机专业研究生必须找算法岗才有前途吗?

[复制链接]
发表于 2021-7-5 05:56 | 显示全部楼层 |阅读模式
计算机专业研究生必须找算法岗才有前途吗?
发表于 2021-7-5 05:58 | 显示全部楼层
在计算机学院计算机专业待了六年(2013年-2019年),据我这么多年的观察,计算机专业的研究生绝大部分最后工作都找了开发岗。对于大家来说,一名合格算法工程师的前提是一名合格的开发工程师,算法岗只是少部分大佬的专属选择。
      16年开始,人工智能/机器学习/深度学习找工作火起来之后,大量的非计算机专业的学生也涌向了互联网找工作,最终导致算法岗/机器学习&深度学习算法岗/数据挖掘岗/数据分析岗等等各种能沾边的岗位全部被一股脑整成了广义的算法岗,导致算法岗满天飞,整个氛围开始变得莫名浮躁,让大家感觉毕业不找个算法岗的工作,都对不起自己读的计算机专业。但是事实上,就我了解的19届20届计算机专业毕业的研究生中比较优秀的基本上都找了开发岗(即使研究生方向和算法沾边,最后也大都找了开发),找算法岗的反而是比较少的(一般是真大佬和不想怎么写代码的(你懂的)),甚至找区块链开发岗的也比找算法岗的同学多。
     所以,回到问题本身,计算机专业研究生并不是必须找算法岗才有前途,无论什么岗位适合自己的才是最好的。即使单纯地向钱看,现在开发岗的offer已经并不比算法岗的offer低了。
     之前和一些老码农聊过一点关于选择算法岗和开发岗的问题,大家比较一致的观点是:如果算法岗的同学的工作长期不能变现或者变现价值不高,自身硬实力(算法能力、工程能力、社交能力等)又不是特别强,在公司待久了还是会比较难受的,至少会感到一定的危机感,毕竟自身价值不是很好体现出来。但是开发岗会好一些,毕竟搬砖的哪里都能塞,至少能体现一点起码的价值。
发表于 2021-7-5 06:05 | 显示全部楼层
在阿里算法部门工作, 个人感觉以此为方向毫无前途可言。
在国内大厂的平台体系下,大部分同学的工作是使用平台工具进行模型迭代和修复,这种工作的本质是在“新轮子”+“参数”+“业务”的体系下进行优化组合,而这并非算法创新,只有少数数学能力清晰+代码功底扎实的同学(这部分同学大多是高考数学在140以上+本科学校很优秀的同学),才会在新老问题上不断推成出新,做出亮眼而实用的工作。
就目前国内计算机的研究生数量而言,也是层次不齐的,最近面试了几位校招实习生,发现很多同学都有一个通病:没有系统工程的思维,都是临时抱佛脚,也就是“刷题+走面经”的思路,大家对算法工作的期待过高,而国内(大部分大厂)目前的算法工作大致如下:
数据处理 + 模型选择 + 评价标准 + 迭代优化
我们的本质其实是数据处理工程师,而不是算法工程师。哪些人可以替代我们?做工程的同学,他们在做一个工程时是有一套完备的方法论,这种方法论是与计算机的软硬件一体化的,他们很清楚平台的瓶颈和性能,能随时进行优化和迭代,而算法工程师是在此基础上进行迭代,你说你的价值在哪呢?与产品撕逼?与leader侃指标?与paper死磕?
今天AI的大多数框架是mxnet、tensorflow、pytorch,那明天呢?后天呢?优化理论你真的搞明白了么?我想大多数同学跟我一样都是没有搞懂的,那前途何在呢?真正的算法方向只适用于部分同学,而非绝大多数计算机方向的同学。
个人感觉SDE才是大多数同学应该走的一个方向,系统工程的思维+扎实的代码输出能力+算法实现和优化的能力,是我们这些凡人通过努力可以实现的康庄大道,追求所谓的算法工作其实毫无意义。
发表于 2021-7-5 06:09 | 显示全部楼层
以前回答过类似的问题。
作为AI相关的从业者,我说下这几年的NLP相关人员的招聘情况吧。以下情况基于我个人的感受,不代表官方观点。(注:我们招聘的学生为重点大学的研究生以上)
2017应届生:2016年秋开始招聘,NLP热度增加,毕业生offer不愁,多为算法岗位,创业公司和大厂抢生意,薪资也有所提升。我们当年招聘,也是虎口拔牙,争取到了几位优秀的同学。随着2,3年的锻炼,目前留在公司的都是核心开发岗位。
2018应届生:2017年秋开始招聘,大厂争夺更加激烈,毕业生offer薪资已经超出师兄师姐。抢人时间甚至提前到了3,4月。大家开始盲目乐观,我们的招聘难度也很大,基本上没办法和大厂的薪资抗衡。但另一方面的原因,我们的招聘也更加务实,不仅仅考量NLP算法的能力,还要重点考察快速工程实现的能力。
2019应届生:2018年秋开始招聘,随着18年开始的AI寒冬,这一年的招聘比上一年好了不少,一方面大厂的职位饱和,新的HC有所限制,新闻上还曾爆出了某些创业公司毁约毕业生的事情;另一方面,对毕业生的动手能力要求也更高。所以我们也招到了一批很不错的同学。从薪资角度来看,并没有比18年上涨很多,基本持平甚至在某些大厂会有降低。
2020应届生:2019年秋开始招聘,这一年的情况更差,我们面试的好多同学,手上一个offer都没有,可能是因为师兄师姐的待遇让他们的期望值提的太高,又加上目前AI公司的状况都不太好,大小公司都在裁员,所以算法岗位的竞争更加激烈,不仅要和同届的同学竞争,还要和从AI公司离职的工程师竞争,而且19年招聘更看重动手能力,单凭算法能力已经无法拿到好的offer了。
2020应届生(春招):2020年初开始招聘。本来年前AI行业就不好过,年前大批公司部门解散裁员,年后受疫情影响,甚至有即将入职的公司倒闭,offer缓发,又加上找工作的人和应届生在同一赛道竞争,导致春招的同学想找算法岗位极其困难。在如此经济形势下,公司更加注重实际能力,而且要求会比较高,像我们一般都需要对应P7级别的社招才可以。
NLP之所以这几年很火,是受到智能语音交互的热潮影响,但随着资本和行业的冷静,对于NLP的产品化有了更务实的思考(可参考我的专栏文章)。所以,反映到毕业生这边,核心还是看动手能力,其次才会考量对NLP算法的理解。尤其是在深度学习普及的今天,深度学习能力(不仅是调参,更重要的是对model的理解和优化)也会成为考量的重要因素。
好人才总归是缺的,无论是NLP,KG,还是DL,足够优秀的同学一定是我们所渴求的。那些不仅有调参经验,而且编程能力超强,对数学的掌握足够深厚的同学,可以根据实际问题调整网络结构,利用各种方法满足工程需求,并能熟练运用各种编程语言(例如C和C++)进行工程化改造。这样的人也能够拿到更好的offer。
发表于 2021-7-5 06:11 | 显示全部楼层
只做算法甚至更没前途。
算法岗这种叫法是中国特色,美国统一SDE。只要你不是在高校或者研究院做研究,而是在私营企业里做项目,那么本质上就是业务驱动,就是工程师,计算机基础和工程能力才是硬通货。现在99%的算法岗不写论文不发paper,只是把已有的算法拿来用,调调参、加几个layer,说白了还是做应用层。做应用层意味着门槛不会很高,意味着大量调用现成的API,意味着容易被更拼命的年轻人取代。
所以不要幻想私营企业里的算法岗有什么牛x的东西,可以帮你跨过中年危机。恰恰相反,只搞算法而不接触工程,不写代码把应用落地,这种岗位的经验积累速度只会比开发岗更慢,其技能通用性也弱于开发岗。
从国内的趋势来看,前几年同级别的大厂,算法岗薪资明显高于开发岗,现在两者几乎持平了。
发表于 2021-7-5 06:17 | 显示全部楼层
一句老话,从职业发展角度,选择最适合自己的职业,前途最好。
算法岗是一个比较特殊的岗位,这两年因为AI火,各大IT互联网公司狂招算法员工,工资也属于校招最高的那一级别。
但是有三点需要注意:
1 算法岗的定位。
2 公司对算法岗的要求。
3 前途的理解。
1 算法岗的定位。一二线公司的算法岗,是学术与应用结合的岗位。要清楚自己喜不喜欢看论文,胜不胜任各种算法模型的调优。
大拿老师当年校招百度三面,面试官就是想让我去做算法,连着提了三个问题
"你觉得算法这个方向怎么样?" 我否定
"你老师觉得你适合做算法吧!"我模糊
“你同学觉得你算法还不错吧” 我还是不答应
原因很明确,我就是不想做算法,
一是曾经在日企研究院专门做算法学术,产生论文成果指导生产,虽然也能胜任,但是不喜欢这种模式;
二是研究生期间也做过学术算法,说实话,产生了一堆垃圾。通过改变某些参数,让数据变得更好看,但是没有实用价值。本身产生了厌烦感
三是个人已经计划走商业和创业道路,需要离用户更近,离钱更近,而且要能接触研发团队的各个角色。这也是不想做算法的关键原因。
2 公司对算法岗的要求。一二线公司的职位都有明确的KPI,算法岗的考察标准一般是算法或数据对性能或目标的提升。
比如做商品的购买相关推荐算法或者是配送的路径规划,再或者是对大数据的挖掘分析,一是需要不断去跟进最新的算法,提高实时性和准确性;二是要不断自己制作模型,得到能够比目前项目更优的解决方案。
特别是第二点是公司的最终需求,但实际上,大部分算法新人是很难突破现有的算法成果的。所以有的人辛苦一年,到年底拿着很低的绩效分数,因为没有出成绩。
前两年有阿里的算法应届生案例,因为不适合做算法岗,年底被打3.25,最终转开发岗。虽然转岗还是比较容易,但是第一年的这个分数会影响后面的考核。
3 前途的理解。互联网这个行业,对年龄和发展要求很高。作为过来人,回头讲讲,工作五年和十年的理想和普通情况。
一个正常的毕业生,工作五年的时候,大概在28到30岁左右。在一二线公司,不管是算法岗还是开发岗,能达到有前途的标准,至少能够成为在圈内站住脚的人。
简单理解就是相关的行业,想跳槽人家就要你。算法岗要能做到是组里的骨干,对行业的相应算法处理熟练于心,一般不要求是管理岗。研发类岗位基本上是技术经理或者初级架构师。
从数量上,工作五年还能有前途的开发岗数量是算法岗的至少10倍,此时两者工资的中位数基本一致。
工作十年时,两者的中高层次也是趋于一致的。算法岗分为算法专家或者算法管理两种,开发岗也是技术总监或者高级架构师。数量上还是开发岗多于算法岗,工资上不管是技术方向还是管理方向,算法偏高,但不同业务不同部门随机性很大。
但是工作越久,管理岗位比如技术总监被裁掉,再找一个管理岗位的难度,比一个做技术类的算法或者架构研发要大不少
毕竟管理职位数量有限,而且工作内容偏虚,技术派是实干家
发表于 2021-7-5 06:27 | 显示全部楼层
去年上半年在互联网公司,后半年在传统企业。发现个什么问题,投算法的一大把,投大数据,人工智能的也一大把。感觉应该看几个东西理性分析。
大趋势

公司的阶段



哥,咋们先谈生存,不光缺算法,我有一个梦想,就差码农了,前端后端人工智能大数据云计算,最好便宜活好,不给钱更好,这个工作比较好找,很多在学校里的公司不给钱。良心跟你讲学校里有人拉你做,算一下外卖时薪,一天多少再入伙。


有算法需求,但是看领导意图要不要组件,正在组建部门,有很大上升空间。公司大多数死于这个阶段。


有这样的部门,有算法需求,面试有门槛,上升空间一般。对人对学历要求高。小道消息,都是硕士,顶级985,211,像我在过的做移动端的,大巴留学背景,美,日,欧,澳大利亚,英国等,像我这种本科且一学期挂一把的都不好意思说。刚毕业的最好去这种,大厂,对人的工作习惯和流程的培养是无可代替的,尤其在刚毕业的时候。
公司的业务

我做个互联网教育,短视频,直播,toC,toG。
短视频,直播
有鉴黄,自动测试的需求。不过有的是小,中型公司都是买,大公司自己造。你能替公司做一套省几十w自然好。
传统公司
传统公司会由于政策因素,有部门做算法,大数据云计算。。的,但是实际效果看命,不能多少。同学有发了论文,去传统行业招聘做研究,实际结果去看机房的。门面,也不是很累。


算法也得具体到业务吧,推荐商品?鉴黄?识别车牌?美颜?叫车?

算法也得具体到业务吧,推荐商品?鉴黄?识别车牌?美颜?叫车?

算法也得具体到业务吧,推荐商品?鉴黄?识别车牌?美颜?叫车?


算法?



个人感觉提高基础能力比较靠谱。读源码,调试,提高了也不亏,408学明白了吗?算法这个名是个框子,啥都能装。个人感觉不如提高基础编程素养,基础上做好算法。面了一些刚毕业做算法的,基础烂到爆炸但是比较浮躁,我肯定谈不上面算法,我觉得git,web,linux的基础也得会点。


前途

解决问题的能力是前途,不是领域和岗位是前途。
发表于 2021-7-5 06:32 | 显示全部楼层
选专业切忌跟风,我们那会最火爆的专业是金融、会计;但是现在呢?最火的职位又变成了算法岗。
所以你要明白,算法岗位也只是互联网公司众多技术岗位的一种。
一个专业技术优秀的计算机专业研究生,可以从事的技术岗位其实不少;软件类可以选择计算机程序设计员、软件测试师、软件项目管理师、系统架构设计师等;信息系统类,可选比如网络工程师、网络系统设计师、网络建设工程师等;也有喜欢沟通的研究生,可以进入产品、运营和销售岗位的。
这些岗位其实都很有前途,最重要的是找到自己擅长的、喜欢的岗位,在岗位不断学习、实践,成长。
以互联网和云计算的巨头阿里巴巴为例,最近阿里巴巴公布了晋升到M7/ P12的高级管理者,其中创新业务事业群总裁朱顺炎和战略投资部国内业务负责人陈俊,就很有代表性。
朱顺炎,毕业于华中理工计算机专业硕士,先是创业,后加入UC优视创业团队,负责UC的市场推广及商业化体系搭建,并在首席运营官的位置上成绩斐然。
陈俊毕业后,进入浙江一家冰箱生产企业当生产工人,做销售,自学计算机编程走向项目开发,直到加盟阿里巴巴,还曾任阿里云产品部总监。
所以,建议在校大学生不要听风就是雨,需要拥有独立思考的习惯。找自己喜欢的,擅长的,能坚持精进、做出成绩的岗位,才是最有前途的岗位。
发表于 2021-7-5 06:36 | 显示全部楼层
算法工程师首先得是工程师,工程能力是第一。
我刚上研究生的时候,也觉得一定要找算法岗,不然硕士白读了,后台开发啥的不是本科生都能干吗?那我还浪费这三年干嘛,不如本科毕业直接找工作。
但现在看来,是自己当年眼界太窄了。目前大厂的开发岗还是研究生居多,本科生固然有,但是比较少。研究生可以当做一个跳板,帮助自己拿到一个更好的offer。
大厂的算法岗分为研究型和业务型。研究型指的是以发论文为KPI的,一般是各大厂的Ailab,据我所知,能进去的一般都是博士生或者很厉害的硕士生;业务型是指以业务需求作为驱动,用业界较成熟或者较新颖的算法解决问题,属于算法落地,一般归属于各个业务部门。
按照薪资来看,算法岗和开发岗的base几乎无差了。年终的话,开发岗和业务型算法岗看部门,部门业务营收多,年终就高。研究型算法岗的base可能会高一点,而年终的话也可能比普通部门要高(听师兄所言)。
说了一大通有的没的,一句话总结:如果你能进研究型算法岗,那么请毫不犹豫往前冲;如果你还在纠结业务型算法岗还是开发岗,那么我可以告诉你,两者没有高低之分,都是工程师,适合自己就是最好的。
发表于 2021-7-5 06:46 | 显示全部楼层
2020春季毕业生
毕业找了图像算法岗,现在感觉心累,硕士期间做的课题和研究都是在公开数据集上的。来公司以后,发现实际问题真的很难解决。然后对于这些实际问题一方面是自己能力不足,另一方面算法瓶颈限制,做了一两个月精度也没有很好的提升,每次开会前都慌得一批,做的怀疑人生,虽然组长也没说什么,但是自己很难受啊。
想转开发但是开发那一套又不是很懂,裸辞回家补开发的话,一是能不能找到好工作有风险,二是舍不得算法的高工资。
每天都很难受,煎熬,想着等疫情结束,交一个新版模型,就辞职回家复习开发技术栈吧。
——————————分割线——————————
转眼一年了,自己还在算法的道路上苦苦挣扎,模型迭代了一版又一版,现在和以前感受不太一样了。工作一年以后的人在做工程的时候不再会像在学校时候那样,对一两个点那么敏感,新项目来了,处理处理数据,送标,等数据回来送进模型训就完事了,接下来和上一版做个对比,效果提升,badcase干掉了,OK,上线一版。
对于需求也会不同对待了,有实际业务方的会对于数据标注把控严一点,数据多收集一点,多加点trick,多调几组参数训一训,选一组好的模型交上去。
对于非核心业务的,数据标完,自己看都不看丢进去训就完事最后精度测一下丢给QA测试,然后发给业务方,通过交付,不通过,呵,不通过就那样吧,不可能再给训的,训好了也没绩效。
再说研究方面,以前会在一个方向深挖,现在发现深度学习时代,一个NB的方法出来了,之前各种模型都废了,所以现在看的东西更广了,对于模型,以前只看指标,觉得NB就试,现在试之前会想想新模型为什么能提升效果,新的技巧是否在自己场景work,思考更深入更广了,但是也越来越感觉自己渺小了,全靠行业大牛带,自己会灵活使用就行。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-21 04:22 , Processed in 0.100778 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表