作者 | GitHubDaily
前言
如果让你选择一家互联网科技公司加入,你会选择哪一家?
具体答案因人而异,不过我相信,作为目前全球最为知名的互联网公司,Google 一定名列其上。
自 1996 年诞生以来,Google 至今已推出多款改变世界的互联网产品,旗下也汇聚了一大批优质的工程师与科学家。与此同时,因其崇尚自由开放,不作恶的互联网理念,也受到了许多互联网优秀人才的认可,Google 也成为了他们最想去的互联网企业之一。
来自西雅图的工程师 John Washam 便是其中一员。
谁是 John Washam?
John Washam 是一名软件工程师,目前定居于美国西雅图。2016 时,因其在 GitHub 上发布了一个名为「Google 面试大学」的项目而名声大噪,引发技术圈内诸多人的关注。
John 在中学时代便开始接触编程,后面上大学的时候,主修的确是经济学专业。原因是他认为在他大学毕业后,计算机专业的人才将会供过于求。后面事实证明,他错了。
几年后,John 毕业,他选择了参军,军队驻扎于韩国,因此他自学了两年韩语。
从军队退伍后,他又开始重拾编程,经过一年的学习,他掌握了 Perl、HTML、CSS、JavaScript 和 SQL 等相关知识,这些知识让他成功在西雅图找到了一份编程相关的工作。
随后 15 年,John 一直在 Web 开发领域深耕,期间创立了 3 家公司,当中有 2 家还成功盈利了。在这个过程中,他还掌握了团队管理、市场营销等其它非计算机专业的基础知识,使其成为不折不扣的全栈工程师。
正常情况下,普通人能走到这一步,已经算是人生赢家了。但是,John 并不满足于此,他想完成另一个新身份转变:从 Web 工程师变为软件工程师。
许多人看到这里,估计会心里犯嘀咕,这两个岗位区别有那么大吗?但 John 认为,相较于前者,后者需要掌握数据结构、算法、编译语言、内存优化等更深层次的编程知识。
之后,John 便开始投入精力学习,并将进入 Google 工作视为其成功掌握这项技能的判定标准。
在学习的过程中,他开始接触大量与编程相关的知识与教学资源,秉着前人栽树后人乘凉的精神,John 在 GitHub 上开源了这份学习指南,并将其命名为「Google Interview University」(现已更名「Coding Interview University」)。
https://github.com/jwasham/coding-interview-university
谷歌面试大学
在 John 放出这个项目后没几天,GitHub Star 便如火箭般快速飙升,短短三四天内便突破 10000 Star,成功霸榜 GitHub Trending!
项目历史增长曲线:
这份指南里面包含 Google 相关的介绍视频、面试过程、教学资源,同时也有数据结构、算法、密码学等计算机专业的知识讲解。
掘金翻译团队为了便于国内开发者查看,已将该指南译为中文。
https://github.com/jwasham/coding-interview-university/blob/master/translations/README-cn.md
不过由于这份译文未跟原文保持同步更新,因此内容难免会有缺失。英文阅读能力尚可的同学,还是建议直接看 README 原文。
下面我简单挑选了几张项目截图,让大家感受一下这份资料里面都有什么干货:
可以看到,这份指南资料整理得还是非常齐全的。
尽管 John 最后没去成谷歌(去了亚马逊),但他留下的这份指南,还是让诸多后来者受益无穷,在此也对作者表示下感谢。
如果你也有一颗想进入大企工作的心,不妨开始照着这份指南学起来吧!
以上,便是今天的分享,希望大家喜欢
本文相关阅读推荐:
毕业十年后,我忍不住出了一份程序员的高考试卷
一道腾讯面试题:厉害了我的杯
十大经典排序算法动画与解析,看我就够了
这或许是东半球分析十大排序算法最好的一篇文章
面试官,我会写二分查找法!对,没有 bug 的那种!
看《长安十二时辰》可以了解哪些算法知识
GitHub 标星 3w+,很全面的算法和数据结构知识