【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

姜宁谈红帽绩效考核:不关心员工具体做什么

  • 2015-06-08
  • 本文字数:2966 字

    阅读完需:约 10 分钟

开源软件是指某个由社区驱动的开放源代码的产品,而开源文化是指开源社区所衍生出的团队沟通、协作和管理的理念。在开源社区中,程序代码直接决定着项目的成败,但人更是核心,没有人便没有代码。这一点和企业是相同的。越来越多的企业意识到,开源所提倡的协作和管理方式同样适用于企业管理,开源文化能够提高员工的积极性,从而提高生产效率。那到底什么是开源文化,企业应该建立怎么样的开源文化?为了回答这些问题,InfoQ 编辑采访了一直深耕于开源社区的 RedHat 工程师姜宁。另外,姜宁还将在 ArchSummit 全球架构师峰会上分享题为《如何在企业开发中引入开源项目成功模式》的演讲,敬请关注。

InfoQ:你认为公司是否应该有开源文化?

姜宁:开源文化对公司的影响非常大,开源提倡的是开放和协作。如果一个公司不具备这样的开源文化,那就很难真正把开源项目做好,也很难真正靠开源来推动实现公司的商业目标。以我的个人经历来说,我先在国企待了三年,然后一直都在外企上班,在外企期间先后被换了三家公司(主要是公司被并购),但我做的主要工作一直都是维护 Apache 上面的中间件项目。在我待过的这三家外企公司中,红帽软件是一家有着开源基因的公司(本身是靠做 Linux 发行版起家的公司),也是一家真正把开源作为企业文化并在管理组织架构中应用开源文化来提升效率的公司。 红帽软件的企业目标和口号是『成为用户、贡献者以及合作伙伴社区的催化剂,让大家能够以开源的方式创造出更好的科技』。

InfoQ:开源文化对公司有怎么样的帮助?

姜宁:开源打破了信息壁垒,让创新的火花四溅。在开源社区中大家通过分享收获成长,开源文化是参与开源项目的人们认同的东西,如果公司认同了开源文化并鼓励开源,相当于是公司与员工在价值观上是相互认同的。我们现在处在一个信息爆炸的时代,公司为了能够跟上时代的步伐必须通过创新来保证其核心竞争力,而开源文化能够最大限度的鼓励创新,我想这也是现在越来也多的公司开始拥抱开源的最主要的原因。

InfoQ:要建立开源文化,是不是公司相应的组织架构、管理模式都应该做相应的调整?

姜宁:传统的公司组织架构是一个自顶向下的,这样的组织架构是为管理者服务的,对于底层的员工来说大家只需要按照领导的意志或者安排做事情就可以了。这种组织是由以前常规的制造企业创建,组织架构只需要员工按照标准重复生产就可以,所有的决策都是由高层最终决定的。这样的组织架构一旦上层做出决定,那就很难被改变,它既不适合快速的市场变化,也很难激发员工的创新热情。 反观大多数开源项目,由于做的东西都是新的,没有人在最开始就知道项目最终要做成什么样的,大部分的成功的开源项目都是先通过一个好点子构建一个原型,在社区的需求下不断激发出新的点子,不断修复原有的问题,不断演进,最终成长起来。 在开源社区中,由于大家都没有公司的层级概念,靠升职加薪来激励员工的管理方式很难奏效。开源项目的成功靠的是大家发自内心对开源项目的认同,靠的是技术领导以及开发人员、社区贡献者的热情与努力。开源的项目中没有项目经理,只有技术领导,而技术领导的话语权是通过其长期在社区中的贡献而建立起来的。由此可见开源的文化和我们传统的管理组织架构有太多的不同,红帽软件的 CEO Jim WhiteHust 最近写了一本叫做 《 The Open Organisation 》的书,在书中他详细阐述了红帽软件是如何将开源文化应用到公司架构中去的。

