对于算法工程师职业生涯规划的考虑

最近和很多p8,p9,p10..~后面我也迷糊了的级别的同学请教,也阅读了很多资料,在此也分享一下我从他们身上学习到的东西和自己的思考和大家讨论

本文分为两个部分:什么叫做优秀的算法工程师、在面临换工作/就业的时候,自己应该依据什么做选择。(阅读时间约7min)

移动端推荐关注「小李杜的科幻年」~~~

什么叫做优秀的算法工程师

先扔一个观点。优秀的算法工程师是解决问题的人。

一定的工程能力

我在第一份正式工作的时候,领导和我们强调了,你首先是一个工程师,然后才是算法工程师。你每天在那里加个特征,调个参数,临了连个服务也上不去,有了bug也不知道怎么改,一个小型工程都做不出来,怎么能叫自己是算法工程师呢?

良好的业务理解和应用能力

一个p8 同学和我在聊天的时候这样说,对于算法工程师来说,模型/算法上的差异其实并不大,大家一开始的切入点不同罢了。最难的其实是业务上的差异。对业务的理解,处理方式决定了一个算法工程师的水平;业务的好坏决定了算法工程师的发展速度。至于说技术,公式,都在书上写着,自己认真看看就学会了。

良好的产品sense和业务owner意识

Still,是我的第一份工作的另一个leader告诉我的,在完成PM的需求的时候,你要对她所提出的需求有自己的理解,对她所在的业务有自己的理解,最好是能够从你这个角度对pm的工作产生正向引导。所有的模型产出一定要和最终的业务收益挂钩,要能够落地,空中楼阁不在我们这里所倡导,如果你希望一直搞学术研究,应该去高校、研究所。总体来说,我们要用数据说话,牢记我们的技术不能脱离业务。【BTW,有时候我们会觉得这些都是屁话,因为领导当然希望我们的产出可以赚钱了~.~不过仔细想一想,如果你希望自己可以和公司一起快速成长,那么将自己的发展和公司的发展尽可能规划在一个方向上,不就是一种很方便的路么?】

给团队争取利益,而非享受团队的利益

好吧,还是第一份工作,这份工作给我带来的更多的是学生思维和职场思维的转换吧。经过这一份工作之后,我知道自己不仅仅要完成leader给我下达的任务,然后尽可能的拿到一个好的绩效评分,我还要在这个基础上,思考自己是否可以给团队整体带来更大的收益,以做大整个团队的蛋糕。

如果你已经是团队leader了?这部分我还无法给出我的建议。不过我在聆听前辈指导的时候,他有说过,leader不过是在普通同学的基础上,落实的更到位更好,然后在团队建设和团队发展方向上发挥的更多。不同级别的leader都是在之前的基础上进一步的发展更多的能力,然后可能因为精力的原因有所偏重和放弃。

在面临换工作/就业的时候,自己应该依据什么做选择

我很喜欢这个问题,是我最近一段时间不停在问别人的问题。应该分为两个阶段。

认识自己

如果沟通能力等比较好的,其实个人建议去业务上的算法团队,而不是中台或者lab部门,这些地方离业务比较远,不利于自身优势的发挥。如果是为了赚钱/打仗,那么最大程度地发挥自己的优势才是我们应该做的。反之就去中台/lab。这叫做能力适配

如果是喜欢“追名逐利”的同学,即物质/名气/利益驱动,同样业务部门或者综合性发展的渠道对于自己来说会更加舒服,因为这里的收益看到见摸得着,你可以更好得得到正反馈以形成正向迭代。(即pm同学,产品线/业务线上的算法同学,其他工程/运营等同理)【我并不认为追名逐利是贬义词,是单纯描述在你的工作中你希望收获什么,大胆认识自己才是最重要的】

如果可以不在乎自己赚多少钱,只在乎自己做的事情是否喜欢,则是很明显的兴趣驱动,那就去做自己喜欢的事情吧。这是很幸运的同学,但同时要注意的是,面包也是自己要关注的一点,毕竟人是要活在这个世界上的。(纯技术线,lab,pm等都是很好的发挥兴趣的地方)。这两个part叫做兴趣适配

最后,我还想补充一下。其实在这个时候并不是非黑即白的。刚毕业的时候,我万分憧憬做科研,觉得可以研究paper,不用管业务的乱七八糟很舒服。后来,在工作的过程中以及和前辈的讨论中,我逐渐发现了自己其实也是很好大喜功的,年轻人嘛。如果我早就是科研大牛了,那妥妥的发paper最爽啊~,为啥?因为年纪轻轻著作等身,还有良好的经济报酬,名利双收,这才是我最想要的。【兴趣和能力并不一定划等号,我五音不全也可喜欢音乐到死对不~】

选择工作

