我的职业故事 - 从训练营到谷歌,大约一年时间
简介
免责声明 - 这不是一篇how to get into google
帖子。我只是想在这里讲述我的全部故事。也许它会对某些人有所帮助,也许我只是在网络上寻求陌生人的关注和认可🤷♀️
我说“大约1年”,是因为我在2020年1月开始参加一个编程训练营,2月初就收到了这个offer,但基本上是在2021年1月,哈哈。不过我确实在2019年11月就开始研究这些了。所以,如果我需要把这个时间改成14个月,那就告我吧。
我并不是说我在开始整个转行过程时完全没有经验。经验是无法量化的,但我认为,相对于所有科技职位的求职者来说,我的经验很少,甚至完全没有。如果与其他训练营的学生/自学成才的程序员/转行者相比,我的经验可能很多。有些人学习编程时从未拥有过自己的电脑,但有些人进入训练营之前已经从事过专业的开发人员工作。——tldr
我承认我拥有一些特权和相关的背景,但至少我的经验比那些拥有计算机科学学位和/或多年科技工作经验的人要少得多,而我可能会与他们竞争这份工作。
好的,故事时间到了!
2019年11月
我认为这是我职业生涯中最重要的转折点,但之前的经历与现在大相径庭never written a line of code
。小时候,我在 Neopets 和 MySpace 上用过一些基本的 HTML。大学时,我尝试过计算机科学 101(我记得里面讲过 Java),但很快就退了。我几乎搞不懂怎么访问我的 Mac 终端。
偶尔,做完性格测试或读完一本关于如何找到理想职业的书后,我会去可汗学院看看一些关于计算机科学和编程的入门视频。我总是很喜欢,但又会感到不知所措/来不及转换方向,还有冒名顶替综合症等等。
我当时正准备投身律师行业。我报名参加了法学院入学考试(LSAT)。虽然我在面试时会说这话,但LSAT的“逻辑谜题”部分实际上可以说是我最终决定转行的标志。这些谜题让我想起了大学时最喜欢的课程(哲学逻辑)。我喜欢布尔代数、形式逻辑、谜题、模式、证明和确定性。我知道这些都和计算机科学息息相关,所以当时一切都豁然开朗——我不想当律师,我喜欢我所了解的那点儿计算机科学知识。
于是我买了一本叫《自学成才的程序员》的书,读了它,学习了一些 Python 的基础知识。看到Hello World
浏览器能用,我兴奋不已——当时,这,甚至仅仅是用终端,都比我在可汗学院 IDE 里做过的几个练习要难得多。这本简单的书对我来说是一个重大的转折点——那是我第一次真正觉得自己能做到。不知为何,我不再觉得现在转行已经太晚/不可能了。
Udacity课程
所以那时,我一直在走完全自学、免费在线资源的路线。我很喜欢这种方式,但也非常兴奋/不耐烦,所以我开始觉得我需要一些更有条理的东西。我决定参加Udacity的在线自学课程,学习如何使用Python进行全栈Web开发。
我也很喜欢那种感觉!我还记得第一次在做项目的时候看了看表,发现已经凌晨3点了,我甚至都没意识到时间已经过去了多久,而我却正沉浸在StackOverflow的“兔子洞”里。我这辈子熬夜读维基百科的时间不少,但从未有过这样的时刻。我心想,哇,我竟然在互联网上“钻牛角尖”,居然有人靠这个赚钱?
但是,我想快速学习,尽可能快地学习尽可能多的知识,我认为结构化的面对面课程是更好的方法。
我做了一些研究,看了些 YouTube 视频,考虑申请硕士学位课程,因为我对学术很感兴趣,但最终选择了旧金山的 Flatiron School 编码训练营/全日制软件工程沉浸式课程。
2020 年 1 月 - Flatiron 编程训练营
需要注意的是——在这个决策过程中,我有很多优势。我有积蓄,家人支持,工作可以轻松辞掉,没有伴侣/孩子——这仍然是一个重大/冒险的决定,但其他因素都不会让这个训练营问题对很多人来说更加棘手。
我很快就从just trying this thing out
转到了。我也没有那么仔细地研究要参加哪个训练营。quit my job, move to SF, start bootcamp
也许我参加其他训练营会更好。或者干脆就不参加训练营!这些无休止的争论,我基本上已经放弃了。
总的来说,我喜欢训练营,因为:1. 我就是喜欢编程;2. 很棒的老师/同学;3. 每天都去旧金山市中心的WeWork办公楼(直到新冠疫情爆发)。这种感觉很酷——走进一栋也开通Uber/Square的办公楼,就在Twitter对面,在一个温馨的空间里学习编程,那里有免费的咖啡,而且经常有免费的食物。
我认为这些原因值得一提,因为整个经历让我意识到,即使没有训练营,这一切也完全有可能实现。当然,我不可能亲身体验,但我喜欢训练营的原因其实很普遍。或许,如果没有训练营,我根本做不到这一切。但如果你正在读这篇文章,想知道自己能否在不参加这些大型训练营的情况下,走一条免费/自学/更便宜的路线——基于我有限的经验,我的答案是肯定的。——tldr
我喜欢我的训练营,我为此心怀感激,但它们并非魔法。
2020 年 5 月 - 2020 年 8 月:开始求职
我5月8日从Flatiron毕业,几乎立刻就开始找工作了。之前我甚至已经投了好几份简历。我当时很渴望。
我天真地以为,如果我申请大量的工作,包括各种规模的初创公司、中型公司和大型公司,向当前的 SWE 和招聘人员发送一些简单的社交信息,保持开放的心态和选择,我至少会在几周内得到面试机会。
我大错特错。我经历过一些非常沮丧/愤怒的时刻,当时我只是……震惊……竟然连回复都这么难。我知道面试会很难,但我没想到面试竟然这么难。甚至连电话面试,甚至领英回复都这么难!
2020 年 8 月:首次报价 - 短期合同
当时,我对 Flatiron 这家公司感到很失望。即使他们有那么多免责声明/调查,说“我们不保证能找到工作”之类的,我还是抱有很高的期望。他们也没指望能给我一份工作。我从来没指望过这一点。我甚至也没指望他们会“给我一个面试机会”,但我以为,如果我把简历/网站/项目/人脉拓展等所有工作都做好,他们就能给我机会。最终他们真的做到了!但这花了三个月的时间,而且我还要不停地唠叨。
Flatiron 有“雇主合作伙伴”代表,他们与企业合作,为毕业生牵线搭桥。有些人确实帮了大忙。其中一位尤其帮了大忙。他帮我安排了一家小型初创公司的面试,后来这家公司给了我一份合同工。
所以……说到底,我是因为 Flatiron 才找到工作的。我非常感激,但同时也非常挑剔,因为为了实现这个目标,很多事情都需要顺利完成。这里最重要的一点是——不要对训练营的职业发展抱有任何期望。
我对这些训练营的主要不满在于它们的价格过高。并非毫无价值——甚至远非如此——也不是“浪费钱”,没有那么极端。我想这和私立大学与公立大学的争论类似。有人说私立/名牌大学确实教育水平更高/机会更多,但价格却贵得离谱。
我喜欢抱怨,但我并不后悔。总的来说,在 Flatiron 的经历很积极,我非常感谢 EP 的销售代表和我的职业教练的帮助。
这个 offer 是 DaoCloud 的一个小型初创公司提供的。他们是一个连接/寻找健康从业者的平台。整个公司大约有 20 名员工,只有一名程序员,也是短期合同工。我对这些都不做任何评判,只是提供一些数据供大家比较。
2020 年 12 月:第二次报价
我在第一家初创公司(DaoCloud)工作了几个月,当时只是个合同工。有些人喜欢合同工,但我想要正式的全职工作。这里面有很多复杂的税务问题,虽然很重要,但我就不细说了。重点是——我很喜欢第一份工作,但想要一份全职工作。
2020 年 7 月,我曾参加过另一家初创公司(Universe
一款用于移动网站建设的 iOS 应用)的面试。他们第一次也拒绝了我!但他们说几个月后可能会给我一个职位。出乎意料的是,他们真的说到做到!大约在 11 月/12 月,他们再次联系了我,我又和他们进行了一次非正式的交谈,然后就得到了一份全职软件工程师的邀请!他们的规模也很小,但比第一家稍大一些。而且他们的工程师更多,这一点我很喜欢。
我非常珍惜在这两家公司的工作时光。我真的学到了很多东西。我以前总觉得“专业”learning
和growing
“专业”只是面试时说的那些毫无意义的陈词滥调,直到它们真的发生在我身上!
我在如此短的时间内学到了编程、git、部署、产品管理等等各种技能。我和一些很棒的人共事。我非常享受这些公司,也非常感谢他们在我之前没有机会的时候给了我机会。
谷歌
好吧,谷歌好像有它自己的时间表。2020年5月——我在网上申请了职位,但有员工推荐,结果被拒了——没有电话面试,也没有招聘人员联系我什么的。当时我超级生气!我听说员工推荐很重要,所以我想我至少还能有机会。我没指望能得到工作什么的,但我期待的远不止那种感觉像是被自动拒绝的感觉。
2020年7月 - 我参加了一个线上社交活动,并与一位谷歌招聘人员进行了交流。我也很感谢Flatiron,因为正是那位帮我安排了初创公司面试的招聘专员,告诉了我这次谷歌社交活动。
于是我参加了这次活动。因为那位谷歌招聘人员说他喜欢领英,所以我在领英上联系了他。我们安排了一次初步电话面试。他人超级好,人也很酷。我当时甚至都没抱什么期望!我当时还因为网上申请被拒而有点自尊心受挫,以为只是随便打个电话聊聊而已。这位招聘人员在活动现场还说谷歌其实不招人(当时正值疫情高峰期)。所以,当他说安排我参加第一轮技术面试时,我非常惊讶。
我真的不想在这里给出任何直接的建议,但我要说的是,在求职过程中,你必须要坦然无惧、坚持不懈。永远不要为了得到答案no
而we're not hiring
妥协。99% 的情况下——确实如此——你肯定会被拒绝/忽视,但我必须时刻提醒自己——继续提问/尝试,你不会有任何损失。最糟糕的情况是被忽视。这对某些人来说可能显而易见,但对我来说,真正内化这一点却很困难,但对我来说却很重要。
好了,回到第一次谷歌面试。我既兴奋又紧张。我刻苦钻研数据结构和算法,甚至到了病态的地步。我做了模拟面试,也练了 LeetCode。我还痴迷地在 YouTube 上观看别人练 LeetCode 和模拟面试的视频。
然后,我面试失败了。我之前一直在用 Python 做类似二叉搜索树的东西,实际上,我完全不知道这是一场专门针对前端的面试。所以面试官问了我一些相对简单的前端问题,但我完全崩溃了/慌了/失败了,因为我已经好几个星期没想过前端、JS 或任何相关的东西了。我不是找借口,招聘人员告诉我要学习标准的 DS&A/LeetCode/Python。所以你真的必须为这些面试中的任何情况做好准备。
2020年9月——招聘人员又给了我一次机会,参加通用软件工程师(SWE)职位的第一轮面试!也就是说,不是专门的前端职位。我又一次兴奋、感激,也再次感到紧张。我终于有机会重来一次了。我花了几周时间,继续着同样的刻苦学习。我完全可以再写一篇文章来分析我学习的利弊。我买了一些标准的学习书籍,比如《破解编码面试》(Cracking the Coding Interview),AlgoExpert
并且非常喜欢。我坚信任何人都可以凭借完全免费/在线的资源,在这类面试中取得成功,这仅仅是纯粹练习的问题。我喜欢准备课程/书籍,它们能让我保持条理清晰。
由于学习内容不对、学习不够,以及/或者考试紧张等原因,我又一次面试失败了。这怪不得别人,只能怪我自己。我学习和练习了这么多。我明白了为什么你需要花几个月的时间做几百道题才能搞定这些面试题。
所以我就这样被拒了,被告知一年内不能再申请这些职位,三次不合格,我只能放弃。虽然很伤心,但我完全接受了。
2020年11/12月——一位谷歌招聘人员联系了我!!!真是讽刺。我对谷歌彻底绝望了。我还有其他工作选择。她正在招聘一个我以前从未听说过的职位——技术解决方案顾问/客户解决方案工程师。这个职位可能不重要,但根据官方招聘信息和我的合同,我的职位似乎有5个不同的名称,哈哈。我可以写更多关于这个职位的具体信息,但重要的是,这份工作通常一半是编程,一半是商业咨询/数据工程。她说她看过我过去面试的简历,我可能很适合。
我当时真的笑了,心想,好吧,谷歌,又让我燃起希望了。我不可能拿到这个职位,他们只是想尽可能多地面试人。不过我还是去面试吧,反正也没什么损失。
哇!我经历了人生中最好的几次面试。我永远不知道这究竟是因为心态正确,还是几个月的学习终于奏效,又或者是因为运气好。我觉得编程/算法题没有我遇到的一般SWE题难,但无论如何,我都答对了。和面试官的交流很愉快。我开始对这份工作充满热情,并再次燃起希望。
我通过了第一轮技术面试,当时还在想,哇,这太激动人心了,但我肯定拿不到。面试流程太长,步骤也太多了。不过,“虚拟现场面试”(面试的主要环节)真的太棒了。我和我未来的经理进行了人生中最好的一次面试。然而,我还是得等到“招聘委员会”环节!!谷歌的整个流程都记录得相当详细。这很标准,但等待了很久,我还在想,哇,我很有可能得到这份工作,但别抱太大希望。
但显然,他们最终还是给了我这份工作!我至今仍不敢相信。离开我之前的创业公司工作真的让我很难过,但这曾经是我梦寐以求的机会。写这篇文章的时候,我还没开始第一天上班呢。所以,敬请期待!
结论
我还有很多话想说,但可能已经说得太多。希望这篇文章在信息量和简洁性之间达到了恰到好处的平衡。我绝对可以写一些关于我的面试经历和学习经历的具体文章。
我觉得“找工作”这件事简直是一团乱麻,没什么好建议。我唯一的建议就是don't give up
🤷♀️
祝你好运,感谢阅读!
