论机械狗如何硬卷算法岗
前言
本文目的有三
- 个人学习生涯的总结和记录
- 分享非科班转互联网的经验和感悟
- 对于转行互联网的想法 & 交流
说明:本文会将题主转码前后的心路历程详尽道来,我想有打算转行的同学应该会有类似的经历。
只想看干货的可以跳到第四节。后面还会专门出一期转码面经
一、个人情况
个人信息
双985硕,本硕均机械专业,0基础硬卷算法岗成功,转行上岸
硕士研究方向为智能故障诊断,水过2篇SCI,无顶会论文,获国家
实习经历
富士康:没错,就是那个富士康,属于校企合作项目,机械设备的故障诊断
腾讯:Robotic X 实验室,主要是强化学习在机器人上的应用
阿里:阿里云,机器学习岗,主要是机器学习在工业领域的应用
字节跳动:推荐算法,主要是拿到offer之后来体验的
秋招offer:
阿里、字节跳动、美团、华为、OPPO、顺丰、科大讯飞、新浪、深信服、中兴(蓝剑计划)等 15+ offer
二、转码前的徘徊
转码前的经历
前面提到,题主本硕所学都是机械。高考报考是因对其感兴趣,至今也仍爱之如初,爱之切,念之深。
本科最开始的时候,离真正的生活还比较远,因此没有考虑到机械的就业现状,只想着早点工作早点赚钱,于是我经常参加机器人相关的比赛,也获得一些名次;并且花大量的精力在学生工作上,也达到了自己预定的目标。
到了保研之际,毅然决定读研,只是保研操作失误,并没有到自己想去的高校,不过祸兮福兮,如果换个高校我可能就没有充分的时间精力自学、实习、转行了。在此真的非常感谢我的导师!
读研之后第一份实习就是到富士康实习(导师和那边的合作项目),和流水线工人同吃同住,不过也没有外界传的那么可怕。我们主要是做深度学习在故障诊断领域的应用。实习之后才第一次知道我们平时玩的demo根本没有办法直接落地。其实我们完成项目的过程中最大的困难并非算法,而是前期的实验设计和实验过程。
思想的改变
从富士康“退休”返校已经是研二,将学业上的事情基本搞定之后,毅然决定转码。没有去过工厂的可能根本无法体会,站一整天,满手洗不干净的机油,大家可以随意感受下对比
三、转互联网的思考
浅谈机械专业
本科阶段(2014年),机械还是一个不错的专业,就业率高,社会需求稳定。机械有“万金油”之称,意指从机械机构到嵌入、再到算法,啥都能干,因为啥都学,当然这也容易导致啥都学不精。
机械也有“越老越吃香”之说,因为对于传统的机械师傅而言,经验就是王道。也就是说,即使很清晰得告诉你每一步怎么做,最后你还是可能做废了,因为很多经验是无法量化和标准化的。然而我想在有体力、有能力奋斗的时候就“吃香”。
机械虽然没有“生化环材”的天坑之说,但是也差不多了。我们机械学院几乎人人转码,因此被戏称为“计算机二院”。我转互联网当然也受到氛围的影响,但是,最终还是需要量身定制自己的规划,盲从是不可取的。
转行的思考
我从来没有认为机械专业不如CS,只是对于处在当前环境下的我,互联网方向更适合我罢了。这里提到的“环境”包括家庭情况、个人追求的倾向、个人未来的发展规划等。互联网工资固然高,但也是需要牺牲一些东西去交换的,比如健康的身体。
身边也有很多同学放弃互联网,去选调生(一起阿里实习的同学)、去深圳当老师(“陈同学在搬砖”)、去考公务员(最佩服的的实验室师兄)、去银行(高中同学)、转金融读博(本科同学)等。选择很多,重点看你自己的选择。
所学七年付诸东流?
读研之后,才慢慢感受到世界变化之快,没有什么是一成不变的。虽然以后大概率不再拿扳手了,但是在机械学到严谨、追求细节这些搬砖精神仍然是有价值的。
重要的是,生活中大多数事情都可以自己动手解决,不是很棒吗
还有,既然敢放弃七年所学,并且能够转行成功,要相信自己的能力也不差,就算再学新的东西也不怕
四、算法岗的准备
废话结束,进入正题。
为什么硬卷算法岗
题主是机械转算法岗,至于为什么转算法。原因有二,
- 研究生阶段用到一些算法相关的内容,算法相对更容易转成功
- 虽然当年算法岗已经一片红海,但是我客观分析了自己的能力,并且做好充分的准备,大不了还当机械狗呗 🐶 🐶 🐶
真的要卷算法岗吗?
我体验了算法岗从诸神黄昏到灰飞烟灭的过程,本质上就是供需关系导致的。小厂没有那么多经费给算法研究员烧,大厂算法岗也远比开发岗少,但是由于算法岗给人的感觉是“门槛低”,所以导致了供大于求的市场关系。
因此,算法岗的面试也越来越硬核,算法面试一般需要以下几项能力
- 顶会论文 or 大厂实打实的实习 or 重量级大赛TOP
- 扎实的计算机基础
- 数据结构与算法 & 扎实的解题能力
五、面试经验
面试规划
根据上述面试要求,分解自己的学习目标,以我自己为例分析。我没有顶会论文,并且研二提前完成了硕士要求(研究方向的论文要求),因此我把重心放在了大厂实习上。
5.1 量身定制面试思路
面试官其实也知道你就是一个校招生,你自己觉得多🐂🍺的东西,在面试官看来都是 demo,因此只需要重点突出你做的东西,你的思考。面试官想知道的是你的能力,而不是你具体做的东西。只要你学习能力够强,再给你一个新的东西你照样能学好。
因此,我的思路是以自己现有的东西,不断去找实习,不断提高自己,丰富自己的简历
1. 富士康 => 腾讯
- 首先按照自己的情况,没啥好拿的出的东西,重点是 SCI 论文和富士康的实习项目,那就以这两者为重心
- 瞄准近期招实习生的单位,广撒网,不要只在自己学校的渠道找,完全可以去其他学校的论坛、校招实习群等蹲,或者找其他学校的学长推荐等,所以说,渠道打开也是很重要的,我就是在其他高校的渠道找到实习的
- 我在腾讯实习期间做的是机器人算法相关,算是和机械能沾上边,自己尚有一点优势。试想,如果我一上来就去找 CV 的实习,估计也上岸不了
2. 腾讯 => 阿里
- 阿里的实习其实也是从其他高校的渠道找到的,可见格局打开多么重要。🐶
- 阿里的实习做的是机器学习在工业领域的应用,也和自己的专业有比较高的契合度
3. 阿里 => 字节跳动
- 阿里实习结束并顺利转正。
- 当然在阿里实习期间,我并没有停止面试其他公司。在找工作上,适度“渣男”更能有谈判的筹码,因为只有你手上有更优的offer选择,谈薪的主动权就在你手上了。除此,同时面试其他公司也能避免转正失败而导致的巨大损失。
- 拿到字节跳动的正式offer之后,我马不停蹄得到公司实习,因为只有实习才能最真实得感受公司的文化,你只要呆一段时间,就很清楚自己喜不喜欢。我最开始也是纠结阿里和字节,最终体验以后果断入了字节。
5.2 具体面试经验
面试核心主要两块,一是项目介绍,这是你自己的时间,一定要重点把握;其次是 Coding,这个无他,唯练尔!
多参加面试
- 每一次面试就是增长自己经验的过程,每一次面试都是了解自己短板的机会
- 面试一定要写总结,多多少少皆可,有复盘才能有提升
- 不要一上来直接硬刚你最想去的公司,毕竟是最终目标,前面多拿小厂刷经验才是明智之举
- 按照公司面试难度大致划分几个分区,按照难度系数一步步升级打怪
面试,不用怂
- 前面提到,面试官希望从面试中了解到的是你的学习能力,而不是你做的demo细节。当然,越是大厂越是如此,腾讯、字节、阿里皆如此
- 你做的东西你最清楚,面试你慌啥?在面试经验丰富的情况下,你就是你的项目的权威
- 每次面试,把项目细节都要越扣越深,这样才能对答如流
- 把自己的项目不断重复介绍,可以录音,反复听。你所说的每句话、每个词,都可能是面试官挖坑的关键词!
刷题
- 关于刷题,公众号中有专门的栏目,暂时大部分还在 CSDN 上(https://blog.csdn.net/weixin_41888257/article/details/107397221),后续会逐步完善
- 不能为了解题而解题,还是那句话,面试官想看到你的能力,那么一题多解就必不可少了,从最简单的解法开始逐步深入
5.2 面试心态
- 只要参加面试就有可能会挂,这很正常,首先需要接受自己暂时的失败
- 不止是你,无论多大佬的大佬,都会偶尔经历被挂。面试不仅仅考察能力,也有运气成分。你和面试官的风格是否相符也是一个因素
- 挂了并不是坏事,重要的是复盘,面试最后都可以问下面试官,你还有哪里可以再提高(不用直接问对你的面试评价,问了人家也不会说,换个说法就是 “您对我后续学习的路线有什么建议吗”)
六、工作体验
题主现在在字节跳动 Data 下的推荐算法团队,入职之前来实习体验过,所以知根知底,入职顺利融入,毫无违和感。
工作氛围:
作息:大家一般十点到十点半之间到工位,我住的比较近,一般九点半到。晚上大家一般九点半左右下班,当然也有偶尔自己写的 bug 没有搞定的时候晚点回家了
饮食:等你的体重上来了,你就知道伙食怎样了。虽然没有HR对外宣传的那么好,但是也差不多。三餐免费,下午茶水果或者肯德基这种。午餐和晚餐都会配水果和饮料(苹果、橙子、雪碧、果粒橙、快乐水等),公司还是下了一定的血本的哈。饭菜的话,你拿多少都不会有人说你,阿姨都很好,甚至看你比较能吃,再多给你点。
工作:讲道理,字节的mentor是我体验过的大厂里最好的,简直就是手把手教学,因为题主基础差,即使多问几遍也不会说 “我不是跟你说过了吗?”,而是很耐心得跟我解释其原理。
工作内容的话,主要是做推荐算法,题主现在正在不断学习的过程中,反正不懂就查资料,查不到就直接问同事,大家都很 nice,即使是很傻的问题,也没人说你笨
七、算法岗未来的思考
以下仅仅是个人看法。
个人感悟
- 工作之后,发现新的东西真的是层出不穷,尤其是算法岗,所以不断学习以提高自己是非常重要的
- 另外就是,不断提升自己的圈子,向圈子里最优秀的那群人学习
关于算法的思考
- 个人认为算法岗供大于求的局面还会持续一段时间,即使是已经有部分同学又转头去卷开发岗的情况下
- AI 在实体业的落地难度依旧很大。首先是四小龙现阶段的情况可以说明一些问题,还有题主之前在阿里实习的时候做的就是算法在工业领域的应用,这种落地很依赖场景数据,但是矛盾的是,数据却很少。落地会遇到各种水土不服的问题。
- 对于算法岗的需求而言,广告推荐应该是大于CV和NLP的
- 国家最近出台的对于广告领域的打压,也会一定程度上影响算法岗的需求,但是至少现阶段,广告推荐的需求还是不小
八、生活思考
入职之后,越发感受到身体的重要性。小小年纪已经出现干眼症和颈椎不适了。
运动起来吧,少年!
九、关于内推
通过字节跳动校招官网投递,部门为 Data,岗位是 算法工程师-火山引擎
最后加上我的内推码 KNT8GE6 即可
可以关注我的公众号
苏学算法
#算法工程师面经##字节跳动##内推##校招##秋招#