www.paypal.com v CTO是如何招到最顶尖工程师的

百度分布式交互查询平台——PINGO架构迭代
PINGO是一个由百度大数据部与百度美国研发中心合作而成的分布式交换查询平台。在PINGO之前,百度的大数据查询作业主要由基于Hive的百度QueryEngine去完成。QueryEngine很好的支持着百度的离线计算任务,可是它对交互式的在线计算任务支持并不好。为了更好的支持交互式任务,我们在大约一年前设计了基于SparkSQL与Tachyon的PINGO的雏形。在过去一年中, 通过跟不同业务的结合,PINGO逐渐的演变成一套成熟高效的交互式查询系统。本文将详细介绍PINGO的架构迭代过程以及性能评估。QueryEngine是基于Hive的百度内部的大数据查询平台,这套系统在过去几年中较好的支撑了百度的相关业务。 图1展示了QueryEngine的架构图,其服务入口叫做Magi。用户向Magi提交查询请求, Magi为这次请求分配一个执行机, 执行机会调用Hive读取Meta信息并向Hadoop队列提交任务. 在这一过程中, 用户需要自行提供计算需要的队列资源。随着近几年对大数据平台的要求越来越高, 我们在使用QueryEngine过程中也发现了一些问题:首先QueryEngine需要由用户提供计算资源, 这使得数据仓库的用户需要去了解Hadoop以及相关的管理流程, 这增加了用户使用数据的门槛。 第二, 对于很多小型计算任务而言, MR的任务的起动时间也较长, 往往用户的计算任务只需要1分钟, 但是排队/提交任务就需要超过一分钟甚至更长的时间。这样的结果是,QueryEngine虽然很好的支持线下执行时间长的任务,但是对线上的一些交换式查询任务(要求延时在一到两分钟内)确是无能为力。图1: Query Engine 的执行流程为了解决这些问题, 在大约一年前,我们尝试在离线计算的技术栈上搭建起一套具有在线服务属性的SQL计算服务 PINGO。如图2所示: PINGO使用了SparkSQL为主要的执行引擎, 主要是因为Spark具有下面的特点:内存计算:Spark以RDD形式把许多数据存放在内存中,尽量减少落盘,从而提升了计算性能。可常驻服务:Spark可以帮助实现常驻式的计算服务, 而传统的Hadoop做不到这一点。常驻式的计算服务有助于降低数据查询服务的响应延迟。机器学习支持:对于数据仓库的使用, 不应仅仅局限于SQL类的统计任务。 Spark的机器学习库可以帮助我们将来扩展数据仓库, 提供的交互式的数据挖掘功能。计算功能多元:虽然PINGO是一个查询服务, 不过仍然有其他类型的计算需求, 如数据预处理等。 使用Spark可以使我们用一个计算引擎完成所有的任务, 简化系统的设计。图2: PINGO初版系统架构设计在过去一年中,PINGO从一个雏形开始,通过跟不同业务的结合,逐渐的演变成一套成熟高效的系统。中间经历过几次的架构演变,在本章中,我们将详细介绍PINGO的迭代过程。PINGO 1.0PINGO初版的目标是提升性能,让其能支持交互式查询的任务。由于Spark是基于内存的计算引擎,相对于Hive有一定的性能优势, 所以第一步我们选择使用Spark SQL。为求简单,最初的服务是搭建在Spark Standalone集群上的。我们知道, Spark在Standalone模式下是不支持资源伸缩的, 一个Spark Application在启动的时候会根据配置获取计算资源。 这时就算一个查询请求只有一个Task还在运行, 该Application所占用的所有资源都不能释放。好在一个Spark Application可以同时运行多个Job, 每个Job都能够’平分’其所占用的计算资源。图3: PINGO 1.0 系统架构基于上面的考虑, 如图3所示,我们利用Spark的Standalone集群搭建了第一版PINGO服务. 我们的主服务节点叫做Operation Manager, 它本身也是一个Spark Driver。所有用户的请求都会从Magi Service发送到Magi Worker, 再由Magi Worker分配给Operation Manager, 通过Operation Manager在Spark集群上执行。PINGO 1.1通过PINGO 1.0, 我们把数据仓库的计算引擎从Hive/MR转变成了Spark。 不过, 单纯的替换计算引擎, 也许可以把查询的性能提升1-2倍, 但是并不会使查询的速度有数量级上的提高. 想要从本质上提高查询速度, 我们还需要改进存储。对此我们设计了PINGO 1.1, 加入了以Tachyon为载体的缓存系统,并在缓存层上搭建了缓存管理系统ViewManager, 进一步提升系统性能。很多快速的查询系统都将Parquet之类列存储格式和分布式KeyValue存储引擎结合起来, 通过建立索引/物化视图等手段加速SQL查询的速度. 通过将部分查询条件下推到存储引擎, 某些SQL查询语句甚至可以被提速至100倍以上。然而我们的数据都存储在旧版本的Hive数据仓库中, 文件系统被限定为HDFS, 数据格式一般为低版本的ORC File, 也有不少表是ORCFile或者文本。 因为迁移成本/数据上下游依赖等兼容性等原因, 我们没有办法更改Hive数据仓库本身的存储。不过根据局部性原理, 任何数据访问都有热点. 我们可以建立缓存系统, 在缓存系统中应用最新的文件系统和存储格式. 通过把热点输入通过预加载的方式导入到缓存系统, 我们可以加速整个系统的访问性能.为此, 我们设计了以下的系统架构:图4: PINGO 1.1 系统架构在这个架构中, 我们引入了一个新模块 ViewManager, 该模块负责管理缓存系统。 它的主要功能是识别热点数据, 将数据导入到缓存系统中, 并在查询时改变SQL的执行过程, 使得Spark从缓存而不是原始位置读取数据。在这个架构下,当一个Query进来时,会先向OperationManager请求。当接受到请求后,OperationManager会向ViewManager查询数据是否已经在缓存中。如果已经在缓存,数据将被直接返回给用户, Query完成。如果数据不在缓存中,OperationManager会向底层Data Warehouse发起请求, 等数据到达时返回給用户。同时,ViewManager也会向底层Data Warehouse发起请求, 等数据到达时建立一个Cache Entry, 这样的话下次同样Query进来时,就会从缓存读数据。注意这里我们OperationManager与ViewManager对会向底层Data Warehouse的数据读取是两个独立的STREAM, 这样保证两者不会互相干扰。那PINGO又是如何动态去读取缓存中或者底层Data Warehouse的数据的呢?毕竟在Query Plan中,数据地址是写死的。 为了能够让缓存对用户透明, 我们在SparkSQL上做了一些改进, 如下图所述图5: PINGO1.1 对SparkSQL的改进Spark中利用Catalyst框架来执行SQL语句。 对于Catalyst框架来说, 其输入是Unresolved Logical Plan, 这可以简单理解为SQL语句的结构化描述。 Catalyst调用Catalog来向MetaService查询表的元数据, Catalog返回MetastoreRelation来代表Hive表, 其中含有读取该表的所有必要信息,以便后续的解析和优化。 而在执行时, Catalyst会把MetastoreRelation转化为HiveTableScan, 来完成对数据的读取。为了实现对缓存的透明利用, 我们在其中两个地方了做了扩展。 首先我们在Catalog中为我们缓存的表返回CachableRelation来代替MetastoreRelation。 而在将LogicalPlan转变为真正执行的PhysicalPlan时, 我们会把CachableRelation翻译为两种TableScan的Union, 一个针对那些被缓存住的数据, 另外一个针对那些没有被缓存住的数据。通过这种方式, 我们能够做到在用户不感知的情况下, 完成对数据仓库存储层的替换和优化。 目前我们做的仅仅是改变存储的文件系统和格式, 将来也会将同样的实现思路应用到索引和物化视图上。PINGO 1.2PINGO 1.1服务很好的提高了系统性能, 但是在运营了一段时间之后, 我们逐渐感觉到Spark的集群管理问题正在成为整个系统的瓶颈。这具体表现在两个方面我们的整个服务其实是一个Spark Application, 服务的主节点同时是Spark的Driver。 而我们知道, Spark并不以高可靠性见长, 我们在实践中也发现把所有的计算压力放到单个Spark Application容易导致比较严重的GC问题和负载问题。 而当Spark出问题需要重启的时候, 我们的整个服务也就暂停了。单一Spark集群的架构无法适应多机房的基础设施。 百度内部的离线集群规模还是很大的, 机房分布在全国的多个地区。 这样, 我们的服务能够获取的资源往往来自多个机房, 而多个机房的机器是不适合组成一个Spark集群的。 另外, 当集群读取其他机房的数据时, 带宽往往成为整个计算任务的瓶颈。发现这些问题是好事,说明系统已经逐渐成熟,开始往怎么更好的运维的方向发展了。 为了解决上面的问题, 我们对系统进行了进一步的迭代. 迭代后的架构如下图所示:图6: PINGO 1.2 系统架构在这一版架构中, 我们将PINGO的服务和调度功能独立出来, 与真正执行计算的部分剥离。 支持了单一查询入口PinoMaster进行调度, 多个集群Pingo Applicatoin执行计算的多集群功能。 PingoMaster同时维护多个Spark Application。 当一个Query到来时, 我们会根据集群的归属/存储的位置选择一个最优的Application执行任务。 另外, 这一版本的PINGO还支持在yarn集群上起动Application。 百度内部有自己的资源管理系统, 提供了和yarn兼容的接口. 通过迁移PINGO服务到yarn上避免了原本Standalone版本需要的很多运维工作, 并且可以通过定期重启Application来解决Spark的可靠性问题。为了能够在PINGO中实现更好的调度策略, 我们也对Spark SQL进行了深度扩展。图7: PINGO1.2 对SparkSQL的改进当Pingo收到一个Query后, 我们在Master端就完成对这条Query的分析和部分优化, 并将这些信息保存到QueryContext中。 当SQL在Application端真正执行的时候, 我们从Master端而不是Meta端拿到执行所需要的信息. 这样做的好处是可以在根据Query的内容来做出调度. 基于这个执行流程, 目前我们开发了两个比较有效的调度策略:根据数据的存储位置进行调度。 因为我们在Master端就能够知道Query所需数据的存储位置, 所以可以选择合适的PingoApplication来执行这条Query。根据数据量大小进行调度. 如上文所说, 一个Spark Aplication可以支持同时运行多个Job, 但是在很多大型的Job同时运行在一个Application又会造成FullGC等稳定性问题. 我们会根据Query输入量的大小, 为大型Query单独启动Application, 而让小Query复用同一个Application。 这样的好处是对于多数的小Query , 我们节省了起动Application的开销, 而又避免了大Query造成的稳定性问题。在上一章中,我们详细介绍了PINGO架构的迭代,在本章中,我们重点看一下PINGO的性能。如图8所示,首先我们对比了使用Hive以及使用Spark作为计算引擎的性能。 这里的Benchmark选取的Query是百度内部交互式数据分析的典型负载, 主要是Join/Aggregate等操作, 输入的数据量从100M到2T左右.我们可以看到, Spark相比Hive有较大的性能优势。在比较大比较复杂的Query中, Spark取得了2到3倍的加速比。注意在这个对比中,内存资源有限,用的是64GB内存的机器,很多Spark的数据被迫落盘, 如果有更多内存,加速比会更高。图8: Query执行时间: Hive vs. Spark下一步我们了解一下加了缓存后的性能, 在这个实验中,我们使用了192GB的机器,有更多的内存去支持缓存以及内存计算。如图9所示,在这个环境下,使用Spark相对于Hive有大概5到7倍的提速。 在加入了Tachyon后,相对于Hive无缓存的情况有30到50倍的提速。我们相信在未来的几年内,内存价格会大幅降低,内存计算会变成主流,所以使用内存做缓存是一个正确的方向。图9: 缓存性能提高PINGO服务目前被应用在交互式查询场景中, 旨在为PM和RD提供快速的数据分析服务。 图10展示了在同样的计算资源下, 在生产环境使用PINGO前后的Query执行时间分布图。注意,在这个生产环境中,我们用的是64GB内存的机器, 为了提供足够的缓存空间,我们使用了Tachyon的Tiered Storage功能,让缓存分布在内存以及本地磁盘中。 我们可以看到, 在传统的基于Hive+MR的服务模式下, 只有1%左右的Query能够在两分钟内完成. 而采用了基于Spark的PINGO服务, 有50%+的Query可以在两分钟内执行完成。 能够取得这样的加速效果, 部分原因是Spark本身的执行效率比Hive要高一些。这个本身还有很大的优化空间,比如如果我们使用内存缓存的话,执行时间可以轻易的压缩到30秒内。图10: Query执行时间: Hive vs. PINGO经过过去一年的迭代与发展,PINGO已经很好的支持了百度内部的交互式查询业务。通过PINGO,很多查询的延时从以前的30到40分钟,降低到了2分钟以内,很大的提高了查询者的工作效率。今后PINGO的发展将朝着更好用,已经更快两个方向发展。为了让PINGO更好用,我们正在PINGO之上开发UI, 让用户与图形界面交互(而不是通过输入SQL Query)就能轻易的查询到想要的数据。为了让PINGO更快,更有交互性,我们希望可以把90%以上的Query 时间降低到30秒以下。第一步就是要扩大我们的Cache的覆盖率与性能,设计出更好的缓存预取以及缓存替换机制,并且加速Cache读取的延时。第二步,我们也通过硬件加速的方法使用FPGA加速某些常用的SQL Operator。就在最近,我们对SQL的JOIN Operator进行了FPGA硬件加速,相对CPU取得了3倍的加速比。我们也会很快把这项技术使用到PINGO上。责编:钱曙光,关注架构和算法领域,寻求报道或者投稿请发邮件,另有「CSDN 高级架构师群」,内有诸多知名互联网公司的大牛架构师,欢迎架构师加微信qshuguang2008申请入群,备注姓名+公司+职位。&版权声明:本文为《程序员》原创文章,未经允许不得转载,订阅2016年程序员请访问 .cn想了解IT产品研发背后的那些人、技术和故事,请关注CSDN(资讯)微信公众号:CSDNnews为你推送和解读最前沿、最有料的科技创投资讯
36Kr股权投资
汇集行业内最优质创业项目的股权投资平台
聚集15家顶级投资机构的专业互联网融资平台
聚集全球最优秀的创业者,项目融资率接近97%,领跑行业中国领先的IT技术网站
51CTO旗下网站
专访APICloudCTO邹达:被逼出来的全栈工程师
移动互联网时代,APP就像一座巨大的金矿,除了听到无数的尖叫和呐喊。更多的是,“我已经有了改变世界的想法,就差一个APP了。”在这个CTO稀缺的时代,无数创业者死在了通往通往金矿的路上,除了卡顿、闪退等性能问题外,更大的问题在于―漫长的开发周期
作者:陈庆翔来源:51CTO| 10:03
移动互联网时代,APP就像一座巨大的金矿,除了听到无数的尖叫和呐喊。更多的是,&我已经有了改变世界的想法,就差一个APP了。&在这个CTO稀缺的时代,无数创业者死在了通往通往金矿的路上,除了卡顿、闪退等性能问题外,更大的问题在于&漫长的开发周期
APICloud邹达告诉记者:&如果某一款APP开发只需要一个Android和iOS的程序员花上一个月的时间,那么用APICloud只需要一个星期就够了。&
APICloud作为一款云端一体的开发工具旨在解决两个问题,首先是开发效率问题.邹达告诉记者:&在APP兴起之初,他就曾经帮助朋友做过APP开发,一个项目的周期是两到三个月,而每一次做完的东西在第二个项目却没有办法复用。
其次就是跨平台的问题,在跨平台方面H5的方式虽然方便快速,但是性能问题始终是过不去的坎。在理论上用APICloud开发出来的APP与原生的没有任何差别,我们希望未来在世界范围内我们平台是做的最快、最好的-&邹达对记者说。
做十年技术,还是一项技术做十年?
当记者问到这个问题是时邹达没有丝毫犹豫的说:&当然是后者,而我所理解的技术,不仅仅的是一项技术,而是一个方向。之所以能够一项技术做十年,是因为这项技术本身有潜力,随着技术的发展,自己也得到提升。
在笔者看来,相比于&十年技术,还是技术十年&最重要的问题在于选择什么样的技术。邹达也同样认为:&在2006年的时候还是飞利浦、诺基亚的时代,很多人都羡慕能做手机的人,但真正进去之后发现做手机没有什么技术含量,因为系统都是固定的,大部分代码都是写好的,只能做一些简单的修改,没有一个从无到有写软件的成就感。正因为如此特别羡慕那些做软件的工程师,有一个从无到有的成就感。当时手机里可以卖钱的只有浏览器、邮件,所以为了一种成就感就去做了浏览器。
不想做全栈工程师
从做浏览器开始邹达一直专注于浏览器的开发,直到创业,邹达被逼成一名全栈工程师。
前一段时间很多开发者在知乎上讨论如何成为全栈工程师,而邹达却坦言说:&我其实不想当全栈工程师,但是没办法,逼出来的。&
在APICloud创业之初,作为CTO的邹达负责了公司一切基础设施的搭建,除了应用引擎和服务以外,服务器部署,搭建,监控,前端,&&他坦言,想做全栈工程师。我看来没有压力是不够的,人都是被逼。
邹达还提到:&&& &想成为全栈工程师除非创业,否则进入一个陌生的领域你的收入会降低许多。而且像服务器负载这类技术,在没有一定用户数量的情况下,很难达到一定的境界。许多领域内非常牛的工程师,都是公司来交学费,在负载压力很大的时候才能得到一定积累。
APP的兴起是在智能手机出现崭露头角的的2010年,邹达告诉记者:&那个时候就有朋友找他做APP有iOS也有Android。每次都要花掉几个月的休息时间。然而当下一个项目再来的时候,很多以前写过的很多相似的东西都不能复用。那个时候就在想有没有什么办法只写一次还可以重复利用?
许多优秀的项目一开始都是以解决痛点,APICloud也不例外。邹达甚至想过,哪怕这个东西做完卖不出,我还能自己用。在互联时代,APICloud用互联网的思维重新定义了移动开发。
今年2月份APICloud发布了第一款生态产品,更加关注Web开发者,不仅仅能用APICloud做出好的应用,而且可以有更多的方式去变现。在供大于求的行业,APICloud将会汇聚一大批优秀的开发者。如果APICloud有了这样一个成熟的生态链&模块开发者,服务提供商、API开发者,他们都能够通过这个平台去盈利,就是APICloud这个平台的价值,让它成为一个API开发的首选。
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条头条专题专题专题
24H热文一周话题本月最赞
讲师:5人学习过
讲师:29人学习过
讲师:5人学习过
精选博文论坛热帖下载排行
公钥基础设施PKI(Public Key Infrastructure)是利用公钥概念和加密技术为网上通信提供的符合标准的一整套安全基础平台。公钥基础设施能为...
订阅51CTO邮刊PayPal CTO是如何招到最顶尖工程师的_开源资讯_ThinkSAAS
PayPal CTO是如何招到最顶尖工程师的
21:15:06 由开源社区网友
PayPal早期团队,最后排左一是LevchinMax Levchin(PayPay黑帮中的军师)在硅谷创立和投资过多家技术型的公司,包括PayPal、Slide、Affirm等。在招人方面有他独特的一套,结果是有目共睹的。在这次First Round CEO Summit采访中,Levchin分享了他的招人理念。如果犹豫,就不要犹豫早期员工的招聘可以说是创始人最重要的事了,这些人形成了公司的文化和远景,并且很难改变。在PayPal时,Levchin在招人方面极其严格,尽量避免犯错。在招聘流程上,如果团队里有一个人对候选人不满意,他们就不发offer。Levchin分享到:“有些传闻是说我拒掉某些候选人仅仅是因为他们在面试中用词不当。。。,我承认我们这么做可能会漏掉一些好苗子,但我们从不把差的招进来。”宁肯漏掉一个超级明星,也好过招进来一个毁掉公司的人。正如电影《浪人》中的台词,“如果犹豫,就不要犹豫”。招聘伟大员工的技巧Levchin和他的早期团队只招聘认识的人,这样就不需要花费大量的时间做痛苦的抉择了。前10个工程师来自于Levchin所在的伊利诺伊大学,前5个商务员工来自于Peter Thiel(PayPal黑帮教父)所在的斯坦福大学。严格的面试和LinkedIn(PayPal比LinkedIn成立的早)上的介绍是一种好的人才筛选方式,但万无一失的方式还是招聘那些共事多年,确认很牛逼的人。直觉来说,你可能觉得不可能通过自己的关系网组建一个完整的团队。有时确实是这样,但Levchin的经验是,几乎每个人都有比他们自己所能想象的更多的优秀人选。真正的挑战在于,大多数的创始人不认为自己能够把那些天才员工吸引到团队中来。Levchin老早就认识到不要犯这一错误。PayPal刚成立时,他坐下来并创建了一个想要招聘的潜在工程师清单。如果搞定一个,就把他的名字写下来。Levchin重复着这一过程。“Peter Thiel让我坐下来并写下我认识的每个聪明人,这个清单大概有30个人名,结果我们招来了其中的24个。”不要因为你觉得吸引不过来,就不把这人放在候选列表。“我们强迫团队里的每个人写下他们所认识的聪明的人,他们确信这些人不会来。我们像女鬼一样站在候选人身后,最终逼他们就范(加入PayPal)。”思路不一致会拖慢进度对于初创公司,速度是最有力的武器。总是有大公司拥有更多的工程师、设计师、分发渠道和其它资源。但只要你速度够快,你可以更早胜出,这是你的竞争优势。问题就是:创业公司如何跑的更快?我们都知道单打独斗是最有效的方式了,这样可以减少沟通的代价,不用花时间让大家思路一致,不用为公司的愿景而争论不休。毕竟,你只要说服你自己。然而,绝大多数的产品都复杂到除非建个团队才能搞定,保持速度的关键就是团队小而精。一般情况,思路不一致会大大拖慢团队的速度。“如果你的团队来自5个不同的计算机院校,其中一组喜欢Java,另一组喜欢PHP,还有一组觉得PHP很垃圾,Python才是最优雅的,这时你就只用争论不用干活了。”如果一个团队需要浪费一天时间来讨论到底选用哪个Python版本,那就不可能快得了。不是说Python的版本不重要,而是在创业早期最正确的工具显然没有最适合团队的工具来的必要,用的熟是第一位的。当然,思路不一致在公司大了之后是很有用的。“当你切入一个未知的新领域,你又没有相关的背景,这个时候就需要不同视角的人一起和你讨论。这时,多种思路就非常有必要了。”听起来很简单,但把握这个平衡点很难。让公司与众不同Levchin发现那些最顶尖的工程师总是希望在工作和面试过程中被挑战。“我们塑造一种很难进入的形象。这样甚至导致很难找到能够面试的人,我们宣称PayPal的门都很难进入。我们要求候选人有190的智商,加上顶级的编码能力,外加其它五项要求。那些最聪明的人看到之后会说,‘挺有挑战,我想去面试一下,向那些平庸之辈证明我更牛逼一点。’当然,面试结束时,我会说‘也许你想要一个offer,你太优秀了。’”。原文:作者:桑文锋,Sensors Data创始人&CEO,前百度大数据部技术经理。2007毕业于浙江大学计算机系,毕业后加入百度并负责组建并带领团队,从零实现了百度用户日志的大数据平台。2015年4月从百度离职创业,目前做一款针对互联网创业公司的数据分析产品Sensors Analytics(神策分析),致立于通过大数据技术助力客户成为数据驱动的公司。
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信PayPal CTO是如何招到最顶尖工程师的-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
PayPal CTO是如何招到最顶尖工程师的
来源:互联网 更新时间: 16:05:13 责任编辑:李志喜字体:
PayPal早期团队,最后排左一是LevchinMax Levchin(PayPay黑帮中的军师)在硅谷创立和投资过多家技术型的公司,包括PayPal、Slide、Affirm等。在招人方面有他独特的一套,结果是有目共睹的。在这次First Round CEO Summit采访中,Levchin分享了他的招人理念。如果犹豫,就不要犹豫早期员工的招聘可以说是创始人最重要的事了,这些人形成了公司的文化和远景,并且很难改变。在PayPal时,Levchin在招人方面极其严格,尽量避免犯错。在招聘流程上,如果团队里有一个人对候选人不满意,他们就不发offer。Levchin分享到:“有些传闻是说我拒掉某些候选人仅仅是因为他们在面试中用词不当。。。,我承认我们这么做可能会漏掉一些好苗子,但我们从不把差的招进来。”宁肯漏掉一个超级明星,也好过招进来一个毁掉公司的人。正如电影《浪人》中的台词,“如果犹豫,就不要犹豫”。招聘伟大员工的技巧Levchin和他的早期团队只招聘认识的人,这样就不需要花费大量的时间做痛苦的抉择了。前10个工程师来自于Levchin所在的伊利诺伊大学,前5个商务员工来自于Peter Thiel(PayPal黑帮教父)所在的斯坦福大学。严格的面试和LinkedIn(PayPal比LinkedIn成立的早)上的介绍是一种好的人才筛选方式,但万无一失的方式还是招聘那些共事多年,确认很牛逼的人。直觉来说,你可能觉得不可能通过自己的关系网组建一个完整的团队。有时确实是这样,但Levchin的经验是,几乎每个人都有比他们自己所能想象的更多的优秀人选。真正的挑战在于,大多数的创始人不认为自己能够把那些天才员工吸引到团队中来。Levchin老早就认识到不要犯这一错误。PayPal刚成立时,他坐下来并创建了一个想要招聘的潜在工程师清单。如果搞定一个,就把他的名字写下来。Levchin重复着这一过程。“Peter Thiel让我坐下来并写下我认识的每个聪明人,这个清单大概有30个人名,结果我们招来了其中的24个。”不要因为你觉得吸引不过来,就不把这人放在候选列表。“我们强迫团队里的每个人写下他们所认识的聪明的人,他们确信这些人不会来。我们像女鬼一样站在候选人身后,最终逼他们就范(加入PayPal)。”思路不一致会拖慢进度对于初创公司,速度是最有力的武器。总是有大公司拥有更多的工程师、设计师、分发渠道和其它资源。但只要你速度够快,你可以更早胜出,这是你的竞争优势。问题就是:创业公司如何跑的更快?我们都知道单打独斗是最有效的方式了,这样可以减少沟通的代价,不用花时间让大家思路一致,不用为公司的愿景而争论不休。毕竟,你只要说服你自己。然而,绝大多数的产品都复杂到除非建个团队才能搞定,保持速度的关键就是团队小而精。一般情况,思路不一致会大大拖慢团队的速度。“如果你的团队来自5个不同的计算机院校,其中一组喜欢Java,另一组喜欢PHP,还有一组觉得PHP很垃圾,Python才是最优雅的,这时你就只用争论不用干活了。”如果一个团队需要浪费一天时间来讨论到底选用哪个Python版本,那就不可能快得了。不是说Python的版本不重要,而是在创业早期最正确的工具显然没有最适合团队的工具来的必要,用的熟是第一位的。当然,思路不一致在公司大了之后是很有用的。“当你切入一个未知的新领域,你又没有相关的背景,这个时候就需要不同视角的人一起和你讨论。这时,多种思路就非常有必要了。”听起来很简单,但把握这个平衡点很难。让公司与众不同Levchin发现那些最顶尖的工程师总是希望在工作和面试过程中被挑战。“我们塑造一种很难进入的形象。这样甚至导致很难找到能够面试的人,我们宣称PayPal的门都很难进入。我们要求候选人有190的智商,加上顶级的编码能力,外加其它五项要求。那些最聪明的人看到之后会说,‘挺有挑战,我想去面试一下,向那些平庸之辈证明我更牛逼一点。’当然,面试结束时,我会说‘也许你想要一个offer,你太优秀了。’”。原文:The Trick Max Levchin Used to Hire the Best Engineers at PayPal 作者:桑文锋,Sensors Data创始人&CEO,前百度大数据部技术经理。2007毕业于浙江大学计算机系,毕业后加入百度并负责组建并带领团队,从零实现了百度用户日志的大数据平台。2015年4月从百度离职创业,目前做一款针对互联网创业公司的数据分析产品Sensors Analytics(神策分析),致立于通过大数据技术助力客户成为数据驱动的公司。
相关文章:
<a href="/cse/search?q=<inputclass="s-btn"type="submit"text="<inputclass="s-btn"type="submit"text="<buttonhidefocusclass="s-btnjs-ask-btn"text="我要提问
<a href="/cse/search?q=

我要回帖

更多关于 paypal手续费 的文章

 

随机推荐