找回密码
 立即注册

QQ登录

只需一步,快速开始

  • 欢迎访问 计算机技术论坛-电脑迷与初学者的家园!由于论坛管理严格,新注册会员可能遇到各种问题,无法解决的请发邮件 admin@jsjbbs.cn
查看: 914|回复: 0

GitHub上最励志的计算机自学:John Washam

[复制链接]
发表于 2021-4-6 10:47:55 | 显示全部楼层 |阅读模式
#111723#John Washam励志要成为一位谷歌软件工程师,但没有CS专业配景的他,只能通过本人的尽力来告竣幻想。
因而,8个月的时光里,小哥花了数千小时浏览册本、编写代码、观看CS技巧讲座,一起披荆斩棘、打怪进级。
终究,固然没有去谷歌,但别人到中年,还顺遂成为了一位亚马逊AWS的技巧专家,年薪百万。
愈加难能宝贵的是,小哥还将自学教训编写成了一份教程,在GitHub上线以来,已播种近10万星的好评。

正如他所说:
即使没有面上(?)梦寐以求的谷歌,然而教程,也能够用来好好空虚一下本人。
PS:教程有中文版哦~~
GitHub超10万星自学宝典
是甚么样的编程教程,能如斯火爆?
小哥最初的目标是“考上”谷歌,因而天天自学8⑿个小时,保持了8月不足。边学还顺手收拾出了这份自学名目。
不外在实现这项进修打算后,他终究被亚马逊登科,成为一位软件工程师。
Washam表现:
不管你要口试哪家软件公司,这里的名目能够让你做好充足的筹备,包含像亚马逊、Facebook、谷歌和微软如许的科技巨子。
接上去,咱们就随着Washam的脚步去懂得一下这份口试宝典。
抉择言语、必备常识资本
起首要做的就是抉择一门言语,在Google个别是C++++、Java、Python,偶然也会用到JavaScript、Ruby。背地另有一些如SQL、HTML等技巧没有列出。
接着开端进修盘算机硬件常识:

而后弥补盘算机专业的基本数学常识,如算法庞杂度 / Big-O / 渐进剖析法、数据构造、树、排序、图论。

另外另有递归、静态计划、组合与几率、NP&NP-完整和近似算法、缓存、线程与过程、体系计划、可伸缩性、数据处置。
看到这么多常识点,你会不会感到有点懵呢?Washam告知你一点小技能。
由于你弗成能一遍就记着全部常识点。以是须要把要回想的常识点做成抽认卡(flashcard):畸形的及带有代码的,相似于背单词。

每种卡都市有差别的格局计划。名目主页中就有抽认卡的源代码,能够依据本人的进修特色去制造。
Washam还留有一组 ASCII 码表、OSI 客栈、Big-O 暗号及更多的小抄纸,以便在空余的时间能够进修。每编程半个小时就要苏息一下,并去回想你的抽认卡。
固然,论文的浏览也是必弗成少的,特别是谷歌已经宣布的一些基本技巧论文。

册本则推举一些对于算法和C++编程之类的。

Google口试留神事项
口试的第一步固然是要有一份好的简历,如许才干为你争夺到可贵的口试机遇。著名科技博主Steve Yagge给出了10个贴士,帮你做出一份还不错的简历。

这位Steve已经在亚马逊、Google都任务过,Washam的这个名目就大批地援用了他的技巧博客内容。
在口试时,你可能会碰到这20个成绩,每个成绩筹备 2-3 种答复。筹备点故事,而不要只是摆一些你实现的事件的数据。

口试官在也会问你另有哪些成绩,不要说本人没有甚么要成绩,能够尝尝问一些此类成绩:

固然,进入Google也不料味着停止,你还要新的进修进程。
Washam另有一份附加内容,包含Emacs和Vim、Unix下令行东西、暗码学。这些内容固然不会直接用到,然而会大大进步你的效力。
一个Web前真个新征程
实在严厉来说,John并不是一个编程小白。
从高中起,John就开端进修编程,学的是BASIC言语,这还在是上世纪90年月。
大学结业拿到经济学学位后,他先是在部队退役两年,驻扎韩国。
退役后他留在韩国教英语,忽然发明本人分开CS范畴的这几年间,太多的新技巧新东西呈现,本人的常识构造呈现了断层,没法支持起一个顺序员的职业生活了。
因而他应用所有专业时光,艰难地进修Perl、HTML、CSS(事先这仍是新货色)、JavaScript和SQL。
终究在2001年,John正式成为了一个网页开辟顺序员,开端了19年的码农生活。
停止2017年,John的职业生活堪称非常胜利:在巨细公司都有过任职、组建治理过名目团队、运营强大过始创公司,本人还亲身开办了3家软件公司,此中2家至今还在安康经营。
依照John本人的话说,这十几年的任务阅历,将他锤炼成了一个及格的顺序员、一个优良的产物司理、一个CEO、一个市场贩卖。
然而他的目的不止于此。他的幻想是在谷歌任职软件工程师,在充斥聪明和发明力的团队里进步本人。
最初他以为凭本人的任务教训能够轻松取得职位,但拿到了谷歌口试题他才发明本人完善太多。
一个优良的软件工程师应当粗通数据构造和算法、汇编言语、内存计划等,还要综合斟酌代码和顺序构造对呆板在利用场景下的影响。
因而他以这份谷歌试题为指点,开端了编程自学。
而且在github上树立了「9894名目」,由于谷歌树立与1998年9月4日。
厥后这个名目更名为当初的「coding interview university」。
CS自学三点留神事项
John联合本人的进修阅历,给出了三点自学编程的倡议。
一、早问早打算,不要想固然
John最大的经验是本人花了太多时光进修基本用不上的货色,比方他已经用了3周时光浏览了1000多页C++的材料,然而最前面试和任务顶用的倒是Python。
△这是John的算法进修材料,最后证实走了委屈路
缘由是他担忧口试时可能会被问到。
这个例子不是说C++没须要学。
而是夸大你要提早搜集信息做出打算,在差别的名目上调配公道的进修时光,进步效力。切忌「我感到……」。
二、视频比看书效力更高
观看视频的进修效力天然要比本人啃书快。
找到好的教养视频,象征着你有更多的时光现实演练编程标题。
三、重复复习非常主要
一直重复是构成影象的要害,正如咱们在上文提到的,John推举应用影象卡。
他本人制造了1792个电子影象卡。一有闲暇时光就取出来复习,比方超市排队时、公交车上等等。
对于一个卡片的的成绩,答复准确还不敷,John会在一段时光内屡次答复准确才会标志为「已控制」。
终究这位小哥没有去谷歌,而是接到了亚马逊的offer,当初他在亚马逊做软件工程师。
然而他本人说之前的进修阅历并不是无勤奋,当初他曾经片面控制了软件工程的基础技巧,无惧任务中的任何挑衅,而且实现自我奔腾的那一天越来越近。
并且John小哥的阅历,也不范围于顺序员自身,多于更多人而言,也有值得参考之处。
他认定了一个目的,而后制订打算、勤恳支付,最后天道酬勤取得报答。
John可能也是一个「一万小时定律」的拥趸,但就算依照他天天12小时、保持8个月(每月31天),他从一个网站前端到AWS技巧专家,用时也不外2976小时——远未到1万小时。
但就是如许目的动摇的8个月,John从入门到取得大厂承认,百万年薪加持。
外媒考察亚马逊软件工程师均匀年薪超越百万国民币
这是咱们在GitHub看到最励志的故事,也是咱们盼望让更多人看到的缘由,而且由衷盼望更多人由于如许的阅历和分享,发明属于本人的故事。
坊间笑谈太多的“从入门到废弃”,但也有人“从入门到百万年薪”。
性命不息,斗争不止,Keep walking~
传递门:
GitHub名目地点:https://github.com/jwasham/coding-interview-university
电子影象卡名目地点:https://github.com/jwasham/computer-science-flash-cards
参考链接
团体博客:https://www.freecodecamp.org/new ... rview-cc662ce9bb13/
xj
原文题目:GitHub上最励志的盘算机自学教程
文章出处:【微信大众号:算法与数据构造】欢送增加存眷!文章转载请注明出处。
更多内容阅读推荐:三星电视没声音怎么办
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

|计算机技术论坛 JSJBBS.CN @ 2008-2025 ( 鲁ICP备17021708号 )

技术支持 : 腾讯云计算(北京)有限责任公司

快速回复 返回顶部 返回列表