作者supreme7911 (totem)
看板Soft_Job
标题[心得] 北美MLE找工经历分享
时间Thu Aug 5 01:11:53 2021
前言:
纵使每个人的求职经历与感受,如人饮水,冷暖自知,但秉着取之於ptt,用之於ptt的精
神,分享一个北美CS博士班找工作的历程。
背景:
CS PhD in MLE@美国东岸大学
Master in ECE & Undergrad in EECS @ 140.113
博班期间阿里北美Intern x 1
LeetCode从找实习开始刷,中断一段时间,找工季前又开始密集刷,直到找工季结束,共
约350题(easy 111 – medium 229 hard - 13)
学习资源:
很多前辈们都分享过丰富的学习资源,但每个人适用的学习方法不同,这里仅列出我实际
使用的。
--- 刷题方面 ---
博班期间修过两次演算法课(大学部+研究所),经典算法及资料结构基本熟悉,所以没有
额外再读演算法教材,只有刷LeetCode练习。我觉得对我比较有帮助的刷法是,题目如果
半小时想不出来解法,我就会直接看解答或是讨论区,有时候思路大方向是对的,有时候
完全没想法,但务必确认自己看完解答之後了解算法的逻辑,套用逻辑直接写一遍,隔几
天再回头写一次。
接近面试前,我习惯刷题的时候给自己模拟面试的感觉,看完题目後,我会先口述不同解
法,并习惯在视窗上打下一些关键字,分析时间/空间复杂度,接着再开始写程式码。如
果有练习夥伴,实际模拟面试,会很有帮助。
举例: search a number in sorted list
"""
1.Brute force
Iterate through the list
Time: O(n)
Space: O(1)
2.Binary search
Sorted list, iteratively compare mid point and key
Time: O(lg n)
Space: O(1)
Recursion or while loop
"""
邻近面试前,参考Blind Curated list (
https://leetcode.com/list/5mz5eyue)复习,
搭配一些衍伸的经典题&tag题。
--- ML basics & System Design 方面 ---
我投递的都是MLE相关的职缺,或多或少都会有machine learning basics & system
design的问题。ML basics的部分,约80%都是学校ML课会教的内容,例如bias-variance
tradeoff, overfitting是什麽这类的,或者deep learning networks的问题。我面试前
,参考网路上的讲义大致复习
(
https://github.com/hetvidesai03/Algorithm_Interview_Notes-Chinese)。另一方面
ML system design,虽然问题表面上五花八门,但我个人见解认为,对於new grad来说,
核心都是能否阐述一个合理的流程,脱离不了以下几个关键,厘清问题,数据收集,建立
模型,评估模型。具体网路上很多可以参考,分享几个我觉得很有收获的。
浅谈ML design推荐系统面试心得
(
https://www.1point3acres.com/bbs/thread-490321-1-1.html)
Google ML system design mock interview
(
https://www.youtube.com/watch?v=uF1V2MqX2U0)
DNN for Youtube Recommendation
(
https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/45530.pdf)
A Short Introduction to Learning to Rank
(
http://times.cs.uiuc.edu/course/598f14/l2r.pdf)
个人很推荐多看一些Youtube上mock interview的影片,除了了解可能会被问到的问题,
也可以学习受访者如何架构自己的回答。
面试过程:
海投N家,以下仅列出有得到面试机会的公司。
eBay Applied Researcher
-12月底Referral
-1/11 Virtual onsite (VO) 四轮面试+一轮Hiring manager
面试内容主要就是程式问题(LeetCode low medium - medium) + ML basics + ML
system design
-1/15 通知结果
Microsoft Applied Scientist
官网投递履历
-1/22 HM email reach out
-1/29 1st phone interview (research background让我介绍我的研究,提了一些问题讨
论)
-2/18 VO 四轮面试
一轮programming + ML design (programming题目,让你尝试用ML方法做)
两轮programming + ML basics
一轮 ML design
-3/31 通知结果
Bloomberg AI Group Research Engineer
官网投递履历
-1/22 HR phone reach out
-2/10 1st phone interview (programming LC medium + ML basics on NLP
transformers)
-2/26 2nd phone interview (programming LC medium + ML basics)
-3/18 VO 三轮面试+一轮manager
前两轮都是ML basics + system design,第三轮programming LC high medium
-4/6 通知结果
Amazon Applied Scientist / Data Scientist
Referral for applied scientist
-2/8 HR email reach out
-3/2 1st phone interview for applied scientist (programming LC medium + ML
basics on deep neural networks)
Programming没面好
-3/9 通知改面试Data Scientist职缺
-3/15 1st phone interview for data scientist (programming LC low medium + ML
basics)
-3/17 通知可以再改回面试Applied Scientist
-4/8 2nd phone interview for applied scientist (介绍自己的一篇publication&讨论
+ programming LC medium)
面试官挑了一篇不是他熟悉领域的文章,让我解释来龙去脉,过程中他会不断挑战我动机
以及方法合不合理,讨论地比较深入,以至於面试完我提问时,他才想到要考coding,最
後延长15分钟考完。
-4/15 通知进VO,但已经决定去其他公司,故终止面试
结语:
三生有幸,找工季的结尾,是得到一个很好的机会去挑战下一个阶段。最大的感想就是,
努力固然很重要,缘分加上一点运气也是不可或缺,哪怕是平时有心无心的networking,
履历刚好被HR看到,面试官看重的评量项目,还有很多其他的因素,都不是我们能掌握的
。试着从那些欠缺一点运气的经验中尽量汲取养分,其他的就怪给缘分吧。最後,祝大家
找工作顺心!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 71.58.98.41 (美国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1628097117.A.D2D.html
1F:推 eggy1018: 感谢你! 祝你顺利! 08/05 01:16
2F:推 gn02561792: 推实用分享 楼主太神啦! 08/05 01:38
3F:推 aa77a: 赞 08/05 01:44
4F:推 angellee0102: 感谢分享! 08/05 01:47
5F:→ taipoo: 谢谢分享 08/05 02:21
6F:推 ss8651twtw: 推分享 08/05 02:41
7F:推 kyrie77: 推 08/05 04:51
8F:推 andy5656: 推 08/05 04:52
9F:推 Inglenook: 推 08/05 10:02
10F:推 f9g8h7j654: 感谢分享 08/05 12:54
11F:推 siba727: 感谢分享! 08/05 20:53
12F:推 Dartmoor: 感谢分享! 08/06 08:52