王淮的《打造Facebook》一书不厚,花半天时间轻松读完。书中没有大段的说教,只有近乎流水的陈述。正如作者所说,打造Facebook这本书由巴克伯格来写再合适不过。可惜他至少在近几年内没有这个打算。而王淮作为加入Facebook最早的员工之一,以工程师角度描述的视角恐怕更适合我们。

  • 战略眼光很重要。在Facebook聚合了大量的用户以后,马克伯格在最早的时间决定将Facebook打造成为一个对外开放的开发平台,可以由第三方开发者基于Facebook的API来开发应用。这样极大的激发了开发者的热情,平台上的优秀应用层出不穷,又反过来吸引了更多的用户。环顾今日,淘宝、腾讯等国内大公司基本都是这样的套路。硅谷不愧是科技公司的标杆。

  • 学习能力体现在你的坚持上,而不是你的聪明上。马克伯格每年都会给自己制定挑战目标。这些挑战目标有的是加强自己某一方面技能,有的则是纯粹的磨练自己。比如09年坚持每天打领带,10年坚持学中文,11年坚持支持自己宰杀的动物,12年坚持每天写代码……马克伯格的学习能力强,不是由于他聪明,而是由于他能够坚持。

  • 招人只招优秀的,宁缺毋滥。这句话每个公司的HR都懂,但是能得到彻底贯彻的公司少之又少。优秀的人才本来就少,每个公司都抢着要,总有一些公司是抢不到的。Facebook作为创业公司一开始就坚持这样的策略,无疑是它能够持续壮大的重要原因之一。因为巴克伯格深切的知道优秀的工程师意味着什么。优秀的工程师更容易被委以重任;完成任务后可以相互标榜;一流人才喜欢互相挑战,并且互相学习。古往今来,几乎每个杰出的人才身边都有优秀的人相伴,爱迪生身边有特斯拉,图灵有秋奇作为对手……

  • 留人靠的不是忠诚度忽悠,而是公司能够给予员工切实的利益。硅谷公司通常不会单方面的强调员工对公司的忠诚度,而是更多的考虑公司有什么东西值得员工留下来。国内很多公司特别喜欢强调爱国主义式的忠诚,公司给了你这碗饭,你就要时时刻刻想着报答公司。这种忠诚如果不是发自内心对公司文化的认同,那么根本起不了什么作用。公司如果能够在产品、理念、思想、薪酬、福利等方面着想,无疑才是标本兼治的好方法。

  • 跳出你的舒适区。Get out of your comfort zone已经成了IT界的一句行话。IT界不仅发展迅猛,而且涉及技术众多。靠一门语言打天下的时代已经一去不复返。勇敢的跳出自己的舒适区,主动学习新知识,才能增强核心竞争力。以前做c++,现在想搞web开发,那就要学习。以前做开发,现在想搞管理,那也要学。学习->工作出色->得到成就感->获取更多机会->激发学习,很容易形成一个良性循环。

  • 良好的沟通能力是优秀程序员的必备素质。在一个团队中工作,如果不注重沟通,会导致很多问题。不和BA沟通,无法保证功能契合客户要求;不和其他程序员沟通,技术无法得到共享;不主动和别人沟通,只能被动接受结果。

虽然是金子总会发光的,但现在绝大多数人的首要目标是如何让自己成为金子。从《打造Facebook》这本书中了解了这家公司的工程师文化,学习到了那些“金子”为什么能成为“金子”,并借鉴到自己身上。

最后,给大家一些建议,如果在简历中能有这些东西,那么肯定会从HR眼中脱颖而出。注意这些事情需要平时的积累,不是临时抱佛脚可以搞定的。

  1. 维护自己的一个原创技术博客。

  2. 豆瓣读书上的读书记录及读书笔记。

  3. 成为github重度患者。在github上分享自己的代码,甚至参与开源项目的开发。

  4. 良好的英语技能。尽量阅读英文资料,访问英文网站,如stackoverflow等。自己可以尝试翻译一些技术文章或书籍。

Only the good players are luckly. 这是国际象棋界的一句名言,即只有好的棋手才会走运。在羡慕别人有好运的同时,把自己变为一个good player吧。

作者:黄博文@无敌北瓜 
出处:http://www.cnblogs.com/huang0925
黄博文的地盘
本文版权归本人和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

《打造Facebook》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. Android中沉浸式状态栏的应用

    在Android5.0版本后,谷歌公司为Android系统加入了很多新特性,刷新了Android用户的体验度.而其中的一个新特性就是沉浸式状态栏.那么问题来了,很多非移动端的小伙伴就要问了,什么是沉浸 ...

  2. 如何快速定位TempDB产生问题

    步骤1.TempDB压力诊断 等待类型诊断 TempDB的争用压力在等待篇中已经简单介绍,等待的表现为 pagelatch_类等待,等待的资源是 “2: X :X ” tempDB所在磁盘的响应时间 ...

  3. Codeforces 895C Square Subsets(状压DP 或 异或线性基)

    题目链接  Square Subsets 这是白书原题啊 先考虑状压DP的做法 $2$到$70$总共$19$个质数,所以考虑状态压缩. 因为数据范围是$70$,那么我们统计出$2$到$70$的每个数的 ...

  4. Django简单粗暴快速发送邮件!

    >>尽管Python已经提供了相对易用的邮件发送模块 smtplib ,但Django仍对其做了轻度的封装.封装后的模块不仅发送邮件速度快,而且在开发环境下也很容易对邮件发送进行测试, 并 ...

  5. Xcode文件名后的字母含义

    Xcode文件名后的字母含义   在Xcode中,左侧的dock区域显示项目结构.很多时候,文件名后方会出现一个字母提示,如M.A之类的.这实际是一种提示符号.如果项目中使用SVN.Git等版本控制工 ...

  6. 支持C++11标准

    设置CB下的GCC. Settings->Compiler->Compiler Settings勾选Have g++ follow the C++11 ISO C++ language s ...

  7. SqlServer 并发事务:死锁跟踪(三)6种跟踪死锁的方法总结 大神

    http://blog.csdn.net/kk185800961/article/details/42504857

  8. 谈Objective-C block的实现(转)

    前言 这里有关于block的5道测试题,建议你阅读本文之前先做一下测试. 先介绍一下什么是闭包.在wikipedia上,闭包的定义)是: In programming languages, a clo ...

  9. GOPATH设置

    go help gopath查看gopath的原文帮助信息 go env查看gopath的配置 GOPATH与工作空间 前面我们在安装Go的时候看到需要设置GOPATH变量,Go从1.1版本到1.7必 ...

  10. python訪问redis

    python訪问redis 1 Linux上安装redis a) 下载 $ wget http://download.redis.io/releases/redis-3.0.5.tar.gz b) 编 ...