InfoQ:红帽是一家开源文化极浓的公司,能谈谈红帽是如何管理员工绩效的吗?

姜宁:的确,红帽雇佣了大量专职参与上游(红帽提供的企业版软件基本都是是基于开源社区的项目经过打包测试之后制作的发行版,我们把那些社区项目成为上游)开发的工程师,有意思的是这些工程师大部分都是在家上班的。这些工程师如果按照传统企业绩效考核基本上都不合格,因为首先经理看不到你是否工作,也不知道你什么时候上班什么时候下班,更重要的是经理不会给你安排工作内容。红帽软件对于这些工程师的绩效考核核心内容是工程师在社区的活跃程度,以及工程师的影响力,而不是他具体完成了多少工作。红帽有一个叫做 Compass 的绩效考核网站,经理和员工会定期讨论工作重点,制定发展计划。有意思的是我在和经理进行绩效考评的过程中,经理问得最多的不是你完成哪些事情,而是你对自己的未来有什么规划,你打算学点什么,你的成长目标是什么。这些讨论的最终结果是将你的发展规划和公司工作目标结合起来,在保证公司目标实现的前提下,你可以任意选择你感兴趣的工作内容。在《只是为了好玩》这本书中提到了一个问题,为什么人们愿意甚至渴望在互联网上为 Linux 这样的项目工作?问题的答案是 Linux 能使人们通过挑战智力而获得乐趣,又能通过产业开发工作获得一种被社会需要的满足感。我觉得问题的答案可以比较好的解释为什么红帽的绩效考核会是这样的。

InfoQ:公司应该如何培养员工的开源文化、开源意识?

姜宁: 我觉得首先公司管理层需要了解开源,认同开源文化。开源的核心是开放与协作。公司应该鼓励大家分享,当然是在不泄露公司商业机密的前提下。另外大部分的开源项目的协作是跨越公司边界的,公司应该鼓励大家进行跨部门的沟通与协作。 当然在参与开源过程中,有时候可能会出现公司和员工有分歧的情况,比如某个社区功能可能会很好玩,但是这项目或者这功能和公司目标并不一致,它很难直接为公司产生效益。如果公司的高层和员工在认识和处理这些差异的过程中发生了很大的分歧的话,就会给员工参与开源社区的开发带来很大的困扰。在这里我的建议是让管理层尽量少的干涉员工的具体工作,把大部分管理精力放在如何让员工认同公司的发展策略上,这样才能最大限度地将员工的发展目标与公司的发展目标统一起来,让员工能把所有的热情都投入到日常开发工作中去。

InfoQ:相比于开源软件的开发和管理模式,你认为企业在软件研发过程中,有哪些值得改进的地方?

姜宁:传统的企业研发过程基本上就是先做需求,再做概念验证,最后实施。在传统的组织架构下,项目的参与者可能很难有机会影响到项目的决策,如果相关项目是一个比较新的项目(缺乏借鉴),往往比较容易失败。在开源项目中虽然也有失败的例子,但是这种一开始就方向性失败的例子很少见,这是因为开源项目的反馈非常及时。通过社区的使用,一旦发现设计缺陷,就会立即修正,周期不会很长。

如果说如何改进的话,我觉得主要是管理层需要从如何提高员工工作热情入手,创造条件鼓励员工之间协作,让创新的火花四溅。这样的改进不是一朝一夕就能完成的,我曾经帮助过一家传统的软件开发企业改进研发流程,很多时候我认为是习以为常的东西,但如果没有开源项目开发经验的话,大家接受和实施过程中都感觉困难重重。这里先做一个小小的预告,我会在这次的 ArchSummit 全球架构师峰会上,结合的我的经历为大家介绍如何将开源软件的管理方式应用到企业软件开发中去。

受访嘉宾介绍

