先介绍一下本人基本情况:火坑专业博士转计算机科学硕士,应届毕业生,无实习经历,不需要visa sponsor, GPA 3.8。
我家有两娃,还没到上公立学校的年纪,在我的存款变成零之前,我必须找到一份工作,来养家糊口。
第一步是过简历关。
要想把简历写得好,
最重要的的是内容方面
。有intern经历当然最好,可是我没有。补救我的是上学的时候修了有 project的课。在这方面,我做得还不错,写简历的时候,做过的projects已经写不下了,最后根据一页纸的限额来挑最好的几个projects写进去。其次是多找有经验的人帮看帮改,提意见,并结合job description增加关键词。我的简历经过我们学校一位在工业界做过多年顾问的教授的修改,所以在文字方面我觉得已经做到当时的最好。
为了多投简历的同时能挤下刷题的时间,我所有岗位都用一个版本。如果一个星期内反响不佳,我再根据那个星期看到的job descriptions修改。从最后的结果来看,我的简历已经做到令人满意的水平。
投简历的第一、第二个星期正逢圣诞节和新年,反响不大,有几个电话,约了一个新年后的on site interview。新年后反响越来越好,到了第五个星期以后,就有不少recruiter和Hiring manager 在email里直接说我的简历impressive了。从第四个星期开始,基本上每个星期都有两三个on site,有staffing companies, 也有local startup。
我一开始还是Indeed、Monster和Dice上的工作都投的,后来面试太多了,加上Monster和Indeed的工作会有重复,Dice上的临时工太多,后来基本上只投Indeed上的opening。
第二步是刷题和复习旧有知识。
我在前面三周,因为面试比较少,做了大概100道lintcode easy的题。大部分是自己写一遍,通不过,就直接看讨论里的最优解。当时九章的算法班还没开班,很遗憾,
如果有九章老师带着做,估计不会花这么多时间
。后来面试多了,一开始问到简历曾经做过的project,都说不好或者写不出来。就开始刷面试问到的旧有知识。面试问到什么,当时答不出来的,回来马上查书,问曾经的助教和老师,还有朋友。后来九章算法班新年后开课了,就跟着过相关题目,主要是因为老师讲过的类型,题做得比以前快很多。
第三步是过面试关。
我就是刷面试,跟刷题一样,
第一次面不好,多面几次心理素质就增强了
。大部分面试都是recruiter或公司的HR先打个电话来联系,一开始这样的机会都不能把握。后来对这些的人问题有数了,回答得越来越溜,基本上就是跟大妈聊天的感觉,最后都能进到下一步技术电面或OA。On site 我在情绪方面肯定是做得不错的,因为知道自己没怎么刷过题,所以不懂就说不懂,答不出来也很淡定,然后我就直接问面试官能不能给提示,给提示还答不出来,我就问答案(方便下一场面试(T_T)),同时保持开心的样子。我最后拿到的offer,当时面试的时候,我也答不出来某些问题。最重要的是回家就找答案。