开个坑,慢慢填,大家有问题可以评论区留言。 ## 前言 写本文的初衷,是因为我从决定留学到找工作,过去这几年来一直受到网上的许多朋友的鼓励和支持。有许多网友无私的分享他们的托福考试经验、申请经验、转专业学习的经验、美国大公司的面试经验等。现在我也把这条路走通了,在硅谷当上了一名程序员,所以也希望能结合自己的经历写一篇文章,不能保证 100% 正确。 本人不实名、不建群、不是中介、不约炮、不在知乎上交线下的朋友、不靠知乎赚钱,上知乎纯粹找乐子。本文仅供参考,你的人生请你自己负责。 ## 如何给自己树立 Run 的自信 对于 Run,很大的一个问题就是自信心的建立,Run 去丑国了,我到底能不能找到程序员的工作,我到底能找到一个什么样的工作? 如果需要一个很普适性的回答,那我说: 高考成绩能考上全省前 20%,大学能正常过英语 4、6 级的人,只要肯努力,是完全可以在国外找到一份程序员的工作的。 不要小看这前 20%,在很多高考大省,前 20% 最多也就是个二本的学历。 我当年树立自己自信的方法很简单,就是找本科和我差不多条件的校友,或者差不多学校的校友,看学长学姐们毕业的前景。这个时候最简单的方法就是打开 LinkedIn,搜索毕业校友们所在的公司。但是请注意,还有很多人没有注册过 LinkedIn 或者 LinkedIn 匿名了,所以应该在此数据的基础上乘以 1.5 倍。 我就不用清北华五 C9 这种学校了,下面举简单的几个例子: ### 普通 985,华中科技大学 作为中流 985 高校,华科在美国的校友有 8400+ 人,Google 有 260 个校友之多。FAANG 加起来恐怕有 2 到 3 千人。 ### 普通 211,南京理工大学 作为一个普通 211,南京理工大学美国校友有 1400+ 人。几大著名大厂都有为数不少的校友在工作。 ### 双非一本,上海海事大学 作为双非一本,上海海事在美国的校友还是有 700+ 人,可以看到亚马逊、微软、Facebook 都有上海海事大学的校友。 总的来说,树立好 Run 的自信,要相信 Run 没有自己想象的那么难,总是可以成功的。 为什么要去留学读硕士 解释一下下面两个名词: OPT: 选择性实习训练(英语:Optional Practical Training)是就读于美国高等院校(本科或研究生)、持有 F-1 签证的国际学生的一种工作许可,美国公民及移民服务局允许学生以学生身份在其学业相关专业工作 1 年的时间。有美国学位的都有 12 个月 OPT,STEM(科学、技术、工程、数学相关专业)专业、公司 e-verify,可延期到 36 个月。 H1B:H-1B 签证是美国签发给从事专业技术类工作的人士的签证,属于非移民签证,是美国最主要的工作签证类别。 只有雇主才能给员工办。自从 2012 年以后,美国经济好、工作容易找,H1B 需要通过抽签才有,学历高者得到概率更高,STEM 专业因为 OPT 有 36 个月,所以有多次抽签机会,拿不到的概率非常低。已申请绿卡的 H1B,满 6 年后可以延期一年或者三年,可以无限次延期,不存在 6 年必须离境的规定。但是 H1B 一旦失业后,不能在 2 个月内找到下家则基本需要离境。持有 H1B 签证在不同公司间可以跳槽,不需要占用新名额,transfer 后随时开始工作。 所以留学的目的很简单,一是拿到一个美国的学位,二就是通过这个学位让你获得 36 个月的 OPT 可以合法在美国就业,有了 OPT 以后,美国大公司才愿意雇佣你,并帮你抽 H1B、办绿卡进行一系列的流程。 美国大学很多,对于这种以就业、而并非科研为导向的硕士项目,发放录取通知书都还挺慷慨的。毕竟国际学生能给学校带来大量收入。并且硕士项目只需一年至两年,即使单位学分的收费再高,由于学制有限,总费用也并非高到国内普通家庭难以承担。 留学读硕士的花费大概多少钱 以下是本人的花费: 英语学习:新东方学托福 2400 RMB + 2 次托福考试 4000 RMB + 新东方学 GRE 3000 RMB + 3 次 GRE 考试 6000 RMB = 16000 RMB。 中介及申请费用:当时找了中介,花费 5w RMB,非常不推荐,还有一些学校的申请费用,每所学校大概几十到 100 美金不等,总计算为 55000 RMB。 留学学费及生活费:在洛杉矶生活成本很高,个人留学 2 年的学费+生活费大概花费了 65W RMB 左右,其中包括了花费 1w 美元买了辆二手凯美瑞 ## 如何准备英语考试(托福、GRE) 我没考过雅思,只考过托福和 GRE,强烈建议所有想 Run 的同学,无论你有没有机会,先做一次托福考试,网上有很多托福题库,说再多要不要 Run,还不如来做一遍题目。 ### 如何准备托福,知乎有很多介绍 说我觉得的重点: 考托福就 2 个最重要的,背单词 + 练习听力。 背单词很简单,你单词都不懂怎么做下去,所以花时间刻苦背单词就好,应该问题不大。 练习听力,因为托福听力、口语、作文都和听力有关,所以可想而知听力在托福里面多重要。 练习听力最好的一个方法,就是听写。具体就是你把托福的听力材料找来,一句一句听写,如果觉得很难听不懂,先从 0.5 倍速开始,然后慢慢加速,如果最终你能 1.5 倍速完成托福听力的听写,那你已经出师了。 托福考试就是一个过线考试,也就是过了学校的分数线就 OK 了。 说到 GRE,GRE 不是国内的高考,也不是国内的考研,GRE 在申请过程中的作用的锦上添花,而绝非雪中送碳。如果你本科学校不好,本科 GPA 不高,没有什么出彩的,那你往死里刷 GRE成 绩也没有用。 ### 如何准备 GRE 考试? ## 本科期间还需要做什么 相比托福和 GRE,本科期间最最最最最重要的: * 保持一个好成绩 * 尽量找实习 * 如果是转专业的同学请先自学一些计算机课程并开始刷题 一定一定要好好学习,学习成绩比托福成绩和GRE成绩重要无数倍! 在准备留学申请中,个人认为拿到一个好的学校的录取决定条件如下: * 本科学校排名:很明显,清北华五,985 等高校肯定更容易拿到好学校的 Offer。 * 本科成绩:不用说了,本科 GPA 越高越好,比如 USC 这所学校就只看成绩,GPA3.5 以下基本没有戏。 * 托福/GRE:当然是越高越好,但是这两个英语成绩没有 1、2 重要,最近几年很多学校甚至已经不要 GRE 分数了。 * 论文/项目/竞赛:这种东西有肯定是最好的,但是除非你有顶级期刊的顶级论文,不然对申请没有特别大的帮助。作为转专业的,我个人没有发表过任何论文也没有参加过任何项目,数学建模美赛拿过 Honorable mention。 * 推荐信:如果你能拿到超级大牛的推荐信,否则推荐信基本上就是走个流程过场。 * 只有学习成绩还不够,必须要找实习 北美不像中国就业只看学校,很多中国留学生去了以后埋头苦学,从大一到研究生毕业,简历上除了成绩,空空如也。 一份好的实习,能帮助你在白纸简历的研究生同学中脱颖而出。 举个例子,当年我同一个研究生学校的同学,我们绩点和课程项目都一样,但是他大三大四都有在国内的阿里实习,所以他研一上学期在找美国的暑假实习的时候,直接拿到了亚马逊、Google 和 Facebook 的实习面试。 通过美国的暑假实习经历,我同学的简历上有 2 份阿里实习经历+1 份美国大厂实习经历,在找全职工作基本上不用担心面试过不了。 自学计算机课程及刷题 知乎上有很多人分享了计算机自学的心得,在这我就不过多提及了。包括 CS61B 等很著名的课程,尽量看英文原版,提前适应英语教学。 刷题,那就是去做 Leetcode,既然想在美国找工作,那就切换成英文版开始做。 如何选校及定位 个人非常不建议找中介。你都决定要出国了,如果这一点信息收集能力都没有,那还是算了。 首先就是去各个学校的官网找项目,举个例子,因为 NEU 非常火,我们就去 NEU 官网看一下转专业 CS Align 的项目: 官网上详细的列出了这个项目要修一些什么必修课和选修课,并且也列出了毕业要求: 36-44 total semester hours required Minimum 3.000 GPA required 美帝大学的官网基本上制作的还是有水平的,每个项目基本上介绍都很全。 说到定位自己,具体的办法有好几种,比如去一亩三分地论坛上看往年录取的结果。我个人还喜欢另一个方法,就是去 LinkedIn 上找自己本科的学长,还有自己想去上的硕士学校的学长。 还是用我最喜欢的例子,华中科技大学 + 南加大,一个稍微好一点的 985 做题家组合: 根据 Linkedin 筛选了以后,我可以看到这个组合第一页给了我好多 Google/Amazon/Facebook 的员工,所以你需要做的,就是去 LinkedIn 上面勾搭以下学长,看看他们以往的成绩能申请上一个什么样的学校。 美帝申请比考研的好处就是一次可以申请多个学校,再决定去不去。当年我申请了 8 所学校,拿到了 4 所录取。从以我个人能力要冲刺的 UCLA/CMU,到保底的 Top 100 以后的学校,总有一所学校会录取你的。 评论区请不要再问我你二本三本大专能不能润了,都能润,没什么不能润的。关键是,你有没有好好学习?有没有下定决心去润? ## Run 到美帝 & 最大化利用 Master 的 2 年时间 恭喜你拿到了 Offer 入学,现在要做的就是充分利用好硕士的一年半到两年时间,抓紧找工作。 硕士期间保持一个好 GPA 努力学习即可。和国内的唯一的区别是教学语言变为英文。此阶段除了专业课,还需迅速提高英语听说能力,为求职面试做准备。 刷 Leetcode 继续花时间刷题,毕竟面试是做 Leetcode,可以和同学之间互相用英语进行 Mock Interview,来提升自己的英语水平和讲题水平。 研一利用CPT找实习 课程实习训练(英语:Curricular Practical Training, CPT)是美国给予持有 F-1 签证、就读于高等院校的国际学生的临时就业许可。通过 CPT 你可以暑假进行实习。 为什么叫你大四本科的时候就要开始刷 Leetcode 呢,就是因为研究生一入学的 9 月和 10 月份,你就要为第一年暑假的实习做准备,所以如果你本科有好好练习英语 + 刷 Leetcode,你那个时候已经比同龄的同学优秀很多了,这个时候如果你能拿到实习面试,你就比同龄人强很多了。 研二利用 OPT 找全职工作 对于 STEM 理工科毕业的学生,可以合法使用 OPT 在美国工作三年。 第一个坑:OPT 的政策可能有变(问题不大,最近最大的政策改变就是申请费用上涨了)。 第二个坑:能否在 OPT 规定的期限内找到工作,这对于大多数人来说是最难的点。职位空缺的数量取决于经济大环境,如果赶上金融危机,比如疫情等因素,恐怕会有困难。但是有一说一,我见过凡是铁了心要留在美国工作的,通过小公司,ICC,外包 Contractor 等就业方式,最后都留了下来。 ## 如何找到自己的第一份工作 找工作,最重要的是实力 + 运气,当然,在绝对的实力面前,运气都是起辅助作用。 找工作的组成分成两部,拿到面试 + 通过面试,两者相辅相成,缺一不可。很多应届生有一个误区,一直刷题刷题刷题,但是自己的简历实在不怎么样,就算把题做过几千遍几万遍,拿不到面试又有什么用呢? 拿到面试 应届生,拿到面试其实往往是比较难的,尤其美国不像国内看学校排名看得很厉害,且美国真正校招的公司大部分都是 FLAG 大厂。所以作为一个应届生,最重要的就是把自己的简历弄得好看,弄得与众不同。尤其是 CMU、USC、NEU 这类招计算机学生超级多的学校,每年有几百个计算机的学生,如果你只有一个这些学校的学位,简历方面烂得一塌糊涂,那就真的没办法了。 提高自己简历的方法有很多种,下面举几个例子: GPA 4.0:别听别人说成绩不重要,能力重要这样的鬼话。在你没有其他出彩的地方的时候,成绩就是最重要的。 大厂实习:一段大厂实习在简历上很加分,找不到 FAANG 的实习也要尽量找小公司的实习。 除了学校本身的课程 Project 以外的项目:美国有很多在线 Mooc 学习平台,建议你继续在 Udacity、Udemy 和 Coursera 上课,并把一些 Project 写在你的简历中充实一下。 先去小公司(或者外包公司),再跳槽去大公司:很多学生思维的人钻牛角尖,非 FAANG/FLAG 不去,然后直到毕业几个月都没有找到工作,一直刷题刷题刷题,最后浪费了很多时间。其实在美国找工作,很看过去工作经历的。我本人也是通过了一年 ICC 的经历然后拿到了 Amazon、Google 等大公司的面试,加上前期硕士期间刷题比较不错,就直接通过了大厂面试。 通过面试 没什么好说的,对于找一个以找 General Software Engineer 工作为目标的人来说,就是刷题。 虽然 Leetcode 已经到了 2000 多题的规模,但是肯定个人经历有限。我个人的建议是 Leetcode 前 600 题刷透,大部分公司基本上考的也是原题。实在做不出来背题就好。 可以购买一下《Cracking the Coding Interview》这本书,里面归纳总结得相当不错。但是除此之外还是要刷题。 当然,亚马逊为首的公司除了刷题以外还会问很多 Behavior Question,类似国内的 HR 面试环节,比如说举一个例子「你不同意经理的时候你会怎么做?」,「Deadline 来了但是你工作还没有做完怎么办?」之类的问题。这种问题我觉得不难,就好好把英语口语练好,同时面试之前想几个以前自己工作中的例子,写下来然后背就好了。 ## 工作几年的收获 我工作第一年在印度外包公司(ICC)的年薪只有 6w 美金,没有年终奖。 第二年跳槽去了硅谷一家大厂,拿到了 E3/L3 的级别(和应届生一样的级别),年薪变成了 16 万美元(12 万美元的底薪+3 万美元股票+1 万美元年终奖)。第三年半的时候升级到了 L4/E4。 今年工作四年半了以后,跳槽去了一家比较不错的独角兽,还是 L4/E4 的级别,年薪算上股票(还未上市,按估值)大概在 35 万美金左右。 我只是一个很平凡的普通人,硕士毕业工作 4 年半的等级也就是普通的 L4/E4。很多我的同龄人已经升到 L5/E5(Senior)级别,也有一部分人开始当经理(L6/E6),手下开始带人。 我也不是那么爱卷的人,对自己的成就总体来说还是满意的。一步一个脚印慢慢来,个人觉得工作几年薪资待遇和工作内容我都很满意。重要的是,这三份工作基本上每周的工作时间都是 35 到 40 小时,基本没有遇到加班的情况(有时候有,一年不超过 5 天)。 ## 如果家里没有钱读硕士怎么 Run? 如果家里不太能够支持硕士留学,那还有一些方法跑路。以下信息主要收集自各大网站和周围一些人的经历,不保证信息 100% 的完全准确。 * 直接投公司的海外分部。据我所知,Google、微软、Facebook 这样的企业每年会在国内的清北这种级别的学校进行海外分部校招。社招部分,Google、微软、亚马逊会直接从国内招加拿大的岗位,Facebook 会招新加坡的岗位。还有一些公司,比如 Shopee 的母公司 SE 也常年会在国内招新加坡的岗位。缺点就是这些招聘都是不定期的。 * 出国读博。读博基本上都是学校包所有的学费,根据你做 TA 或者 RA,好像 UCLA 的博士一个月生活费是 1800 到 3000 美金左右,我自己没有读过博士,对该信息不太确定。 * 入职大公司的国内分部再转海外组。加入微软、Google、亚马逊等国内有分部的外企,再通过外企的内部面试,transfer 到你想去的国家所对应的组,一般这些外企内部都专门设立签证/移民部分,会和专业的移民律师就行合作,所以基本上个人不用担心身份问题。但是缺点是内部转组使用的是 L1 签证,无法跳槽。