招码农没那么容易, 每家公司都有自己的脾气
作者:王栋
都说“三十年河东,三十年河西”。在硅谷,时局变幻可能用不了三年。昨天还和你一起聊天的同事,明天可能就去了独角兽当元老;前天刚刚拿到十八线小公司 offer的隔壁老王,第二天就可能因公司被FLAG收购,一跃成为一线码农……放眼望去,IT这盘棋,群雄割据,百家争鸣。
本人不才,曾在Pinterest当过几年面试官,每当和同事们聚在一起时,大家都喜欢“煮自家酒论别家英雄”,谈论着如果自己当CEO,会从Google,Facebook,Amazon等公司挖什么样的人过来…
既然脑洞已经开到了这里,那就让我们先来细数一下几家公司的“脾气”,再来谈论每家公司“人才”的特点。我就随便说说,你且随便看看罢:
1
蜀道难,难于上青天!
每个码农都想进入Google那座围城,仿佛这就是程序员就业的最高殿堂。但也有人就把这里当做一个过渡站,想镀层金就跑路。
不可置否的是,Google的人才的确很多,而且个个技术过硬,身手不凡。就好比三国演义里面的蜀国一般,牛人无数,充满传说。
Google的傲娇源于实力。他们搭建的系统结构,其运行能力和稳定程度领先世界上其他公司好几个档次;当Google已经开始用人工智能生成代码了,百度还在无人车和人脸识别等领域内讧。
Google里的高手们擅长于无声处就搞定几个大项目,然后用一篇大paper告知世人:“这是我们的玩儿剩的(旧技术),原理在这,代码你们自己发明吧。”
公司如此,于是传说也相应而生。比如,Google的顶梁柱之一——Amit Singhal在搜索方面很有建树,面试时曾当着公司创始人的面说:“我要重写你们的搜索引擎”。这就好比去吃米其林三星,一进门就对厨子说,“你这菜不行,放着我来。”
Amit确实做到了他许诺的事情,而且这么多年来,以他为首的搜索质量把关小组“一夫当关,万夫莫开”,严格控制筛选可以launch的实验。
虽然Amit英雄末年没有躲过那一场桃花劫,但是留下的产品技术还是为人称道的。
还有Jeffrey Dean,硅谷坊间一直流传着关于他的传说。比如:Jeff Dean构建完代码后提交代码,只是为了检查编译器和连接器没有BUG。Jeff Dean很会做人,情商极高,做了不少顺水人情——帮助不少team解决了悬而未决的难题,不少manager在办公室买高级咖啡机,就是为了Jeff Dean能偶尔来赏脸喝杯,讨论点小问题。
从Google挖人有些困难,但是肯花钱挖个中高层一定有好处,带来的不光是项目经验还有四方的追随者。
阿里早年间挖走了Mustang作者,Mustang是Google内部搜索引擎项目的代号。这人帮阿里重建了搜索引擎,给千人千面的淘宝体验打下了坚实的基础;Pinterest挖走了Caffeine作者,Caffine是一套Google内部实时处理索引的项目代号。这位老师一手带大Pinterest的探索体验,从建立索引到搜索,从推荐系统到质量管理,一个都没有落下。
前面说了高手,接下来也说说偷懒的。
Google有的是隐世高手,就好像《天龙八部》里的扫地僧,貌不惊人却身怀绝技;但也有许多滥竽充数的南郭先生,就像是《射雕》里的裘千丈,只有花架子,滑水可以,干活不行。
并不是每一个Google的工程师都值得创业公司挖,面试时候一定要小心那些顶着光环但不做实事,不去思考的渣渣。我曾经面试过一个来自YouTube的做搜索的员工,问他视频搜索有什么特点,和网页搜索的不同在哪里?他回答:”做视频搜索质量没有什么用。” 当时我内心就想,”既然没用你还做这么多年干什么,这不是打自己脸么?”
还有的Google程序员把时间都花在了琢磨琐事上:
“写程序用Tab还是空格?”
“不同的服务是放在同一个代码库还是分开存放?”
“用Thrift而不用Protobuf是不是太没有效率?”
……
有的人可能觉得这是浪费时间,可有的公司吃就这一套。于是这些爱捉摸的Google员工们改改简历、添加几句自己的“成就”,就变成了director和CTO。
然而现在纯技术创业在走下坡路,产品功能在迅速迭代,很难保持代码风格一致性;没有好的系统支持,如何将上亿行代码保存在同一个代码库中又能节约编译时间;达不到上百万的qps,用Thrift和Protobuf细微的压缩差异从何体现。这和同为FLAG的Facebook风格可大相径。
2
汉家萧鼓空流水,魏国山河半夕阳!
Facebook整个职场弥漫着一种来自于非洲大草原的野性,员工不止有关键时刻,整个团队都可以像喝了大力一样,move fast and break things。
Facebook的员工充满野心,从他们的创始人到底层员工都充满梦想。拿Mark Zuckerberg来说,今年个人目标是走遍美国50个州,可以窥探出竞选美国总统的野心。
Facebook的高手注重实战,他们不一定有着最强的理论技术和实战经验,但是面对问题时总能设计出一套可行的解决方案,来满足每天12亿活跃用户的需求。就好像三国演义里面的魏国,有着一统天下的能力但缺少对个体的生动描写。
Mark比较相信中国程序员,传说早期受到不少亚裔工程师的帮助。另有一帮中国信息学竞赛高手很早就加入Facebook,一马当先解决了许多难题。
第一个加入Facebook的华人是赵海平,擅长软件性能优化和架构分析,Facebook早期主要依靠PHP语言,他创立了项目HipHop,重新编写了该语言的实现,使其速度提高了5到6倍。
还有魏小亮老师,邵铮老板,符文杰教主等一些自带光环的角色也很早就加入Facebook。魏老师最初也是研究软件架构和性能,后来负责过产品部署和新兵训练,一路攀升到Growth部门CTO,堪称是公司最重要的部门领头人,在中国工程师中非常有影响力。符教主是数学,信息学双料金牌,最初在CMU读博士,研究用户点击模型,加入Facebook后主要设计广告系统。每当我看到报道说最聪明的一帮人都在研究怎么让人点击广告这样的文章时,总会想到他这种牛人。
小公司很喜欢从Facebook挖人,因为Facebook出品的员工对产品理解深刻,对技术有追求。Facebook的员工相对而言比较喜欢跳槽,因为当初,他们也是从别的大公司跳来Facebook的。
Facebook的员工能给公司带来很多宝贵的经验,就拿Airbnb的XT老师来说吧,他是从Facebook几经转折过去的。当时Airbnb在尝试如何使用机器学习来做搜索排序,推荐排序等问题,但是学出来的模型一直比不过手调的模型。XT老师去看了不到一周,就找到数据当中存在的问题,之后这模型效果就节节高。
我很少听说Facebook有什么偷懒的程序员,但是不成熟的确实不少。
Facebook的员工平均年龄只有28岁,和你我一样,虽然有几年工作经验但是基础却不扎实,这也部分造成了move fast的时候难免break things。有的人进入Facebook几年训练,还是和毕业生处于差不多水平,一直忙于维护系统或把某功能实现的后台由A转移到B,没有受到比较大的挑战。还有人悄悄反应,现在员工之所以这么拼命,部分原因是前人搭建的系统比较难以维护。所以新的公司口号变成了work hard and get fired。
大部分码农都幻想自己在2008年那时候能加入Facebook,现在错过了只能等一等看看下一个Facebook在哪里。如果能挖到不那么浮躁的Facebook程序员,写程序比别人稳定一点,那你是幸运的。Facebook年轻人多,干活拼,但是说到竞争可能还是比不过老大哥Amazon。
3
Amazon
白浪分吴国,青山隔楚天!
Amazon的职场我只有听故事才能听到,扁平的结构加上自上而下的项目管理,员工工作风格让我想到了中国高考,开发,监控和维护,多手都要抓,多手都要硬。
这家公司成立时间最久,到现在都23岁了。他们主攻电子商务领域和云服务,和其他两大巨头专做广告的策略很不同。如果说世界上最聪明的人都在忙着让你怎么点击广告,那Amazon就在一直研究怎么让你买得放心、用得舒心。
Amazon做项目非常追求质量,他们没有测试和运维的工程师,有的只有软件工程师。这些工程师自己做开发,自己写测试,自己来维护。经过这么一训练,工程师就变得和三国中的东吴士兵一样,水路两栖。
Amazon有不少牛人,他们设计了S3,设计了Dynamo,设计了独有的推荐算法还有Deep Scalable Sparse Tensor Network Engine。但是说到公司最出名的工程师,当属他们的创始人——Jeff Bezos。
Bezos在美国普林斯顿大学获得电气工程和计算机科学学士学位,工程师出身的领导有着自己对产品特有的要求和理想。
为了避免员工将问题简单化、鼓励他们多思考,他禁止员工用幻灯片演示内容,要求员工每次都填写6页的方案报道。放到程序里也可以理解为放慢速度,提高质量,从写文档设计就开始想这个程序在什么情况下会出错,并且订正他——否则,你就要在凌晨爬起来改。
另外,做工程师出生的老板更加相信人们互相竞争对产品的重要性——他设计了扁平化的管理结构:大多数人都在同一个level上,可以相互竞争而不用在意政治因素。
其次,他鼓励量化一切。这给竞争带来了统一的衡量标准,减少了人为干预和不公平事件的发生。
Amazon的各项规范,令Amazon的单兵作战能力大幅增强,同一个工程师可以从前端做到后端,同时还负责运营,他们推广的AWS被众多创业公司采用,也给他们工程师跳槽做了垫脚石。
于是乎,坊间有传闻,从Amazon挖人,挖的容易,用的放心。但是有的时候Amazon也会跳出这么一类人,他们擅长作演讲,把简单的东西做复杂,最求perfect over progress但是却达不到。
见过一个从Amazon出来的工程师,最初头衔不高,但是很会说。每次做演讲前就从分布式系统各项理论开始聊起,从CAP到不同的consistency模型,从paxos都raft,从machine learning到risk analysis,好像要各种东西都了解一些才能往下继续进行。
但是就好像中国球星到了英超,平日里不出脚,一出脚就露馅了。设计的系统为了满足各项理论特性,极其复杂,处理一个请求短则几秒钟,长则几分钟。你还真别说,这样设计出来的系统对团队帮助很大,留给新手很多需要实现并且做优化的机会。
Amazon的文化,造就了创业公司的预备役,这些人往往怀揣一身EC2和S3的本领。但也有不少打肿脸充胖子,凭借6张纸换得一个好职称的嘴炮程序员。
其实说这么多,就是想让大家明白,名校,名公司都只是一层壳,想给自己的公司挖来几个牛人,要看到那些真正solid的程序员,不要进了别人的圈套。这些小故事,说不定你我都曾遇到过;如果你是个求职者,或许这也将是你要经历的故事。但这些事情,都只可意会,不可言传。
你懂就好,就好。但是我还是有一句要唠叨,可不要因为这篇文章里提到Google,Facebook里有那么一两个没学好的就开始腹诽这些公司。
你也许感兴趣的:
- 快一年才发现新来的程序员全靠谷歌搜索混过面试和解决问题,这是哪里出了纰漏?
- 停止社招后,任正非签署华为新招聘方式
- Stack Overflow COO:如何招聘并留住高质量的技术型人才?
- 我的初创公司在招聘程序员时,发生的一些事儿
- 龙泉寺的IT招聘信息,看完整个人不好啦
- 优秀开发者在哪儿
- 谷歌招聘程序员看重的是这些
- 招程序员的最佳方式是这样的?
- 我是一个不喜欢智力题的程序员,这有问题吗?
- 技术负责人在创业进阶中如何蜕变?
你对本文的反应是: