`
iamzhongyong
  • 浏览: 796693 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

我读《打造Facebook》

 
阅读更多


在写之前,先鄙视一下当当的搜索,当初获得王淮将于12月底上市这本书的时候,提前在当当上面搜索,但是输入“facebook”的时候,出来的结果是一些其他的书,并没有这一本,失望的走了,陆续关注过好几次,都没有结果,后来一想,是不是大小写问题?然后就输入“Facebook”,果然,结果这本书就出来了,然后果断下单。

         整本书看下来,写的很实在,王淮的微博很早就关注了,觉得人很实在,难道做技术出身的都挺实在?呵呵。不过这本书的话纸张利用率真不敢恭维啊,有很多空白的区域。比较感兴趣的章节是第二章“打进Facbook”,第四章“Facebook的黑客文化”,第六章“Facebook的产品技术流程”,其余的也略看了一下。​

         书中对我影响最大的一句话就是“If you fail to prepare,prepare to fail”。

         Facebook的招聘准则:只和最好的人合作

全部都是由一流人才组成的团队有很多好处,通过完成艰巨的任务,人才之间互设榜样,互相学习,这样的团队战斗力极强。

如何才能招聘到一流的人才呢?慢点招人,其次就是炒鱿鱼的话要快。咋找到一流人才呢?内部推荐,很好的途径,也是目前我们公司比较鼓励的一种方式,如果推荐成功还有奖励的哦呵呵,不管是对公司还是对于应聘者,有人推荐作为桥梁,对于彼此互相了解帮助很大。另外一种快速获得人才的途径就是收购。

第三章中描述的新兵训练营,看着比较带劲,因为当时入职淘宝的时候差不多,当时入职的时候有“百淘”,为期一周,用来了解公司的文化以及制度,然后同一批入职的同事相互了解,为以后可能的合作奠定了基础,然后还有“百技”,为期两周,了解公司的技术架构体系以及工作要配置的环境等。这些对于新人快速融入公司帮助还是很大的,否则,零散的了解和学习,可能融入的要慢一些了,这样对公司的效率提升也不太好。当时让自己比较不爽的是师兄的水平参差不齐,有的师兄比较负责,各方面帮助很大,有的则不是很负责,这一点觉得和Facebook中的导师还是有点差距的。

黑客文化是Facebook的核心理念

看到这一章,一点也不例外,因为CEO是高技术出身的呵呵。

“为了建设一家强大的企业,我们努力将Facebook打造成优秀人才施展才华的最佳平台,以期待对世界施加重大影响,我们打造了企业文化和管理方式我们称之为黑客之道”。

1、黑客文化是一种持续改进和衍变创新的做事方法;

2、黑客们迅速的发布小规模的更新,从中吸取经验教训,而不是试图一蹴而就,一劳永逸,希望通过长久努力来提供最佳服务(这一点我觉得自身需要反省,做东西,写代码没有可能一劳永逸,都是持久的关注,持久的优化,在努力中提供最好的服务);

3、黑客意味着一种亲身实践、积极进取的天然规律,在Facebook的办公室里面,黑客们的口头禅是“代码胜于雄辩”(公司里面的一些水货专家的确让人反感,经常把理论挂在嘴边,然后写不了代码,ppt倒是做的不错,开会讨论虚的东西,比谁说的都多);

4、黑客意味着极度的开放和精英为王;

上面这四点,的确打破了我之前对于黑客的理解,对于以下,觉得自己差距很大,以后做事情,需要更加投入,更加“黑客”一点了。

工程师驱动的文化

Facebook对于工程师的要求如此之高,那肯定干活也不一样吧?呵呵,那是当然,在Facebook,工程师被认为是公司发展的驱动力。工程师不见得所有的时间都花在写代码上面,有很多时候用于思考、设计和跟产品经理的合作这些事情上面。在淘宝的这两年多时间里面,作为工程师,自己驱动过一些事情,但觉得还是少啊,为啥呢?可能公司的文化没有很明确的说工程师驱动,要去驱动一些事情,那只有靠自己的积极了,要不然就是工具,就是写代码的。

产品开发的三个准则

1、迅速开发,在进行监测;

2、坦然面对不确定性(这个时候就考验工程师和不确定性打交道的能力了);

3、不追求极致,应在不断的发布以期达到目标;

工具

文中提到Facebook的工具相当之多,其实工具本身不是生产力,工具能够带来的是效率的提升,间接会创造很多价值。其实淘宝的很多工具我觉得也是很给力的,这里就啰嗦一下。在新入职的时候,需要在电脑上面安装各种各样的开发工具,是不是很费劲?公司一位大牛,搞了个“一键安装”,只需要下载这个exe文件,就能把所需要的环境全部搞定,省事省力呵呵。在代码方面,分支的申请、审批、合并全部自动化,在网页上面点几下就能完成,同时如果在发布前,还会自动触发,去扫描代码中是否有安全问题。然后是发布,报打好之后,设定发布的时间点,然后确认,那就会在时间点到的时候自动发布。监控工具也很多,系统层面,JVM 层面,应用层面,接入十分方便,使我们这批开发能够把更多的精力放在核心的地方。

Facebook产品的开发流程

一、描绘远景,设置目标

对于远景的思考,主要围绕三点

1、为什么设这个目标,而不是另外一个目标?

2、在做一件事情之前,脑子里面应该有这件事情完成后的大体效果。

3、我们计划做些什么来实现这个远景?

那,如何设定目标?Facebook有“SMART”原则

S-非常详细的计划,你的目标必须被清晰定义,无法被混淆或者误解;

M-目标是能够衡量的;

A-有难度有挑战的;

R-现实的;

T-要有实现期限;

二、收集想法,并排出优先级

三、跨团队沟通

最重要的目的就是计划执行的时候,出现“意外惊喜”

四、告知所有可能关心的人

五、设计产品

为了是项目尽可能的达到高起点,会有产品预览和技术预览,这些可能就是我们平时说的原型吧,对比原型来将东西,大家理解起来会比较直观呵呵。

A、不要过度设计,用几个核心的功能点来测试你的产品概念,看看有没有触动用户的痛点,不能强求功能越多越好;

B、产品越简单越好,但并不意味着简陋;

C、对于自己做出来的产品,你必须是他的用户;

D、产品要确实有用,主要流程尽可能流畅;

E、不追求完美;

六、指定项目负责人

七、定期碰头会(这个我们在开发的时候,重大的项目会这样去做,在进入开发或者进入测试阶段的时候,会有晨会来沟通大家在项目中遇到的问题或者风险)

 八、了解进度,汇总报告

这些貌似我们的开发流程差不多,可能差别在于执行上吧。


 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics