读:本文主要讲述一个参加完编程集训营的程序员,如何用三个月的时间收割一张年薪 12 万美元的 Offer,并总结出五条求职建议。
很快又到了毕业季,不少同学正在准备秋招,这篇文章的心态和学习方法可能对大家会有帮助,欢迎阅读。
当你准备申请六位数年薪的开发者职位时,一件很少被人提及的事情就是——这个参加完编程集训营的人在毕业后都会经历些什么?
(上图:不到三成的 Offer 命中率)
我在 2016 年 7 月完成了 Hack Reactor 的课程,之后用了近三个月的时间才拿到 Radius Intelligence 公司的 Offer。我申请了 291 家公司,接到了 32 个电话面试,16 次技术面试,13 次代码测试,11 次现场面试,最终斩获 8 张 Offer。年薪从 60k 到 125k 美元不等,公司也遍布了全美各州,既有前端也有全栈的职位。总体来说,我的命中率是 2.8%。
我希望在我求职之前就能知道以下五件事,或许我会更顺利。
一:接触真人
一开始时我采用“海投”的方式。我在很多网站上投过简历,包括 Indeed、AngelList、领英、StackOverflow、Hacker News、公司官网,甚至是 Craigslist。
但凡涉及到 React、Node 或者 JavaScript 的职位,我都会投递简历。因此在最开始的一周里,我每天都要投递 15 到 20 封简历。
小提示:寻找使用 easy-application repo 服务的公司。
结果并不乐观,不到 5%的公司回复我,我的简历大都杳无音信。
事情发生转机是在我一个曾做过招聘的室友,他分享给我一个求职的方向。他让我直接把简历发给那个公司员工的邮箱里,任何人都行,只要有人打开邮件看就行。
自此,每当我投递简历的时候,我都会在领英上搜索这家公司的开发人员或者 HR,然后直接把简历发到对方邮箱里。
对于大多数小公司或者 C 级管理人员,邮件格式通常是「姓氏全拼@公司名.com」,而大公司格式则可能是「姓氏.名字@公司名.com」。我还用到了 Rapportive 和社交网络交叉验证邮箱地址的准确性。
令人欣喜的是,我发了 150 多封邮件,答复高达 22%。
而且他们给我的建议也很受用。甚至有些公司的 CEO 或者 CTO 会直接回复我,有时候还会直接面试我。
建议:当你正面申请时,务必要面向真人。
二:由小到大,先易后难
你可能会遇到非常初级的面试(比如一个非技术公司招聘初级岗位职员),面试时就只是问问 JavaScript 的基础知识。
你也会遇到段位特别高的面试(比如谷歌或者脸书这种级别),面试中就会考察难度很大的数据结构和算法题目。
我策略性地把难度低的面试放到前面,难度高的面试放到后面。
我先在早期积攒经验,建立信心,然后拿到几张保底的 Offer。
随着面试经验的增加,我也随之“升级”。我开始能应对高级别的面试了。下图能看到随着时间的增加,我的薪水也呈现线性增长。
我解锁了更难的题目,解锁了更高的薪资。最后,我同样解锁了我想要的工作。
建议:先从简单的开始,一步步加强。
三:学好你工作需要的知识
我不想这样说,但是你确实需要不停地学习和准备。
为什么?因为如果你没有很好地回答出面试官的问题,你就得不到这份工作。
当面试官觉得你不能胜任的时候,他就不会录用你。
从 Hacker Reactor 毕业后,我知道我的弱项就是数据结构和算法。一项统计中表明,从培训班出来的人,往往在数据结构和算法这两项上,比科班出身的要差一些。
因此我每天都坚持练习我的弱项。
我花了几天学习排序算法。同样也花了几天着重理解计算机网络原理。
如果我有一个概念不理解,我会花一整天来看视频教程、在 StackOverflow 上检索答案,直到我搞懂。
下面是我觉得非常有用的一些学习资源:
- InterviewCake:我最喜欢的数据结构和算法资源;
- HiredInTech’s System Design Section:一份伟大的系统设计面试指南;
- Coderust:只要 49 美元,对于任何编程语言都能找到解决方案并且附带可视化图表;
- Reddit’s How to Prepare for Tech Interviews:我经常以此作为我面试的基准;
- Front End Interview Questions:前端问题技术大全;
- Leetcode:算法和数据结构资源。
建议:准备得再多都不为过。
四:展现你最棒的一面
进入一个行业并不简单。不管你有没有准备好,你都必须展现你最佳状态。为了取胜,你必须成为自己的代言人。
推销自己
在 Hack Reactor,我们被告知要掩盖自己缺乏经验。在自我介绍的时候,我们也会有意忽略培训班教育。
为什么?因为不这样做的话,面试官会马上认为我们是初级开发者,并且给我们打上「缺乏经验」的标签。
有一次在一家创业公司面试,当面试官知道我是从培训班出来的人之后,转身就走。还有一家公司因为我的培训经历只肯给我 60k 美元的 Offer,比普通初级开发者还低。
记住,你要说服面试官你能胜任这份工作。
同时,你要告诉自己你能做好这份工作。
你可以跟面试官谈论你对编程的热爱,谈论你用 React 和 Node 做过的项目,谈论你对 JavaScript 或者其他你学过的语言的理解。
只有这样他们才会审视你录用你。
双向选择
面试就是应聘者和面试官互相了解的过程。虽然你要做的就是说服面试官录用你,同样面试官也要找到合适的雇员。
千万不要羞于以面试作为契机,去评估工作机会。
就算我对一个公司兴趣索然,我也会去面试的。
我会去全国各地面试,只要那个公司发来面试邀请。我会问面试官问题,并从中学习,比如开发团队的结构、他们使用了哪些技术和工具、公司受到的挑战,以及他们的系统架构。
小提示:你可以问面试官以下问题:
- 你们最近遇到了什么技术挑战?
- 你在这个公司最满意的一点是什么?
- 你们的团队是怎样的结构,如何分配任务?
我把每次面试都当做一次学习的机会。每次面试都能帮助我提高我的陈述能力、面试能力和技术能力,每次失败都能让我找到自己的不足。
建议:不要妄自菲薄,这只是双方互相了解的过程。
五:这是一场马拉松,而非短跑
这段时间不容易。三个月以来,我每周工作六天。但我还是把自己照顾得很好。
有时我会和朋友一起学,另一些时候,我则会找个咖啡馆,或者去 Hack Reactor 的休息室自习。每周我还会和导师报告我的进度。
在这个过程中很容易内耗。总之就吃好睡好,然后保持锻炼。
同时你会很容易感到孤单,和一群志同道合的朋友们在一起会好点儿。
建议:要有长期作战的心理准备,并照顾好自己。
总结:
- 接触真人
- 由小到大,先易后难
- 学好你工作需要的知识
- 展现你最棒的一面
- 这是一场马拉松,而非短跑
你可能会觉得找到好工作遥遥无期,但你总会成功的。不断地学习、投简历和照顾好自己,你总会赢得你想要的。
如果你觉得这篇文章还不错,请把它分享给正在找工作的朋友。祝好运!
感谢阅读!
原文:I spent 3 months applying to jobs after a coding bootcamp. Here’s what I learned.
欢迎关注知乎专栏「极光日报」,每天为 Makers 导读三篇优质英文文章。