从自学CS知识到入职亚马逊,他只花了8个月

2021-01-03   AI科技评论

原标题:从自学CS知识到入职亚马逊,他只花了8个月

作者 | 田哲

编辑 | 陈彩娴

当你在职场生涯中遭遇瓶颈期时,你的选择会是什么?

跳槽到一家新公司开始新业务?转行开启新的职业规划?还是放弃挣扎老老实实做一条咸鱼?

上面的选择或许有用,但都只是逃避现实罢了,新的打击随时都会降临。

一位前软件工程师John Washam用自己励志的经历告诉我们:敢突破,成为更好的自己。

1

赶不上时代变化,每天学习8小时CS知识

在没入职Amazon前,John Washam自2001年以来,一直担任Web开发人员。

在15年的工作经历中,他在多家公司工作并担任高层领导,帮助公司创造了数百万美元的收入;领导一个开发团队对大规模支付集成进行了重构,并在极短的时间内完成,如果多耽误一天,可能要多花费数百万美元;他也曾创立多家公司,其中一家科技创业公司甚至在一项业务中打败Google。

既然已经有了如此丰富的从业经历,为什么还要放弃既有成就重新学习计算机科学知识呢?

关于这点,他给出了解释。

在做出改变的9年前,老板建议他学习一些计算机科学专业,这可以帮助他与其他工程师更好地沟通,并为他提供解决问题的更深入的技术知识。

听了老板的建议后,他想到自己长期在一个层次结构内工作,缺少对编程系统的认识,于是开始上C语言的课程,阅读相关书籍。不过由于在工作中并不需要这些知识,他很快就忘记了。在之后他忙于自己的副业,一直没时间学习新知识。

停止学习意味着落后。

时代飞速发展,在短短9年里涌现了许多新技术,人们的开发速度加快,后浪们的技术能力一个接一个超过他,他开始害怕了。

有CS背景的后浪们创造的每一个新事物都让他惊讶:操作系统、数据库、分布式哈希表、分布式计算系统、桌面软件、移动应用程序、图像和声音编辑软件……这些都是他多年来低成本使用的东西。

Web开发已经过时,是时候升级自我了!

此时John Washam已经44岁,这对一个开人员来说,不是一个理想的放弃一切,重新学习的时机。不过John Washam还是给自己定下了一个很高的目标:入职像Google或Amazon这样的大型科技公司。

为此他给自己列了一项复杂的学习计划,并在自己的博客上记录学习心得。

他每天自学8-12个小时,每天阅读书籍,编写代码以及观看计算机科学讲座。花费数千小时自学,持续8个月后。他终于成为了一名Amazon软件工程师。

如果失败怎么办?

如果放弃工作,每天学习将近12个小时仍然没有达到自己的目标,是不是所做的一切都不值得?

John Washam不这么认为。

即使失败了,他也掌握了在任何一家公司担任软件工程师所需的技能和知识。因此,无论到哪里,他都可以以入门级软件工程师的身份找到新工作加入。

2

没有计算机专业学位,开发知识全靠自学

如果你以为John Washam曾经的成就来自大学带来的帮助,你可错了。事实上,John Washam并没有计算机专业学位,准确来说,他只有经济学学位。所有的开发知识都是他自学而来。

在中学时,John Washam就开始自学编程,比如BASIC。之后他成为了美国驻韩军事情报员,正式开始了他的程序员生涯。

两年的韩国军队生活John Washam自学了韩语,可以用韩语无障碍阅读、交流和书写。退伍后,John Washam留在韩国工作,无障碍韩语沟通帮助他找到一份英语老师的工作。

在韩国工作的一年时间里,John Washam利用晚上和周末使用Perl,HTML,CSS(当时是新功能),Java和SQL学习Web编程。

2001年回国后,他顺利在西雅图找到了一份Web开发的工作。

接下来,就像前文所说的那样,他与同事创立了3家科技公司,到2016年时仍有2家公司盈利;参与多个重要项目,为公司盈利数百万美元;加入Amazon之后他加入了Zappos —— 一个超过Amazon,美国最大的B2C鞋类交易平台。

3

John Washam的“谷歌面试大学”

John Washam将自己的学习计划发布到Github上,目前已经有7.9k浏览,150k颗星。

图注:John Washam的“谷歌面试大学”

项目地址:https://github.com/jwasham/coding-interview-university

在他的项目中,详尽的展示出自己的面试准备,以及学习过程。

比如,他将学习中遇到的知识点分门别类的整理好,并给出相关资料链接。

同时还给出了简历撰写、面试准备等建议,帮助求职者们应对来自Google,Amazon,Facebook和Microsoft的面试。

尽管这个项目耗时八个月,记录了他自学过程中的所有知识中,但John Washam回顾这份项目时,仍然不大满意。

他在博客中说道:“不要像我那样学习。”

他总结了自己的学习过程,并列出了几点可以更快完成入职Amazon的目标。

1.学习太多不必要的资料

他花了3周的时间读一本1000多页C++书,但面试时用到的却是Python;列了数十种算法代码目录,但其中大部分很少用到。

他认为不要预设太多情况,根据实际进行针对性学习常用,必要的知识,节省下的时间可以用来解决编码问题。

2.艾宾浩斯记忆法

在自学过程中因为缺少科学的学习指导而学习过多的知识,知识过多该怎么记住呢?John Washam主张间隔重复记忆,即艾宾浩斯记忆法。

一旦你了解一些内容,稍后再检查一次,甚至以后再检查一次。在每次重复中,你都会加强学习。在优先级队列上一次又一次地花几个小时不会使你成为专家。通过不断回顾和检查,你将成为专家。如果这样做,您将到达无法忘记细节的地步。

为了记忆,他制作了1,792个数字抽认卡。每当John Washam有空的时候,他都会在手机或平板电脑上查看它们。卡片和间隔重复是相辅相成的。一旦他在检查中回答正确,他就不会将其标记为已知。我将其保存在平板电脑上,一旦看到并正确回答了多次,然后将其标记为已知。

或许,你也正处于某个阶段的瓶颈期,被焦虑和迷茫左右。虽然John Washam只是个例,但我们也能从中学习他的一些精神,做出一些改变,总会找到出路。

祝大家学习顺利!

参考链接:

https://www.freecodecamp.org/news/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13/

https://startupnextdoor.com/the-journey-begins/

[赠书福利]

AI科技评论本次联合【博文视点】为大家带来15本“《labuladong 的算法小抄》”正版新书。

在1月1日头条文章《 我多篇顶会论文在手,面试AI算法岗时竟然还要刷算法题?| 元旦送书福利》 留言区畅所欲言,谈一谈你刷算法的故事,或你对2020的总结或者是对2021年的规划和心愿,甚至可以是新的一年对AI科技评论的建议和期待,有哪些喜欢看的报道,还希望看到什么样的报道?

AI 科技评论将会在留言区选出 15名读者,每人送出《labuladong 的算法小抄》一本。

活动规则:

2. 留言内容会有筛选,例如“选我上去”等内容将不会被筛选,亦不会中奖。

3. 本活动时间为2021年1月1日 - 2020年1月7日(23:00),活动推送内仅允许中奖一次。