《打造Facebook》
王淮的《打造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眼中脱颖而出。注意这些事情需要平时的积累,不是临时抱佛脚可以搞定的。
维护自己的一个原创技术博客。
豆瓣读书上的读书记录及读书笔记。
成为github重度患者。在github上分享自己的代码,甚至参与开源项目的开发。
良好的英语技能。尽量阅读英文资料,访问英文网站,如stackoverflow等。自己可以尝试翻译一些技术文章或书籍。
Only the good players are luckly. 这是国际象棋界的一句名言,即只有好的棋手才会走运。在羡慕别人有好运的同时,把自己变为一个good player吧。
作者:黄博文@无敌北瓜
出处:http://www.cnblogs.com/huang0925
黄博文的地盘
本文版权归本人和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
《打造Facebook》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- AC日记——合唱队形 洛谷 P1901
题目描述 N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形. 合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2, ...
- 关于xcode 9.0数组问题的遇到的坑
1.最近一直在忙着做项目,今天就来总结最近这段时间遇到的一些比较麻烦的问题.有时候也是颇感无奈. 有句话说的好.人不要总在一棵树上吊死.去旁边那棵树上也可以试试.好了不扯了.直接进入正题吧! 先来阐述 ...
- HDU 3068 Manacher
题目链接:http://hdu.hustoj.com/showproblem.php?pid=3068 今天学习一下马拉车算法,虽然mg讲过,但是没有系统去学. 算法学习:参考博客 马拉车模板题. # ...
- 洛谷——P2296 寻找道路
P2296 寻找道路 题目描述 在有向图G 中,每条边的长度均为1 ,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件: 1 .路径上的所有点的出边所指向的点都直接或间接与终点 ...
- AtCoder - 2581 Meaningful Mean
Problem Statement You are given an integer sequence of length N, a= {a1,a2,…,aN}, and an integer K. ...
- 1.搭建maven,eclipse创建maven项目
1.下载maven包,下载地址为:http://maven.apache.org/download.cgi 2.解压zip包 3.eclipse 引入maven: window-Preferences ...
- javascript 对象初探 (四)--- 内建对象之旅之Boolean
var a = new Boolean() 我们要明白一点在这里的b是一个对象而不是一个基本数据类型的布尔值.如果想将b转化成基本数据类型的布尔值,我们可以调用她的valueof()方法(继承自Obj ...
- ArcGIS 安装中,SQL的使用出现错误的解决
1. SQL Server Configuration Manager 中 SQL Server Services出现 “远程调用失败..” 的问题 解决方法是卸载
- Android ANR原理分析
一.概述 ANR(Application Not responding),是指应用程序未响应,Android系统对于一些事件需要在一定的时间范围内完成,如果超过预定时间能未能得到有效响应或者响应时间过 ...
- xterm.js 基于websocket 链接容器 命令行工具
<template> <div> <el-dialog title="命令" :visible.sync="dialogTableVisib ...