软件开发是一场需要集体智慧的运动,它的成功不完全属于团队中任何一个人。然而,团队成员们做人做事的风格却不完全一样,因此我们需要一种叫做“团队文化”的东西,通过它让大家的心聚集在一起,齐心协力完成目标。
本文将从团队文化入手,站在软件开发的角度,讲述工程师文化是如何打造出来的。文中会包含一些可立即落地的实践方法,大家可根据自身实际情况,灵活运用。
下面,我们就一起聊聊关于团队文化的那点事儿吧。
我们认为,团队文化主要包含以下三个方面:
团队气氛
做人原则
做事方式
我们先说“团队气氛”。我们每个人都希望团队有个好的气氛,都不希望气氛变得糟糕,因为气氛糟糕会让人的心情变得糟糕。我们的工作性质决定了,我们每天都要与人协作和沟通,如果缺乏好的团队气氛,合作关系将变得冷漠,工作也将失去激情。
然而,营造好的团队文化,起到决定性作用的就是团队领袖。公司就是一个最大的团队,公司文化取决于公司老板。道理很简单,团队成员能否加入这个团队,是由这位团队领袖决定的,他决定了人的构成,人决定了团队的气氛。
团队文化也包括“做人原则”。坦率地说,团队中每个人的性格可能不尽相同,性格必然多元化,性格也必须求同存异,同类型的人只会让团队的短板更加明显。我们相信,没有完美的个人,只有完美的团队。但是,做人原则与人的性格不同,做人原则是态度和行为的根基,如果这个根基就不对,那么也很难做成一件成功的事情。
团队领袖就是团队做人原则的根基,他说的每一句话,做的每一件事,团队都看在眼里,大家都以他为标准。如果团队领袖是一位正直的人,那么邪恶的人也无法留在他的团队中。正所谓,物以类聚,人以群分。
做人原则决定了“做事方式”。如果团队都是性格直爽的人,那么一定是有话直说,对事不对人;如果团队都是溜须拍马的人,那么一定会让领导笑口常开,用表象去掩盖事实。不得不说,在一些互联网公司中很多老板(也包括一些领导),他们很喜欢看数据,很相信数据,认为公司是一家数据驱动型企业。如果没有一个求实的企业文化,员工就会拿数据来欺骗老板,因为老板相信数据,员工就会给老板看到数据。
事情做不做都在那里,做的方式不同,效果也会完全不同。一位求实的员工,一定会用数据说话,但不是单纯地给老板看数据,他会将数据背后的本质原因分析给老板听,帮助老板正确地做出决策。团队的做事方式同样也取决于团队领袖,他是怎样的人,就会带出怎样的团队。
综上所述,团队气氛、做人原则、做事方式这三点构成了团队文化,而且这三点都由团队领袖来决定,如果你就是这位团队领袖,不妨思考这样三个问题:
你想要怎样的团队气氛?
你的做人原则是怎样的?
你的做事方式是怎样的?
把以上三个问题的答案写在纸上,反复思考自己是不是这样的,想明白后就去亲自实践,用写下来的这些准则去要求自己。当自己违反了这些准则时,思考为什么会这样?到底出了什么问题?
我曾经写过以下 5 条行为准则,自己一直都在努力践行,这些也是我们的团队文化。
守信 —— 为自己的承诺负责
进取 —— 勇敢面对新的挑战
高效 —— 追求高效工作方式
学习 —— 不断学习新的技能
分享 —— 乐于分享个人收获
其中,守信是做人的原则,进取是做事的态度,高效是做事的方式,学习是对自己的要求,分享是对团队的贡献。
需要注意的是,团队文化必须体现在平时的日常工作中,通过文化来影响整个每个人,通过文化来指导团队的行为,通过文化来融入更多的新人。团队文化不是喊出来的口号,也不是贴墙上的标语。只有我们心中认可的文化,才是真正的团队文化。
既然我们都是软件工程师,那么我们也需要有自己的文化,我们需要的是“工程师文化”。
弹性的工作时间、优雅的办公环境、穿着自由且随意、做自己喜欢的工作、工程师们说了算……这些是工程师文化吗?显然不是,这些只是工程师文化的表象,而非本质。学习工程师文化,一定要抓住本质,否则舍本逐末,不伦不类。
有些互联网创业公司,对外号称弹性工作时间,但当员工做完当天工作并按时下班时,老板却认为这些员工不够努力,他们都在打工,而不是在创业,老板因此感到心寒,但束手无策,只能在内心里埋怨。当这样的事情屡次发生后,老板对员工会产生更加强烈的不满,离员工的距离也会越来越远,从而不再信任他们。
我有一位朋友,他在一家公司做技术高管,公司提倡工程师文化。他的老板经常对工程师们说:“大家白天写代码,晚上可以做业务嘛,这么早下班回家干嘛呢?做业务的同事天天加班到深夜,凌晨给他们发微信,他们都是秒回的”,当老板说出这句话时,也就注定了,这家公司不可能拥有真正的工程师文化,他们公司所号称的工程师文化其实都是表象,老板根本就不理解工程师文化,公司也留不住优秀的工程师。
果不其然,这位技术高管无法承受老板的态度和行为,选择了主动离职,他的离开影响了整个技术团队的稳定性,导致优秀工程师大量流失,公司业务也受到了影响。
我们认为,工程师文化是以共同解决实际问题为目标的团队文化。工程师文化并非由工程师们自发创建,更不是工程师们的一种自嗨行为。工程师文化是由企业文化所决定,企业文化由老板所决定,老板必须理解工程师这样的人群,才能把合适的工程师放在合适的位置上,才能真正领悟工程师文化的真谛,才能做成一家真正的互联网产品技术型公司。
可以抽象地认为,工程师文化只是一个代号,一种象征。工程师文化强调的是团队有目标、有分工、有协作,而且团队所解决的是当前面临的实际问题,并非是一些不切实际的目标,更不是加班这种表面上的东西。
工程师文化并非一个人或几个人就能打造起来的,需要公司老板以及高管们的认同,自顶向下的影响并鼓励自己的团队。老板必须懂得工程师这个职业,必须深刻理解工程师文化。
如果你是一位技术负责人,你的老板却并太不懂技术,你很希望打造出工程师文化,这样对外容易招聘,对内也能让团队更加融合,工作更加高效。此时你需要掌握正确的操作方法,才能打造出良好的工程师文化,否则后面迎接你的将是一场噩梦。
你要做的第一件事情是,让老板理解软件开发是一项工程,需要工程师们一起合力完成,还要让老板看清工程师的价值。因为在不懂技术的老板眼中,工程师的成本是相当昂贵的,他们做的东西自己又看不懂,不知道钱花得有没有价值,工程师们每天都在做什么?为何做一个项目不能直接开干,还要先去估时?估时会不会有水分?
我们必须站在老板的角度去理解他,把他心中的这些顾虑全部排除掉,让他觉得软件开发是一项伟大而复杂的过程,需要工程师们用科学的方法来避免风险,从而让项目得以顺利交付。很多技术负责人可能都忽略了这个过程,导致后面做的一系列事情,老板都看不懂,也不认为有价值。
当你让老板理解了软件工程以及工程师价值以后,接下来可以做以下几件事情:
让团队扁平,自己和团队一起工作
没有 Leader,只有 Owner
没有“你们”,只有“我们”
一切都以数据说话,分析数据的本质
可以加班,但拒绝无意义的加班
以上这些观点,首先你需要确保自己能做到,你的团队才会做到,你才有可能打造出真正的工程师文化。
接下来,你需要不断培养队员们的软技能,其中有 3 点非常重要的态度,这些态度决定了团队做事的行为:
1、主动担当任务,并非被动等待
2、具备用户思维,产出有用成果
3、具备服务意识,乐于帮助同事
除此以外,你还可以考虑做到这些事情:
让大家成为朋友
缩短项目迭代周期
为每个项目找到 Owner
选择最合适的技术
技术尽可能自动化
注重代码质量
建立开放与共享
预留学习时间
不追究任何责任
只招最对的人,不招最贵的人
你可以组织一些有意思的活动,比如:茶话会、小黑屋、经验分享、内部演讲、摄影比赛、话题辩论、体育活动、健身、户外运动、技能培训、读书会、黑客马拉松等,只要对团队成长有帮助的活动,你都可以去大胆尝试。
打造一支高效的研发团队,我们至少需要关注四个方面:组织架构、研发流程、绩效考核、团队文化,这四点缺一不可。其中,团队文化是至关重要的,它是团队价值观的主要体现,是大家做人做事的行为准则。
我们非常提倡工程师文化,但也要有正确的方法去打造工程师文化,需要让自己的上级产生信任感,也要让自己的下级产生幸福感,我们必须做到这些,才能打造出真正的工程师文化。
我已在《技术领导力300讲》发表了 4 篇关于“打造高效研发团队”的系列文章,这几篇文章的内容还比较片面,不一定能完全帮助大家解决现在所面临的问题。深知自己水平有限,但我愿意分享,愿意和大家交流成长的点点滴滴,还请大家不吝赐教。
作者简介
黄勇,现任特赞科技(tezign.com)CTO,图书《架构探险》作者,Smart 开源项目作者,TGO鲲鹏会上海分会董事会成员,QCon 讲师。十年以上互联网软件架构与技术管理经验,擅长敏捷开发,推崇“轻量级”架构思想。喜欢阅读,热爱交流,乐于分享。