这是一个很好的话题,也是我在选择offer的时候思考很深的一个问题。一个我很尊敬的d老师跟我说,找工作本身就是一个信息搜集和信息处理的工作,让我豁然开朗,也让我展开了对我认识的好多前辈好友的狂风乱炸,以尽可能榨干他们身上的每一分情报....感谢d老师给我的建议和宽容,也让我放心的去找人问了~(想一想,面试不是么?

首先要牢记的是,选择是自己的事情,别人的建议始终都是建议,要对自己负责任。

在选择的时候,有以下的依据:

一、行业>方向>领域>专业

举例来说:

行业:电商行业(淘宝),O2O(美团),直播(快手),短视频(抖音)、智慧+一切 etc

方向:算法、工程、大数据 etc

领域(工业应用):广告,搜索,推荐 【业务成熟】,量化投资,自动驾驶,语音识别 etc

专业(偏学术,学校):nlp、cv、ml、dl、asr、mmu etc

选择的话,大趋势决定上限、个人努力逼近上限

二、如何看到机遇和努力呢?

机遇比努力更重要,但是机遇可遇不可求。可控的只有努力了。

三、所以一个人在不同的阶段适合的地方是不同的。

1. 学习阶段:学校/大厂的安稳部门。就是安心学习技术,慢慢上线+成长。缺点:速度比较慢,容易安于现状,把平台/学校的牌子当作是自己的实力

2. 有一定积累,但是还有待继续提高:去迅速发展的大厂新部门/独角兽,这种地方一般业务在快速扩张,所以有很多地方可以上手自己的模型算法,可以满足实操的需求。但是又比较张弛有度。这种地方一般没有缺点,除非这个部门被砍了,公司倒闭了。(某司的云业务发展很好,但是和公司的大方向战略不一致,后期就砍掉了大笔预算;本来公司好好的,忽然自己的业务因为某些原因忽然没有了)

3. 积累差不多了,自己也知道怎么在干中学,学着干了:可以去一些迅速扩张的地方。优势是你可以大展拳脚,如果自己的实力足够强,可以快速拉起山头;但是容易疲于业务,得不到积累。

我认为上面说的就是三种公司。当然主要是指大厂/独角兽,在业务层面的分析。我们可以看到每个地方都有他的特点。最难的是正确的判断自己能力。

四、风物长宜放眼量

做选择的时候要看远一点,长远一些。记得我在和一个很要好的猎头朋友在请教未来自己的职业发展规划的时候,我说你看我这么做能不能帮助我快速晋升到p8对等级别(hhh 我又在白日做梦了),她给了我很好的建议。但同时也建议我,如果从p9级别来考虑的话,是不是更有利于我做出决策呢?

可以说是当头一棒的让我从不同的角度重新思考了我的决策。

由于我的眼界和思维天花板,导致我纠结于p8的级别和能力,但是一旦自己可以从更高维度来思考自己面临的问题和决策,眼前的很多问题则豁然开朗。「举例来说,你在高考选择学校/专业的时候很难,但是你考虑一下自己未来想做什么工作/去哪里读研,考虑一下自己想在哪里生活等,是不是更好做决策了呢?」

所以说,如果你不知道如何做选择,可以尝试着往更远的方向思考,会更有利于自己作出决策。但是你是否了解远处?这就考验你平时的信息收集和信息消化能力了,临了的时候是着急也没有办法的。

不过你也可以像我一样,临时报佛脚,多问问前辈和身边的人,看看他们的意见和建议,收集一下他们的信息,可以帮你在决策的时候更加全面,同时也提供不同的思路。

五、组织活力。

这是我在参加新人培训的时候,被说到个一个名词。由于我没有资格去点评各大互联网公司,所以我就不说是哪个了LOL。...

我拿我的母校来说事吧。(毕竟母校就是只允许自己diss的地方)

她所存在的问题,就是学校的整体趋势在往下滑,来了的同学心有不甘,来了的领导觉得做不成事,导致整个学校的整体风气和发展势头并不会向好。这个时候,就像一个人年纪大了,也不想运动,也不想学习,不运动身体更不好,不学习学习更差,则恶性循环。似乎就是这个道理?

最后,我还要特别感谢一下给我提出建议的z同学,他很强也很nice,有耐心,我也是遵循他的建议更换的工作;帮我修改简历的l同学,我以为他没有时间帮我看简历;帮我投递各大公司的y同学,l同学,c同学,l同学,t同学...发现一共只有26个字母,似乎很快就用光了。Anyway,感谢所有帮助我的同学,我会将你们的帮助继续传递下去~

社招内推:https://job.toutiao.com/s/JhDNwd5

校招内推码是:AAAV33F

最后还是给一下我个人的建议:

如果沟通能力等比较好的,其实建议去业务上的算法团队,而不是中台或者lab部门,这些地方离业务比较远,不利于自身优势的发挥。如果是为了赚钱/打仗,那么最大程度地发挥自己的优势才是我们应该做的。反之才应该去中台/lab。

算法的本质是在解决问题。知道自己的能力是什么,知道自己想要/擅长解决的问题是什么,match起来。这才是每一个算法从业者应该考虑的问题。

知道自己什么时候想要什么不是一个平凡的技能。

我后来思考了一下,感觉即便是不同的岗位或者不同的专业,大家在面临这些的时候原理都是一样的,欢迎和大家一起讨论,也希望可以给大家一定的帮助。

机器学习及NLP
机器学习及NLP

分享如何做好一名算法工程师。

理论字节跳动人工智能算法工程师
3
暂无评论
暂无评论~