得人心者得天下 —— 也谈开源软件人才

在企业级的市场,开源从来都是竞争激烈的一块地方,而开源竞争的重中之重尤以人才强夺最为残酷和激烈。你若是属于这个范畴,并且是创业公司,杀出一条血路,必须先在收获人才上有所优势。

“开源软件正在吞噬世界”,伴随着Linux、OpenStack、Hadoop、Android等开源软件的崛起,即大规模的使用,以及社区模式的流行,从而走进了社会主流的视野,而这其中最为显著的一个动向便是:仿佛一夜之间开源的人才成了各大厂商争取的高地:(信手拈来几个实例)

  1. Google为了强夺人工智能领域的高地,率先将其旗舰产品TensorFlow开源,随后,微软、FaceBook、Amazon、特斯拉,乃至百度都先后开源了他们各自的 AI 相关项目,目的只有一个——希望获得公司以外社区人才的支持和贡献。
  2. 红帽首席执行官 Jim Whitehurst 为了笼络人心,不惜以一年的功夫去出版《The Open Organization》一书,并到处作演讲,从而达到降低日渐高涨的人力成本,以期捕获更多开源人才的加盟。
  3. 国内大厂华为在开源方面走过很多的弯路,目前的策略是成立“开源能力中心”智囊团,为高层献言献策。君不见,现在华为为开源各种峰会做钻石赞助商,也会对某些项目贡献patch,相比于其定制的商业产品,其实这些不过是吸引人才的手段罢了。
  4. ……

为什么会是这样?

软件,以其无与伦比的复杂度,整整折磨了人们半个世纪,在软件的生命周期中,开发过程是一个纯粹思维抽象的过程,其难度,计算机科学巨匠 Frederick P.Brooks 在《人月神话》一书中有非常深刻的讨论。后来,Eric.S.Remond 一篇《大教堂与集市》论证了开源生产模式可以成功的开发出优秀的软件项目——Linux。Linux 到目前的成功已经是有目共睹了。开源作为一种生产模式,被许多成功的项目所佐证,比如Apache下的 HttpD、Hadoop等。

开源,若从其最早的源头讲起,是有着深厚的 Hacker 文化烙印的,比如反抗权威、热爱自由、为技术而技术等等。但是,时代在变,这些纯粹的精神,在这个年代似乎大家认为是一种虚伪的表现。“不要和我说那么多高尚的口号,开源就是开源。” 这是一个开源成为默认的时代!

这是一个知识经济时代,尤其是软件开发这个职业,突出的个人能力是非常让人看重的,其实,在软件项目开发中8/2原理仍然生效,那就是20%的人做了大部分的工作,这个我们可以从各个重大的开源项目中得到佐证,比如Ceph。

我们换个角度,从社会学的视野来看,从人性来讲,开源的本质是对个体的人的承认,在开源社区做软件开发,相比于传统的软件大厂,能够获得更多的个人荣誉。突出个人的能力、能够“鹤立鸡群”是人类能够进步的原始动力,被多数人承认,是人类较看重的事情

然后,从经济的角度来讲,开源为相关的技术人才提供了和老板讨价还价的筹码,在传统的专有软件厂商,人才是被捆绑的,有保密协议的约束的,几乎在大学毕业后就只能在此一家公司上班。而开源让人们有了更多的选择,大家所使用的技术是一致的,而且个人信息是可以在代码的提交中对所有人都是公开的,就代码的质量和评价来说,这更进一步加大了让人赏识的机会。

最后,说明文化的重要性,既然开源已是主流和默认,很多公司都在雇用开源人才,甚至所雇用的人所从事的工作和公司本身的产品没有太大关系,比如 Intel的开源项目。那么人才的竞争就会日渐的激烈。回到国内本土,虽然大家都在奉行物质至上,但是如果是拥有一份收入相比不差,但是又能够在一家文化、价值认同的工作环境,还是颇得开源人才的青睐的。

得人心者得天下

毫不夸张的说,在接下来的几年,谁能争取到更多、更优秀的开源人才,谁就能够在残酷的竞争中增加活下来的几率。我这里并非说的是某家公司自身供养多少人才,而是说某个开源项目能够吸引多少人的参与!当然自己供养也占据一部分,然后一家公司是绝对不可能将所有的贡献者供养起来的。

人才的抢夺战,在本土尤其的激烈,由于本土教育的短板,国内IT大鳄早早的就将魔爪伸向了在校大学生,其实,创业公司为了节省成本和培养人才,也会去学校争夺一下。但是我们看看现在IT招聘工作描述中的一些加分项:

  • 有GitHub账号,并持续撰写代码。
  • 对开源项目有贡献,参与过某个版本的开发和发布。
  • 认同开源文化,对相关软技能了然于胸。

IT 技术可谓是日新月异,变更速度越来越快,这不得不归因于整体经济的发展,加速度的要求信息技术的更新。那么相应的技术人才招徕手段也是创新比比皆是,但是,开源人才的招徕,莫过于红帽、Google、GitHub、DropBox等优秀的公司。最重要的莫过于尊重人才,为这些人才提供良好的环境和氛围。

谈到环境与氛围,就不得不提及文化的重要性,论文化还是从最初的开始,那我们就来聊聊开源的历史:

当然,也是检验某些项目是否为某些公司把控的标杆,如果您看到某些95%以上的代码都是一家贡献的,那么就会心里烦嘀咕,是否值得参与这样一个项目。

吸引开源人才有哪些事情需要做

那么,这相应对于人才本身有了更一步的要求,技术之外的,

说一千,道一万,最后的目的还是有没有办法吸引到开源人才?开源人才是如何来衡量一家公司的?

而作为一家公司,应该去做的的一些事情:

  1. 举办、赞助开源的一些峰会。诸如LinuxCon、OSCon等。
  2. 倡导开源、工程师文化。
  3. 内部工程师,周期性的做诸如 Hack-A-Week 这样的活动,
  4. 将决策交给一线的工程师
  5. 自下而上的管理模式
  6. 打造透明的文化,利用各种工具尽可能让信息公开
  7. 扁平化是最好的管理中国团队的方式

如何识别开源人才?

相应的,在一家好的拥抱开放的公司,对于开源人才又有什么样的需求了呢?或者说,在一家优秀的公司眼中,一名优秀的开源人才应该具备什么样的素质?

  1. 自律,且能够做到自我驱动
  2. 对于编程或IT技术有着不一般的热爱和迷恋
  3. 热衷于分享,明白合作的深刻原理
  4. 不迷信道听途说、不相信权威,有独立思考精神
  5. 执着

其实,这些都是扯淡,最最重要的是能以优雅的方式解决问题!

未完待续