Skip to main content

简单说说我的经历,机械PhD转CS MS,也找到工作了

http://gengwg.blogspot.com/2011,ME-PhD
我是去年8月份来美国的,拿到了美国东南一个学校的机械PhD的offer。老老实实跟着老板干了一个学期,发现老板极为坑爹,遂萌生了quit的念头。 虽然本科也不是CS的,但是代码量也有3万行,也喜欢编程。看到身边CS的同学纷纷找到工作,就下了决心,要自费转到CS读硕士。好在学校对PhD转专业 十分宽容,对方CS的系里直接就收了我,也不需要重新申请,顺利开始CS学生的生活。

2012年,MS-CS:
. more info on 1point3acres.com
来了以后,就发现毕业一下子变得迫在眉睫,无论是上课还是找实习找工作, 都要花相当的精力。选了一些对CS本科知识要求不是特别高的课,结果还是十分耗费时间,上课本身似乎对找工作的帮助也不是很大。比如,Machine Learning很火,但是作为只上过课的小硕,本身并没有相关项目经验,不可能达到工作实践中所需要的标准,对于面试也没有太多用处。
当然,上课过程中认识了一些教授,后来找工作的时候帮我写了推荐信,还是很有帮助的。

刚转过来的时候恰逢圣诞,整个寒假就窝在家里,把算法数据结构狠狠的过了一遍,自学编译原理,然后开始做Crack the Coding Interview 150题。接着就是各种投简历,投了将近100份吧,学校的找工网站、公司网站、LinkedIn等等…… 但是那时候还不知道内推的重要性,而且简历投的太晚,结果拿到的面试寥寥无几,只有MathWorks和Amazon理我,而且是在学期都快结束的时候。 可想而知,人家的位置早就填的差不多了,我去了也只是作为分母。可惜的是Amazon都面了3轮了,还是没能拿到。很遗憾最后没有找到暑假的实习。

暑假也在上课,这样秋季的时候能少上课,留出时间来面试。暑假的主要内容就是不断的做题,投简历,求内推,以及进行各种电话面试。除了careercup,主要就是leetcode,还有mitbbs上的jobhunting面经和glassdoor面经。

面试经历:. 涓€浜�-涓夊垎-鍦帮紝鐙鍙戝竷
说说我面过的公司吧,不是很多,而且基本上都是内推拿到的面试,除了epic和bloomberg。

2Sigma:先是coding test,在2小时内做两道题。后来才发现所有人的coding test都是做这两道题,题目都烂大街了。。。我当时没见过题目,都是自己写的,花了1小时50分钟,过了。接着是hiring manager电面,要求聊自己的project。因为没有仔细准备自己的project,讲的不好,挂了。
. more info on 1point3acres.com
Google: 三轮电面,上来都是做题,题目都属于leetcode级别,也都顺利做出来了,但是还是挂了。比较悲剧的是,第一轮电面是个女阿三,一直没能听懂她讲的是 啥,她自己也不愿意把她题目写下来给我看,更不愿意换题,而是坚持在电话里面解释她的题目,一直解释了45分钟还是没能解释清楚。于是我这轮都没做出来, 就玩完了……一年之后再战吧
. from: 1point3acres.com/bbs
Arista Networks:一个Startup,考的题目都是比较底层和基础的东西,我比较喜欢。电面的时候是个阿三,我的题目做的也很好,还是挂了。后来得到的feedback说,虽然我答得好,但那个阿三说我一定是事先背过答案的。我了个去……

Amazon: 也是阿三,挂了。.鏈枃鍘熷垱鑷�1point3acres璁哄潧
. 1point 3acres 璁哄潧
Bloomberg: 又是阿三,还是挂了。

Facebook和Twitter:没有给面试,直接拒信。和身边的同学聊了聊,发现大概是因为本科专业的缘故,如果本科EECS,就拿到了电面。

Yelp: 先是一轮Phone Screening,面试题目都跟glassdoor上的面经完全一样,似乎这一轮都不换题目的。然后是两轮skype coding,难度也是leetcode级别,一共做了4道题目,我都顺利解答,拿到了onsite。onsite的时候参观了公司,总共三层楼,网吧式 的工作环境,不是很喜欢。聊聊做过的project,并且做了4轮题目,难度更高,没能做好,挂了。据说这个公司本身的hiring bar就挺高的。

Microsoft: 朋友内推的一个组,搜索相关,电面之后直接onsite。不过,最后因为对方想找有经验的人,我也不是特别感兴趣,所以不太match。

Epic: 在网上随便投投的,很快hr就安排了面试,在local的某个小机房 考了coding和学习新语言的题目。感觉做的很不错,都做出来了,而且花的时间很短。就拿到了onsite。epic的总部很漂亮,里里外外都精心装 饰,每个员工都有office,环境相当好。先是参观公司几栋楼,接着是case study,就是设计题,瞎扯了一通。然后就是做presentation,把自己做过的项目都拿出来聊一聊。因为吸取了2sigma聊项目的教训,做了 精心准备,所以跟面试官聊得十分开心,很满意。最后是一系列HR问题,和一个智力测试…… 拿到了offer,起薪九万五,在威斯康辛。地理位置不是很喜欢,最后我拒了。. visit 1point3acres.com for more.

Oracle:今年他家的校园招聘应该是直接去onsite,面试1~2天,一般5~7个组的样子。我是因为有人内推,所以只面了一个组。一整天把组里所有人都见了个遍,有几轮是纯粹聊project,有的是纯粹coding. visit 1point3acres.com for more.
,有的是混合着来,面了7轮,着实累人。coding的难度一般,跟careercup的级别差不多。最后我从了,拿的是oracle招fresh master的标准package。
.1point3acres缃�
总结:我其实很早就想转系到CS了,一直没能下定决心申请,还是中规中矩的过来读了4个月的机械phd。女朋友的鼓励支持,以及美国学校的转系规则,都促 使我下定决心。来到CS之后,没有浪费一点时间,赶紧补学算法,1年内修完课程,在紧迫的找工作压力下顺利确定了去向。虽然面试过程中总是碰到坏阿三,也 因为本科专业的缘故和自身能力而时常碰壁,但能够成功转行,我觉得我已经是十分幸运了。所以在这里写下来,聊以纪念我来美国一年多的经历。文笔不好,让各 位见笑了。以后有机会整理一下面经发上来给大家看看。

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...