导读 本次本期分享者王喆——清华大学计算机系毕业,清华KEG实验室学术搜索引擎AMiner早期贡献者;现任某大厂算法技术经理;曾任Roku,Hulu等流媒体公司Tech Lead,Senior Research SDE;著有《深度学习推荐系统》、《百面机器学习》等技术书籍,读者10万+;8项计算广告、推荐系统领域专利,7篇相关领域paper;曾担任DLP-KDD联合主席;SparrowRecSys,SparkCTR等开源项目发起人和主要贡献者,10k stars+。王喆基于10年算法工程师经历,分享算法工程师的核心素质培养、职业发展重要阶段、行业和公司选择、职业发展与个人成长关系处理等的经验,希望给大家一些启示。今天的分享希望解决如下问题:1. 算法工程师是一份怎样的职业?2. 算法工程师职业发展的几个重要阶段3. 技术路线和管理路线如何抉择
4. 怎样选择行业和公司
5. 职业发展和个人成长的关系本次分享预期达成的目标:
1. 纠正职业发展中常见的认知误区
2. 提供一些个人的发展建议
3. 不涉及具体的技能介绍,技术方案介绍等技术干货
分享嘉宾|王喆 前字节跳动 算法技术经理
编辑整理|王帅
出品社区|DataFun
01
算法工程师是一份怎样的职业
算法工程师定义
算法工程师是一个在客观环境限制和明确的业务目标指引下,利用自己的算法和工程技术能力解决问题的职业。
要正确理解四个关键词:
1. 客观环境限制(约束)
2. 明确业务目标指引(目标)
3. 算法和工程技术能力(能力)
4. 解决问题(本质)
对自己职业属性的正确理解是在这个赛道上发展的基础,错误的认知带来错误的行为,进而带来不符合预期的结果。
几个误区
1. 客观环境限制(约束)
-
小A来自业界最知名的大公司,则他一定是一个成功的工程师吗?
-
不一定,他的客观环境发生了变化。历史的工作经验是一个较好的参考标准,但它不是一个充分必要条件;
-
小A在之前的公司能够成功,不代表着在新的公司环境下也能成功;
-
他在大公司能成功,不代表着能在中型或者创业的公司能成功;
2. 明确业务目标指引(目标)
-
小C对技术痴迷,领导很多开源的项目,工程师是否技术强则一定成功?
-
不一定。工程师的首要目标是在明确业务目标指引下解决问题,技术强能为你增加更多解决问题的技术手段,但不代表着一定可以解决问题。
3. 算法和工程技术能力(能力)
-
小D发了很多paper,写了很多浏览量很大的blog,他一定是成功的工程师?
-
不一定,工程师不等于研究员,更不等于知名博主,一定要看他是否解决了实际问题,是否带来了实际效果的提升。
4. 解决问题(本质)
-
小E模型创新强,思路灵活,模型试验效果很好,他是成功的算法工程师吗?
-
要分情况看待。若要解决的问题是降本增效,利润上岸,但工程师将模型复杂化,从而大幅增加了机器成本,虽有业务收益,但也有限,这显然不是一个成功的工程师应该坚持的方向。
02
算法工程师职业发展的几个重要阶段
1. 夯实技术基础阶段(工作1-3年)
a. 欢迎走出校园(学术环境),来到真实的世界;
b. 不要局限自己的技术栈,算法工程师必须要熟练所有工程和模型相关的工具(模型训练/领域知识/数据流/模型服务/特征工程/线上服务);
c. 不要过分纠结哪家公司好,哪个团队好,哪个业务好;
d. 不要为之后的发展埋坑,哪怕慢一点,也要夯实自己的技术基础。
2. 解决业务问题阶段(工作4-5年)
a. 利用技术解决问题,把技术转化成生产力和业务收益;
b. “业务sense”要好,基于业务场景做技术选型;
c. 技术是武器,不是目的,除非业务收益本身就是技术创新(比如OpenAI,或大多数技术中台部门)。
3. 提升软实力阶段(工作6-8年)
a. 硬实力依靠努力基本都能提升,软实力不一定,绝大多数工程师卡在这一步;
b. 一个人的核心素质是其在职场,甚至人生路上能否走得更远的关键。
4. 扩大影响力阶段
a. 如果真正能渡过以上三个阶段,第四阶段水到渠成;
b. 从技术角度扩大影响力(架构师),从业务和管理角度扩大影响力(技术管理)。
鸡汤时刻:你本身处在哪个阶段,几乎跟你的工作年限没有关系,只跟你的绝对实力和认知水平有关系。03
算法工程师的核心素质
1. 自信和勇气
a. 面对风险敢于向前的能力
-
小的方面,敢于发问的能力(让自己的思考产生实际价值、影响更多人);
-
大的方面,遇到高风险项目,勇敢承接、拆解成低风险项目,进而完成该项目。
2. 细心和责任心
a. 治大国如烹小鲜,项目能够成功也来源于一个个细节的完成;
b. 细节是魔鬼,一个成功项目的收益往往只来源于一个关键点的提升。
3. 分析与发现
a. 建立分析-实现-反馈的解决问题闭环的能力;
b. 不要指望别人告诉你具体怎么做,要通过主动思考发现怎么做。
4. 开放与合作
a. 要学会如何跟人打交道,联合大家的力量把事情做成;
b. 一个人的领导力大部分基于你能否给别人信心和力量;
c. 要正确面对职场的阴暗面,潜规则是存在的,但大部分阴暗面都是你的精神内耗。
鸡汤时刻:越发展到最后,就越应该关注自身的核心素质提升。换个角度来说,你在职场中做的每一件事情、完成的每一个项目、本身都没有那么重要,这些事情和项目给你带来的核心素质的提升才重要,这些核心素质将跟随你一辈子,谁也抢不走,换不掉。04
技术or管理,路线如何抉择
技术路线和管理路线如何抉择?
一个很多人认为比较重要,其实意义不大的问题:
1. 职业发展的目标要以提升自己在职业发展的阶段和核心素质为首要目标,职级和职位应该是附带属性;
2. 比较高阶的技术职位和管理职位大部分是业务需要或者团队变化的需求。该类职位并非可以追求得到,需要将重心回到核心素质的提升上,让自己符合候选人的条件;
3. 一般来说,机会的数量大于合适的人选数,大部人是因为自身的各种原因,无法承载机会;
4. 本质来说,高阶的技术架构师和技术经理在核心素质上的要求没有区别,缺乏沟通合作的能力的架构师和技术基础薄弱的技术经理都会被淘汰;
5. 管理路线的天花板相对较高,但跳槽难度更大,业务压力更高,在目前中美互联网的大环境下,被淘汰的概率更大。
鸡汤时刻:掌控好你能掌控的部分,其他只需等待机会。事实是绝大部分人无法掌控好自己可以掌控的部分。
05
如何挑选行业和公司
如何挑选行业和公司?
-
对于一个普通人来说,判断一个公司要不要加入的要素非常简单,就是看这个公司现在赚不赚钱,未来能不能赚钱。
-
其余的要素,比如技术先进性,名声,规模,企业文化都是次要因素,不是主要因素。(例外:有强烈技术理想,创业理想,改变行业理想的工程师们除外)
问题:站在2023年中这个时间点,你对互联网行业如何判断?
你会加入大模型,量化投资这些近期比较火的方向,还是倾向于传统的搜广推方向。
-
大模型对于搜广推的影响是不一样的。对于广告的影响应该是相对较少一些,它对广告的影响应该是限于素材生成;可能会优化CTR 或者 CVR模型,但不会完全替代掉两个模型。
-
se未来每个公司可能都会搭建一个私有的大模型。大量的用户历史行为数据,属于公司的私有财产,不可能完全给到通用的大模型;
-
通用大模型作为一个赢家通吃的行业,未来可能会存留下少数1到3个公司,由于其对成本要求高,不是小的创业公司可以玩得起的,从而相关从业者会非常受限,核心人才圈子可能就几百人得规模。但可能会有一批进行分领域的大模型适配的从业者。
06
职业发展和个人成长
如何处理职业发展和个人成长关系
怎么处理好职业发展和个人成长的关系?
1. 要找到更偏内核的东西,优化它,而不是把目光永远放在表层的目标上。
-
要关注你是否通过一个项目提升了自己的分析能力,技术实力,业务sense
-
而不是把自己的注意力都放在下次能不能晋升,30岁前能不能升P7,35岁前能不能当经理这些表层目标上。这些是你的欲望,不是你的核心素质。
2. 要正确理解35岁危机到底是什么原因带来的
-
年龄仅仅是一个相关因素,不是因果因素。
-
只有提升不可替代的核心素质,才能渡过所谓的35岁危机
-
例子一:公司有一个国际化项目,需要你跨语言,跨时区协调国际化团队
-
例子二:公司有一个风险很大的新项目,需要一个综合素质很强,核心素质很好的工程师打头阵
3. 不要长期的过度用力,如果有的话,选择主动退出
-
工作仅仅是你生活的一部分,对你整个人生来说,重要性更低;
-
要正确分辨幸福感是来自于外界还是内心,要学会去追求多样性的幸福感;
-
只有关键时段的过度用力是必要且值得的。
可持续or不可持续发展
职场的提升路径是一个闭环,不要为了达成项目成功而过分加班超额投入,这是不可持续的。
07
Q&A
准备读研做算法方向的建议
-
在计算机的大方向上,如果以就业为导向,读研的细分方向没有那么重要;
-
注重技术的全面性;
-
除非未来希望做科研,否则要尽量找工作和实习。
-
不要沉迷于离线或虚拟数据集中;
-
多接触真正的业界问题。
推荐算法工程师如何体现自己的业务价值?
若发现业务提升点,就可以组织产品相关的运营、自己的领导,主动推进这个事情,这将对于你自身的能力提升以及团队对于你的认知都是非常有利的。
面试中怎么体现项目的拆解和分析?
通常面试官会让面试者现场去解决一个虚构的或现实中存在的业务问题,考察业务sense。例如:
-
广告主体验的问题
-
推荐系统中冷启动的问题
-
转化延迟的问题
-
在数据缺失情况下的模型优化问题
可以考察分析和解决问题的思路,把业务拆解后转化为合适的算法进行落地的能力。
一般的解决问题的思路是把高维降为低维,把复杂降为简单,把不确定性降低为低确定性,把低确定性降低为确定性。在这个过程中需要大量的数据的分析和业务的理解。
大龄员工如何选择?去国企还是继续卷互联网?
-
这完全依赖于个人的选择,在互联网也不一定要卷,去国企也不一定就是万全之策,找到适合自己客观状态的那条路。
-
在互联网卷,如果自己有机会完成从工作时长加长到核心能力提升的转变,则可以留下,若厌烦了卷的过程,可以退出。
核心业务边缘组和边缘业务核心组怎么选?
基于自己条件判断,工作1- 3年,先将技术夯实,因为不是业务的领导者,组其实并不重要。当你到了一定的级别之后,尽量选择核心组。
-
核心业务的核心组(主要选择)
-
边缘业务的核心组(借助你自己的力量把这个边缘业务变成主流业务,这个过程你的收益更大)
-
核心业务的边缘组(核心业务所有组都是核心组,能不能做好全看个人能力)
大厂的搜网推业务都很卷了,现在是否适合应届生入行?
-
应届生不应该过多地判断一个业务是不是合适,而应该看自己前三年能学到什么;
-
任何一个容量和高度足够大的行业,都可以让你取得足够的发展空间,包括搜广推。剩下完全看你自己的能力深度,这需要长时间在一个领域的耕耘。
平时做算法工程师,业余时间研究量化,让算法模型在服务项自动运行量化选股票还是期货市场比较好?
-
不建议。考虑量化公司的对手,不论是国内还会国外,人员都是来自于最好的学校,机器资源也非常多(可能一个数据中心有几千张A100 显卡),个人根本无法战胜。
-
如果一定要做,可以做一些中长期的量化投资的策略(星期级别的交易策略)。
以上就是本次分享的内容,谢谢大家。
分享嘉宾
INTRODUCTION
王喆
前字节跳动
算法技术经理
目前任某大厂算法技术经理,Ads Ranking方向负责人。曾任Roku Tech Lead,推荐系统架构负责人,Hulu 高级研究员,品友互动 广告效果算法组负责人。毕业于清华大学计算机系,主要研究方向为推荐系统、计算广告,发表相关领域学术论文和专利20余项,曾担任DLP-KDD联合主席,KDD、CIKM等国际会议审稿人。SparrowRecSys,SparkCTR等开源项目发起人和主要贡献者,10k stars+。著有《深度学习推荐系统》,《百面机器学习》等技术书籍,读者10万+。
活动推荐