给计算机科学毕业生的22条职业建议

来自:新智元(微信号:AI_era),作者:Chip Huyen,作者:Chip Huyen   编辑:肖琴
来源:huyenchip.com  ,原文链接

【导读要不要读博?要不要创业?加入大公司还是创业公司?这些问题可以说是计算机科学专业毕业生的普遍问题。本文作者本科、硕士毕业于斯坦福大学CS计算机科学系,他资讯了许多业内及学术界大佬,总结出22条切实的职业建议。

从毕业以来,一直有人问我:“现在怎么样?”我的回答只能是:“我不知道。”我曾经以为,完成硕士学位之后,就自然会知道该怎么做了。


但是,我错了。学校并没有教我为毕业后的世界做好准备。学术环境提供持续的反馈——如果你稍微偏离了轨道,肯定有人会让你知道,甚至引导你回来。在现实生活中,我害怕自己会做出一系列错误的决定,但没有人会告诉我,直到为时已晚。一个错误的工作选择可能会让我失去几年的时间,以及许多更好的选择能带来的机会。


当我在网上查找应届毕业生的职业建议时,我发现大多数文章都是关于如何找到工作的。我不想让自己听起来像个势利小人,但实际上,对于很多在CS这样要求很高的领域获得学位的毕业生来说,他们的问题不是“我能得到什么工作”,更多的是“我应该做什么工作”。他们有很多选择,但这并没有让决策变得更容易,甚至让我这种“FOMO”(注:Fear of missing out,错失恐惧症,也称社群恐慌症)的人陷入恐慌模式。我会不停地问:“我应该攻读博士学位吗?”,“我应该在大公司还是初创公司工作?”,“我应该自己创业吗?”,“我应该做工程还是其他更社交一些的工作?”,“我应该离开科技行业,去追求我的写作热情吗?”


在过去的一年里,我用这些问题困扰了很多人,无论是在工业界还是学术界的。我很幸运,很多人非常友好地坐下来和我分享他们的见解。因为他们的建议对我非常有帮助,我认为这些建议可能对其他人也有用,因为他们有一天也会不得不经历我所经历的过程。这篇文章试图讲述我的思考过程和我得到的建议。如果你只想得到建议,不想看故事,可以直接跳到最后一部分。


是否要读PhD?


我家在越南的一个小村庄,所以美国的学术界对我来说是模糊的。我不知道什么是博士学位,人们在博士申请中希望看到什么,或者如果我想申请,我应该如何准备。直到去年年初。我开始认识一些博士生之后,我才意识到:“哇,这些人真的很聪明。他们在研究有趣的问题。我想成为他们那样的人。”


我很快意识到,“是否要读PhD”似乎是每个人都有自己的看法的话题。我还意识到,与我交谈过的教授(也就是那些已经获得博士学位的人)100%都告诉我应该攻读博士学位,而业内的人100%都告诉我不应该。


支持读博的论据包括:

  • 你会有时间让自己沉浸在研究中。

  • 如果你想成为一名教授,你必须要攻读博士学位。

  • 许多顶尖的研究实验室,比如DeepMind,都只面试拥有博士学位的候选人。

  • 读博不会使你很穷,因为AI实习生的薪资不低。


支持不读博的论据包括:

  • 应该有更多的人加入到工业中来,把研究带到生产中。

  • 当你完成博士学位时,你所学的东西可能不再适用。

  • 许多教授在这个行业都有副业,所以你仍然可以和他们一起工作。

  • 在接下来的五年里你不用经历贫穷。


我决定攻读博士学位。由于我已经来不及准备博士申请了,我的教授建议我明年申请,并在这一年的时间里优化申请材料,所以我安排了一些研究实习。


我提前一个季度毕业了,接下来的三个月我都在旅行。我并没有试图寻找自我,但我偶然找到了自我。在那段时间里,我每天都出于兴趣而写一些东西,但没有读一篇论文。我意识到我想读博不是因为我想做AI研究,而是因为我想成为做AI研究的人。当我和我的博士朋友们见面,看到他们在醒着的每个时刻都在谈论/思考AI时,我的这种想法更加强烈了——我没有他们那样的热情。我想要的是不同的东西。怎么不同?我还在想办法弄清楚。


