国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > 互联网 > 我从谷歌学到的那些事:Toilet文化、代码实验室

我从谷歌学到的那些事:Toilet文化、代码实验室

来源:程序员人生   发布时间:2014-09-17 23:43:26 阅读次数:3314次

【编者按】作者Edmond Lau此前在谷歌搜索质量小组负责查询请求和UI方面工作,现在Quora任职。他表示,正是由于在谷歌学习到的一切伴随着他自信前行,成为了他的良师益友,无论对于哪家公司都将受用。


说起洗手间,你会第一时间想到什么呢?而对于我,就是一个充满智慧的地方。没错,就是闻名遐迩的“谷歌洗手间”文化。在目所能及的地方,都是智慧的结晶。每个星期,有关测试点子的便签都会如约而至,接受各路大神的审阅。精通各国语言的它,更是打破地域的界限,共享全球智慧。如此骇人听闻的创举,正源于谷歌团队的核心价值观:持续向团队分享个人成果,海纳百川,集思广益。


刚毕业那年,我就有幸加入了谷歌搜索质量团队,在2006年中到2008年中的两年光景里,我学习到了很多日后终身受用的知识与理念;而谷歌也在这其间,公司人数规模从8000人跃升至2万人。现在搜索的时候,是不是会看到近似查询结果的提示?这个正是我加入公司后跟着两个天才工程师一起做的第一个项目。经过近半年,循着原型->测试->发布的轨迹,发展成为现在每天服务着上百万用户的小助手,还得感恩谷歌那博格族人般同化人的功力与艺术。只要一投入其怀抱,良好的工作氛围与优秀的团队文化,都立马能让吾等 (Noogler谷歌专利,意即:new+googler新谷歌人)情不自禁地去学习去探索Noogler,每天就像打了鸡血似的想马上为团队建功立业,奉献一切。

如果不是几个起关键作用的团队文化核心要素,或许当初要在强度高时间紧的背景下完成新项目上线,无疑难如蜀道。借助这些关键要素,我能马上享用谷歌代码库、工具库、以及基础架构等优质资源,以极其迅速的速度结束Noogler之旅。尽管有部分前雇员对近来公司发展放缓以及官僚主义泛滥嗤之以鼻,但不可否认的是,每年前100最佳雇主评选名单中,你总能在第一梯队中看到它挺拔的身姿。

接下来,我将这些核心要素总结为以下六点,希望能对你有所启发:

一、共享优质资源

在团队中使用内部工具或推行方法论,在谷歌可谓历史悠久。例如:Protocol Buffers,MapReduce,BigTable等。对能保持对问题一追到底,对提出被大众认可解决方案的人才,其奖励机制更是相当慷慨大方;如前3年仅仅对安全研究人员颁发的奖金就高达200万美元。因而对于能脱颖而出被推荐使用的工具,往往很快就如雨后春笋在工程师的机器上繁衍生息;同时,专注创造能提升效率效益工具的团队也能不断收获满足感与成就感,从而形成良性循环,让所有成员拧成一股绳。即使面对完全陌生的工具库时,由于师出同门一脉相承,其学习周期是充满欢声笑语的。

二、完备的培训资源

重点推介的当属Codelabs(代码实验室)。里面有条理清晰讲解透彻的核心抽象理论说明文档,有丰富的注重理论实践相结合的说明实例。没有这一切,不论对于Noogler还是老员工,要完成新人培训是事倍功半且痛苦的。

三、标准化的代码风格

可能对于高级程序员来说,诸如代码缩进、代码注释、变量对象命名等是小事一桩,但当公司规模达到一定级别时,这一切就从鸿毛变成泰山了。特别是对于做代码复审的同事来说,如果上万个代码风格就是上万个哈姆雷特,那真的是哈姆雷特了。所以,尽早建立标准化代码风格的规章制度,不论站在员工还是公司角度来说,对自身长远发展都是大有裨益的。

四、伟大的代码复审员

尽管代码复审员的存在,会让人有时候准备完工轻松一下时,有被倒下一瓢泼大冷水的感觉,甚至会拖长项目进度,但是这个职位的存在是至关重要的。清晰易读代码形成的速度,与复审员唇枪舌剑的次数成正比。严师出高徒,每个从谷歌走出的人都会感激和怀念当初对自己从来没有好脸色的复审员的。

五、包罗万有的知识库

言犹在耳的是搜索事业部总监Norving常挂在嘴边的一句话:“只要能解决问题,我管它是黑猫还是白猫。”借助强大的Sawzall和MapReduce等数据集群架构,建立和发展巨大的知识库,合适的解决方案可谓取之不尽,用之不完。

六、自律的单元测试

在谷歌,进行单元测试是要事更是默契,例如开头的洗手间故事以及复审员神一般的存在。牺牲的可能是项目进度,换来的是成千上万代码修改的庖丁解牛。由此延伸到共享工具设计、测试框架建立等方面,都是向着团队最佳实践的方向行进的。

写在最后

离开谷歌后,辗转到了了几不同的企业,在谷歌学习到的一切一直伴随着我自信前行。尽管存在文化差异,但是孕育于一个优秀集体的公司文化,经过一番雕琢权衡后,或许虽不是你的那杯茶,但却会是你的良师益友。

英文出自: Theeffectiveengineer

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生