查看: 4992| 回复: 7
跳转到指定楼层
上一主题 下一主题
收起左侧

[转CS-求职] OMSCS录取和老鸟对DS转码(MLE)的一些建议 (顺便求米)

   
全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
楼主背景:在美国读的统计硕士,工作转码,后转MLE。最近准备再读二硕OMSCS。
为什么读OMSCS?楼主对技术一直比较热爱,由于第一个硕士是统计,可以预见未来职业发展的技术瓶颈,所以这次研究了一下各家的online program的课程,觉得OMSCS的最合适,强度合理价格合理,所以只选了这一家,一个月后拿到ad。

在加入了OMSCS的新生群后,发现不少转码的同学选了这个program,也有不少人对转MLE感兴趣,希望能分享一些我自己的转码心得。

转码,尤其是MLE需要理解这个职位是做什么的。现在每家公司对title的定义不一样,我想大多数人是对大包裹的hard core算法的MLE感兴趣。这类MLE一般是两种人,一种是phD有比较深的研究背景,理论和应用都比较牛,又在大厂做过Applied或Research Scientists,能接得住对算法本身进行优化,知道什么时候用attention改进LSTM,什么时候用Gated Model就可以了,懂得分析最新的paper,拿来自己实现里面的算法解决现在的业务问题。这样的人很少,且是高pay的。

另外一种偏工程的MLE(不是ML DevOps),是默认已经是至少大厂工作过2-3年以上的SDE,加上ML的知识和经验,对MLOps,ML Serving和Productionize都需要有比较深的理解,加分项是能读懂PyTorch/Tensorflow/Cuda的一些底层处理文章,甚至源代码,还知道如何分析一个PyTorch的模型Forward过程,找到提速要点,解决工程优化的问题,甚至知道TensorRT等加速。一般要求比较深的算法和底层数据结构功底,和对软件架构、抽象要比较熟练。当然,具体工作内容会随着业务需要有所不同,总体上是偏工程类。. ----

所以除非非常牛的硕士ng,一般公司是不太可能从硕士NG里面招MLE的。大部分只从课程学会的调包侠和调参侠,很难能接住工作变化的需求。.google  и
.1point3acres
有课程可以学到这些吗?很遗憾,还没发现有,少部分的可以在贪心学院、Udacity, 斯坦福CS231等学一些基础。大多数是需要读论文、工作经验积累的。而且一旦一些技能可以培训规模化了,也就不太可能给高薪。物以稀为贵。

那本硕ng如何更好的转码/MLE?. Χ
我的建议是内部转组。先进入大厂,不管是BA、DS职位,再考虑通过内部转组来转码或转MLE。首先,大厂的经验是被业界认可的,反之,平均来说小厂经验则比较困难(少数大牛和人脉广的大佬除外)。优先选择大厂对未来的加分很重要。其次,内部转组来转码在大厂里面有一个非常大的优势:理论上无冷冻期次面试。大厂内部是你先联系到hiring manager,完成面试后,才会让你正式投递,当然你一旦通过面试就比较难反悔了。这样的流程意味着你可以通过面试来改善自己的简历、刷题和策略。你可以每天刷一刷内部的网站,和各个HM保持联系,有机会就可以试试,即使失败也不怕,manager是比较乐意给出你的反馈的,比如我自己第一次面试就发现OOD比较薄弱,后面专门主攻了一下,后面就比较顺利了。
当然,还有一种是组内直接完成转码,这个在时机成熟,组内也需要有更多SDE的时候,你可以跟现manager申请转码。
这比你直接从DS等职位跨专业跨公司去面MLE要简单,给了你过河的中间一个踏板。
当然,也有一定tradeoff要考虑,就是你的工资很可能暂时是不变的。但这没关系,过了一年后,等你积累了大厂SDE的经验,自然就会有HR在LinkedIn上来撩你。你这个时候就有了更多的谈判砝码,也可以选择跳槽。

DS转码在技术上的欠缺有什么?. ----
很多地理都强调刷题,毋庸置疑刷题很重要,对面试有决定性作用。但我觉得更难的是你的领域切换,是否能够适应新领域的行话。
如果没有CS背景的人,在转码后就算能勉强使用工具或者搬砖,但会发现,同事Design的不少自己听不懂,哪些fancy words的背后use case也无法理解深刻,什么waterfall,什么Kafka解耦, 甚至Singleton也不知道。。。这说明转码远远不只是刷题那么简单。而且现在就算刷题,面过不少的转码选手后也会发现,code可以反映出来一个人SDE的一种素质。优秀的candidates可以比较合理的讨论假设,给出好的test case,模块化自己的代码,大概率会拿到Strong Hire;反之,如果只是把题目做完,给了个算法上的优解,这是很难让人满意的,最多只能给到Hire,大部分都是no hire。
.--
如何补计算机知识?
我自己感受是要丰富自己需要用计算机知识解决问题的场景,比如报网课、学OMSCS等是一种方法,相对可以系统一些,另外一种是在工作中遇到问题了,去google,或在udemy等学一学。比如当时我第一次需要对spark进行调优,就需要去学习一下底层的shuffle原理,找到了美团等公司的技术博客,一点点去深挖和看spark源代码,慢慢让自己成为to-go-person,最好再给大家做一个presentation,这个时候你对知识的掌握就非常牢固了。再比如ML模型训练速度太慢,那么你可以google如何做benchmark,分析data movements,自己做做实验发现瓶颈在哪里后,开始进行改进。这些有输出的学习效率会比随着课程被动接受要高,而且有明确的目的。一个知识在不同的地方你都见过,就会加强神经联系,学得夯实。