随波逐流还是听从内心?


斯坦福大学提供CS +英语专业。我们曾经开玩笑说,这个专业是为那些既喜欢写作又想找份工作的人开设的。然后一个朋友跟我说,我就是这样的人之一。


我学计算机专业不是为了找份工作。我从第一节入门课开始就迷上了CS,因为这个主题非常有趣。我喜欢工程,但那三个月的休假重新点燃了我的一个信念:写作是我一生中最大的爱好。由于我已经花了将近4年的时间来攻读C的学位,我渴望在写作上投入一些时间。


然而事实证明,当你是一名国际学生时,追求自己的激情在美国是不合法的。要留在美国,我必须找到一份与我的专业相关的工作。当然,我可以去另一个国家生活。在南美洲的海滩上生活和写作的想法是相当浪漫的。但AI是一个变化如此快速的领域,我只是休假了一个季度就已经有点迷失了方向——如果我在一年后回不到这个领域了怎么办?


当我带着这样的困惑去咨询教授时,他很困惑:“为什么你必须在工程和写作之间做选择?为什么不能两者兼而有之呢?”有很多人在他们的技术领域有所成就,同时还是多产的作家。他对我的能力的坚定信心激发了我的自信:“你是对的。我两样事情都能做。”我可以全职从事科技工作,晚上/周末用来写作。我在大学里花了大量的时间做作业和教学,所以我相信我可以每周抽出20小时左右用来写作。


我应该自己创业吗?


从斯坦福大学毕业,住在硅谷,我无法摆脱“创业”这一刻板印象。有人说我是“创业型”的,有人甚至邀请我成为他们的联合创始人。


我不止一次受到诱惑。从头开始创建一个东西的想法很吸引人。毫无疑问我会从中学到很多,不仅仅是解决问题的方法,还包括如何激励人们和我一起工作,如何筹集资金,如何管理组织,如何销售产品……我有很多朋友走上了创业之路,他们生活忙碌,但从来不会无聊。此外,他们成为亿万富翁的机会要比我大很多。


有许多描述20来岁的年轻人获得数百万美元投资的新闻,只是阅读这些故事让人感觉创业很容易。“就连那个Yo应用都获得了150万美元投资!”有人曾把这个作为说服我去创业的理由。但我也有很多朋友,他们都知道创业生活充满了压力、残酷,而且受到很多外部因素的制约。我朋友的创业公司中有很多已经失败了,尽管他们非常聪明,有很好的想法,并且得到了著名投资者的支持。


我可能属于少数人,但我认为仅仅为了创办一家公司而创业是全无道理的,是浪费每个人的时间。除非我至少符合以下三点,否则我是不会去创业的:


  • 有一个我想用毕生精力去解决的问题。

  • 相信我能解决它。

  • 有一个联合创始人,我们可以长期合作,任何一方都不会想要抹杀对方。


现在,我都没有这些,所以我不会去创业。我也认为为别人工作几年能更好地为以后创业做准备,无论是财务方面还是技能方面。


去大公司还是创业公司?


随着上述因素的内化,我开始在NVIDIA实习。我取消了其他实习计划,开始寻找全职工作。这时,我的下一个大问题出现了:“我应该选择大公司,还是初创公司?”


在大学期间,我曾在一家大公司和一家初创公司实习过。


我的印象与人们通常的看法非常一致,大公司稳定,初创公司高冲击性(也高风险)。在我那些选择不继续攻读博士学位的朋友中,大约40%的人去了大公司,40%的人在创业公司工作,其余则是自己开了公司。他们都给了我令人信服的论据。当然,每个公司的优缺点各不相同。



但我与别人谈论这个问题时,许多人告诉我要选择让自己快乐的事情。虽然我很欣赏这种观点,但这个建议经常让我更加困惑。“快乐”到底是什么呢?我该怎么测量快乐呢?“快乐”也是相对的。如果有足够的时间去适应,我们能让自己对任何事情都感到快乐。