姜宁是红帽软件首席软件工程师,有十余年企业级开源中间件开发经验,有丰富的 Java 开发和使用经验,函数式编程爱好者。从 2006 年开始一直从事 Apache 开源中间件项目的开发工作,先后参与 Apache CXF、Apache Camel 以及 Apache ServiceMix 的开发。2007 年开始参与 Apache Camel 项目开发,目前是 Apache Camel 项目的主要维护者。对 WebServices、Enterprise Integration Pattern、SOA、OSGi 有比较深入的研究。

2015-06-08 03:294831
用户头像

发布了 219 篇内容, 共 134.9 次阅读, 收获喜欢 190 次。

关注

评论

发布
暂无评论
发现更多内容

全网最详细XSS跨站脚本攻击,不是过来打死我!!

网络安全学海

程序员 网络安全 信息安全 XSS 漏洞修复

数据结构——顺序表

若尘

数据结构 6月日更

AI论文解读:基于Transformer的多目标跟踪方法TrackFormer

华为云开发者联盟

预测 Transformer 多目标跟踪 TrackFormer 跟踪目标

容器化 | 在 Kubernetes 上部署 RadonDB MySQL 集群

RadonDB

MySQL Kubernetes 容器

冰泉奶茶香牙膏好不好?奶茶控的宝藏牙膏就是它

Geek_50a546

HarmonyOS学习路之开发篇——公共事件与通知(一)

爱吃土豆丝的打工人

Java HarmonyOS 鸿蒙操作系统

页面制作的15个CSS技巧

devpoint

CSS css3 Flex 6月日更

一步步设计版本控制系统

Java·课代表

git 版本控制 版本管理

联想服务斩获两项智能运维大奖 助力企业业务创新与数字化转型

科技大数据

Linux之nl命令

入门小站

Linux

为什么switch的case没有break不行

叫我阿柒啊

Switch case break

带你认识9种常用卷积神经网络

华为云开发者联盟

神经网络 深度学习 卷积神经网络 图像 卷积

掌门教育自研APM实际分享

白玉兰开源

回忆录 | 那些你不能错过的CTF夏令营往届历程,2021精彩继续……

郑州埃文科技

12种mysql常见错误总结 +分析示例

李阿柯

MySQL 面试 常见问题

APP 开发技术如何进行选型 ?

程序员海军

大前端 App 技术选型 APP开发

[译] D8 类库脱糖

Antway

6月日更

可视化搭建的一些思考和实践

白玉兰开源

在线sitemap链接提取工具

入门小站

工具

使用 Scala 宏解决对象转换

GrowingIO技术专栏

scala protobuf 元编程 macro

使用SpringCloud的openFeign组件踩坑纪实

小江

dubbo Feign spring-cloud

JavaScript学习(十一)---RegExp对象

空城机

JavaScript 大前端 6月日更

从2021钉峰会,看钉钉生态背后的强大赋能力

ToB行业头条

钉钉

EasyRecovery——一款专业的数据恢复软件

淋雨

文件恢复 Easyrecovery破解 免费恢复软件 硬盘数据恢复

计算机网络的 89 个核心概念

cxuan

后端 计算机网络 网络

基于 Web 引擎扩展技术的 RTC 混合开发框架实践

白玉兰开源

大前端

Rust从0到1-自动化测试-测试组织

rust 单元测试 集成测试 自动化测试

代码管理工具:Git和SVN

正向成长

git svn

30分钟接入SDK 融云是如何让开发者做到开箱即用的?

融云 RongCloud

深度解读MRS IoTDB时序数据库的整体架构设计与实现

华为云开发者联盟

大数据 架构 时序数据库 FusionInsight MRS MRS IoTDB

浩若烟海事半功倍|利用Docker容器技术构建自动化分布式web测试集群Selenium Grid

刘悦的技术博客

Docker Python3 测试 单元测试 测试环境 selenium

姜宁谈红帽绩效考核:不关心员工具体做什么_RedHat_小盖_InfoQ精选文章