网上那么多课程,感觉很焦虑?
我觉得可以从两方面考虑一下。. 1point 3acres
1. 内卷一直有,就一定会有优秀的人出现,也会有越来越多的培训许诺你学完可以变成“优秀”的人。这是expected不是吗?有时候只是自己的期望太高了,现实太残酷而已。和自己比,按部就班的学习,关注在自己的成长而不是别人的包裹,不懂就请教,这样就会更加有幸福感。
2. 明确自己未来的规划。这个对于刚转码没见过猪跑的人比较难,但你可以试着看一看自己的方向有没有想要成为的人。从他们的知识体系里面找自己觉得重要的,也可以用这个和他们交流一下,然后开始刻意积累。其他的东西得敢于做减法。Multi-task是我认为对转码最不合理的期望,凭什么要求自己新手空降兵在短短一个月就要同时做老司机才能做的多个任务?而且这对你的成长是不利的,完全可以和manager沟通。. Waral dи,

对技术比较热心,会好奇探究背后的原理,为找到解决方案或学到东西后开心的人,转码比较轻松一些。
如果只是想着:完成xx课程就好,完成工作就好,为了高pay,往往会难一些。兴趣需要培养,learn本身也需要learn。

以上就是一点个人转码的心得,希望对你有帮助。顺便求米~






. check 1point3acres for more.
. 1point 3 acres

评分

参与人数 13大米 +15 收起 理由
clairearlington + 1 赞一个
dcdcdc753 + 1 赞一个
yamchip + 1 很有用的信息!
winston90 + 1 给你点个赞!
北辰一 + 2 很有用的信息!

查看全部评分


上一篇:有偿跪求CMU storage system资料或者类似课程
下一篇:EE PhD工作一年想转码 求指导

本帖被以下淘专辑推荐:

  • · MLE|主题: 7, 订阅: 0
推荐
 楼主| oefox000000 2022-5-11 18:33:33 来自APP | 只看该作者
全局:
gongchen 发表于 2022-05-10 22:05:54. 1point 3acres
"有课程可以学到这些吗?很遗憾,还没发现有"
这点非常同意。
Good question

学习一个领域的知识是需要长期在不同场景下积累的,可以看做工作中的学习是短期突击 - 工作中会经常遇到需要快速解决业务问题的时候,短期看一些设计可以解决问题,但只专注学这类的经验长期看是有害的。

OMSCS对每个人的价值是不一样的。对于我,系统和算法这两个都是非常广的概念,工作能实际看到use case, trade off, legacy, design consider,这些是经验上积累可以学到学校学不到的,但学校能学到的是底层的计算机思维,计算机系统如何运作,在不少high level的设计上有更多的思维可以借鉴。这是不同的角度对同一领域去探索。尤其到了高阶职级,技术底层的理解越来越重要,业务的变化也很快的时候,基础就会容易成为思维瓶颈,遇到的情况可能很难直接套用别人的方案,甚至也可能找不到可以借鉴的。这时候对系统运行本质的理解会有所帮助。
.
举个例子,工作会遇到ML算法加速的问题,方法有很多,可以积累经验方法有的比如调参(batch size, lr等),也有从data source本身优化比如使用db/feature store,这时候往深层的优化会涉及底层的Storage选择,network优化,还有high performance computing的理论,分布式系统的知识,没有这些基础会比较捉襟见肘,甚至有人提供了相关优化文档,也不一定看懂。

我的mentor有句话很对,学习是马拉松,没有一个万能的课程可以涵盖全部,omscs只是其中一个我评估后相对比较合适的长线投资。. check 1point3acres for more.
. 1point 3acres
如果只是转码找份工作,面试需要的和学校教的会不一样,反而不如上个bootcamp做些project找实习积累经验更直接。毕竟公司不会真正关注个人的长期成长。


评分

参与人数 2大米 +3 收起 理由
a111d + 1 赞一个!
gongchen + 2 很有用的信息!

查看全部评分

回复

使用道具 举报

全局:
oefox000000 发表于 2022-5-11 10:51
Gatech的  朋友推荐,研究了一下课程觉得不错就只报了这一个
.--
期待lz之后分享体验
回复

使用道具 举报

全局:
作为一个硕士NG,目前也是刚入职DS,跟楼主的规划一摸一样,准备未来转MLE,这个帖子很受用!
回复

使用道具 举报

🔗
gongchen 2022-5-11 13:05:54 | 只看该作者
全局:
本帖最后由 gongchen 于 2022-5-10 22:09 编辑

"有课程可以学到这些吗?很遗憾,还没发现有"
这点非常同意。-baidu 1point3acres

但是楼主既然意识到系统方向和算法方向MLE需要的知识都无法从课程学到,那为什么还计划花大量时间读OMSCS呢?
OMSCS的curriculum主要是基础CS知识。学CS基础要应用在大厂MLE工作上几乎不可能,和楼主说的这点背道而驰 “有输出的学习效率会比随着课程被动接受要高,而且有明确的目的”。
回复

使用道具 举报

🔗
qinshimingyue 2022-5-12 01:22:54 | 只看该作者
全局:
谢谢分享,请问lz去的哪家OMSCS?最近也在研究
回复

使用道具 举报

🔗
 楼主| oefox000000 2022-5-12 01:51:59 来自APP | 只看该作者
全局:
qinshimingyue 发表于 2022-05-11 10:22:54
谢谢分享,请问lz去的哪家OMSCS?最近也在研究
Gatech的  朋友推荐,研究了一下课程觉得不错就只报了这一个
回复

使用道具 举报

全局:
感谢楼主分享!想请教一下,我是ece转mle,之前写过一些简单的ml model。现在上了一些课,想找实操提升经验,有什么open source proj推荐吗?谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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