有两条建议我觉得很有帮助。第一个是:“哪个能给你千载难逢的机会?”你是否认为你正在考虑的创业公司正在做一些真正重要的事情,这对你来说是千载难逢的机会吗?或者你是否认为进入一家科技巨头企业是你一生中难得的机会?


第二个是:“你希望在什么方面得到改善?”一个容易改善的事情就是金钱。我的一些朋友面试了多家公司,选择出价最高的。也有一些人希望得到新的体验,选择一份能让他们旅行和结识很多人的工作。一些人为了提高自己的声誉,去了他们所在领域最知名的公司。


在我人生的这个阶段,我追求个人成长。我想要一份能给我最大化的自由成长的工作。这意味着这份工作应该能让我与优秀的同事/导师一起工作,并尽可能地挑战自己。


最终,我选择了留在NVIDIA。


总体建议



  1. 知道你想要优化什么:金钱、新体验、声望、个人成长,还是别的什么?

  2. 如果你不知道你想做什么,那么想一下你在空闲时间做的事情。只有当没人看的时候你做的事情才代表了你真正的兴趣。

  3. 至少对于AI领域来说,工业界和学术界之间的界线越来越模糊了。所以不要担心是否有博士学位。你可以在任何时候开始读博然后退学,或者在工业界工作几年后再申请博士学位。

  4. 在GitHub上发布你的代码,投入时间去构建一些像样的GitHub repos。我得到不止一家公司的offer,因为他们对我的GitHub印象深刻。

  5. 不要太担心你的GPA。如果你认为GPA太低(例如< 3.3),那就不要写在简历上。只要你有良好的技术背景(比如过去的实习经验+项目+ GitHub),没人会在意你的GPA。

  6. 大学期间去大公司和创业公司实习,了解你想加入什么样的公司。

  7. 最容易获得的一种offer是“实习转全职”。实习面试比全职面试容易3倍。

  8. 尽早开始找工作,最好是进入高年级时就开始。我的大多数朋友都在毕业前2-3个季度得到了全职offer。早早获得工作机会能让你在面试中保持平和的心态,并在以后的谈判中发挥作用。

  9. 不要因为没有收到某些公司的回复就放弃。我认识一些人,他们给数百家公司投简历,直到找到工作。

  10. 技术面试很痛苦。至少要提前一个月准备。

  11. 在面试过程中,询问你将在这个职位上做什么工作,你要向哪位经理汇报工作,以及你将得到什么样的指导。

  12. 不要回避谈判。即使你不是为了钱而工作,你也完全有权利获得应得的报酬。

  13. 根据我的经验,公司总是会提供根据你已有的offer调整薪酬,即使他们否认。我见过两位有类似经验的朋友加入同一家公司担任同一职位,但其中一位因为手里有一个有竞争力的offer,而每年多赚5万美元。

  14. 向你钦佩的人请教经验和职业建议。

  15. 看看Glassdoor上的评论,了解你将要做的工作。

  16. 在大学和第一份全职工作之间休息一段时间,因为在很长一段时间内你不太可能再有时间度假了。

  17. 如果你继续某份工作的唯一原因是薪水,那就辞职吧。

  18. 如果你发现自己在工作中没有学习,那就离开吧。

  19. 抵抗激烈的竞争。

  20. 不要拿自己和别人比较。不管你有多优秀,总会有人在某方面比你更强。相反,将今天的你和昨天的你进行比较。

  21. 对别人友善。

  22. 善待自己。你不必一定要在xx年毕业,在xx年获得博士学位,或在xx年成为百万富翁。发现世界。了解你自己。享受过程。


Acknowledgements 

This post wouldn’t have been possible without long conversations over the year with many people I admire, in both industry and academia. I’d like to thank Christopher Manning, Mykel Kochenderfer, Alexander Rush, Lukasz Kaiser, Laurence Moroney, Danijar Hafner, Lucas Baker, Paul Warren, Jonathan Cohen, Boris Ginsburg, Rex Garland, David Buickians, Dung Ho Chi, and many other friends for putting up with my indecisiveness and unclogging my impossibly dense mind.

推荐↓↓↓
程序员求职面试
上一篇:我从编程面试中学到的 下一篇:【解读】面试现场背后的故事