编者按:“互联网”、“软件开发”这样在现代社会炙手可热的词汇本身就可以让我们看到“团队合作”的影子。互联网面向全球,而智力高度集中的软件开发也需要从个人英雄主义进入紧密配合的团队协作时代。本期爱帮网CEO刘建国先生为我们介绍了互联网软件的特点,并提出一个重要理念SAAS,即Soft As A Service,软件即服务。进一步与读者分享他宝贵的实践经验:如何创建一个优异的团队并进行高效的协作与管理,相信对从事互联网软件开发工作的读者以及想要在这一领域创业的大学生们有很大的帮助。
1互联网软件开发的特点
软件工程的基本理论,比如软件开发的模型、软件开发的周期等,大家比较熟悉。但是,互联网的软件开发与传统的软件开发有不同的特点。
互联网软件开发实际是SAAS(Software As A Service),即软件作为一种服务来提供。传统的软件,比如微软开发出的软件,必须有一个拷贝,通过物理的介质分发出去,用户才能安装使用。互联网软件则不同,没有分发的过程,软件本身以服务的形式来提供,不需要物理介质,只需要一个浏览器。互联网软件开发面临的特点和开发方式也与传统的软件开发不同。以“云计算”为例,支持这样的服务,后台必须有非常高效的基础结构,实现软件的功能,以便承担高效率的集中访问。互联网对软件的可靠性要求也更高,传统的Windows系统,如果运行错误,重新启动就可以,而Internet上的软件,一旦瘫痪,所有人都无法接受服务。
互联网软件开发明显的特点是所谓“小步快跑”。即:(1)软件开发的周期短,节奏快。(2)分特性上线。先上线一些功能,然后再去改进。(3)系统优化要大于大规模的重构,不会动不动就推翻,从头再来。(4)对Bug的容忍度比传统的软件开发大。如果有Bug,马上修改,再改进上线。
互联网软件开发的另一个特点是“先上线后优化”。先实现核心功能,再补充外围功能。功能上线后,逐步优化,使之变得更稳定,性能更高。互联网软件开发遵循“技术适用原则”。只要能够实现功能,提供服务足够,不用单纯追求技术先进。工业界的技术一定要成熟、稳定、尽可能降低风险,很多时候倾向于采用适用的技术。
互联网软件开发的代表是Google公司,传统软件开发的代表是微软公司。在SAAS发展迅速的时代,微软这种传统的软件公司也感到了压力,开始向互联网服务转型。Google公司证明互联网软件具有高的扩展性,技术发展快,商业也比较成功。Google公司以大概10年的时间,发展壮大为微软的1/3大小。
2团队合作与团队文化
现在不是个人英雄主义的时代,尤其是软件开发,一定是团队合作的结果。很多的服务,动辄几万行、几十万行甚至几百万行的代码,依靠一个人或者几个人难以完成,必须有团队的分工,大家各做一部分,聚合起来提供服务。相对传统的软件开发,互联网软件开发对团队合作和团队管理的要求更高。
团队合作之于公司。好的团队文化,富有凝聚力,高效地运作,这是好的技术队伍的特征。“一个中国人是一条龙,三个中国人是一条虫”,这说明中国人有时不善于团队合作,但“三个臭皮匠,顶个诸葛亮”的谚语,又说明了中国人对团队合作的重视。这其实是意识问题,团队中的每一个人,不管是龙是虫,怎么把他们凝聚起来成为有战斗力的团队,是团队管理的任务。团队的力量胜过任何一个个人的力量,这是不言而喻的。对于公司而言,团队合作非常重要。
团队合作之于个人。团队合作对个人的重要性从以下方面可见一斑:(1)提高个人的绩效。没有他人的配合,没有团队的氛围和文化支持,个人很难取得好的绩效。作为团队的一分子,没有团队目标的实现,个人的价值也难以体现。(2)增强个人的能力。把事情做好,既需要技术技能,按时保质完成任务,同时也需要和别人合作,提高自己的软技能。(3)体现个人的信用。团队目标是分解的,落实到每个人,如果接受任务而没有按时完成,拖了团队的后腿,就会失去信用。团队中的很多东西,都会决定个人的信用。
3团队合作能力
专业能力
超强的专业能力是团队合作的基础。个人基础扎实,技术过硬,做事高质量,这是团队合作中最重要的。作为团队中的一员,就是要把自己的事情做好,不要成为团队的瓶颈。
表达能力
团队中,每个人要阐述自己的想法,介绍自己的工作,并且让别人理解,这需要很好的表达能力。表达能力不仅是口头的,也包括工作的文档化,且更为重要。不仅要说清楚,而且能写明白,让读的人理解。项目往往具有延续性,文档的阅读者可能没有任何的背景,这就要求文档编写者站在读者的角度思考,写出详尽的说明,让文档能够自我解释。
全局观
个人是团队的一分子,一定要明白团队的整体目标,知道自己的工作在全局中的位置和价值,才能够在情况变化时做出正确的判断。比如,个人要知道自己工作前后左右的接口以及接口之间的关系,接口变化时,有意识地通知相关的人。实践中,有些人想当然地认为别人知道发生的变化,没有有意识地通知合作伙伴,最后误事的教训并不罕见。
不要成为团队的瓶颈。团队目标都有许多里程碑,里程碑的达成,有赖团队中每个人高效的工作。如果一个人工作没有完成,可能成为整个团队的瓶颈。整个团队等一个人,个人很难受,团队目标也受损。
敬业精神
富有职业精神,不要被人推着走,要积极主动地工作。所谓“取法其宗尽得其上,取法起上尽得其中,取法其中尽得其下”。如果标准设低,实际达到的可能比期望还低一级。所以,工作中要追求卓越,高标准要求自己,才能越做越好。
个人信誉
在团队中要做可信之人,赢得大家的尊重。如果每个人都可以信赖,团队就会非常强。
4团队管理
团队管理,是团队领导者必须面对的问题。作个形象的比喻:把一盘散沙从高处倒下,对地面的冲击非常小;如果把这些沙子变成混凝土,从同样的高度砸下,对地面的冲击力就会强百倍。散沙凝聚成混凝土,就是团队管理的任务。
团队的英文Team,实际是Target、Education、Ability和 Morale四个单词组成。
Target,团队要有目标。团队目标能够凝聚团队,让大家的劲往一处使,而且目标的设定一定要满足Smart原则。
Education,教育或者培训。团队领导者,要能够发现团队的问题,有意识地让每人得到发展,使团队中的合作更无缝。教育不能老唱高调,而要用具体的事情教育成员,增强他们的团队意识。发现成员的错误,要及时纠正;发现做得好的地方,要及时奖励。这样才能对团队有好的教育效果。
Ability,团队的能力。个体能力相加并不一定等于团队的能力,凝聚团队力量,团队领导者要做许多工作。
Morale,士气。团队的士气一定要高,有一股劲想把事情做好。每个人都信心满满,互相合作,非常愉快。一盘散沙凝聚成糊凝土,需要加入石块、钢筋、水泥等,用水搅拌。团队管理也是起到搅拌机的作用,把优秀的团队成员凝聚在一起,产生团队生产力。
团队管理是团队产生战斗力的关键,主要有四个方面:
团队文化
文化是一套做事的方式,团队以什么样的形式在工作,是团队的特征,或者团队的哲学。团队领导者,要营造一个团队氛围和环境,让大家认识到自己是团队的一分子,乐意在团队中工作。
好的团队文化,包括三个方面:(1)实事求是。科学对待每一件事,就事论事,不需顾及人际关系,通过有根有据的逻辑和数据,科学地解决。(2)追求卓越。每个人都把自己的事情做好,争创世界或者国内一流,继而演变为团队的氛围。(3)高效率。这样的团队有战斗力,也是团队管理的根本目的。
组织结构
设置团队的组织结构,发挥最大的效率。比如互联网软件开发,一般需要产品、研发、质量保障和运媒四个部门。产品团队设计产品功能和UI,满足用户需求,制定推出时间;研发部门以书面化的产品说明书来研发系统;质量保证部门通过两种方式保证产品的质量,一是对开发的产品进行测试,二是监督产品研发的整个过程是否按照规范去走;运煤团队负责软件上线和服务的维护。
组织结构的设计要考虑相互制衡,不能让一个团队权力过大。比如研发和质量保证两个团队,必须是平行的,才能够独立工作、实事求是。
制度规范
团队必须有章可循,大家做事方式遵循一个标准,这就是制度规范。奖励制度、惩罚制度、开发规范和文档的标准,都是制度的范畴。制度有两个重要的比喻。一个是火炉原则,团队中一定存在火炉,温度很高,谁碰到都会被烫到。这体现了制度的严肃性,对每个人一视同仁。另一个是破窗理论,有人打破了教室的一块玻璃,如果没有受到处罚,其他人也会跟着打破玻璃。这说明制度建立的过程中,惩恶扬善一定要及时,才能够深入人心。
人员管理
团队管理,本质是管人。所谓“小主管管事,大主管管人”,也表明了管人的重要性。互联网的软件开发,最有价值的是人,只要人在,什么东西都可以做出来。团队管理,主要是把人的积极性调动起来,凝聚团队的战斗力。团队领导者,必须以人为本,尊重每一个人,理解他们的需要,及时沟通,帮助他们解决困难,让成员感受到团队的温暖。
人员管理,需要在三个方面下功夫:
快乐地工作,激发创作力
让每一个人都很快乐,愿意在集体中工作,或者通过智力上的碰撞,让成员学习,能力有所增长。除了工作,还可以谈心事,一起玩,增强成员的感情。此外,可以用成绩去鼓励大家。比如团队目标达成时,大家一起庆祝,有一股向上的动力。
尊重每个人
技术研发团队,每一个人都非常优秀。团队领导者要尽可能解决成员的后顾之忧,激发他们的创造力,把他们的智慧用在最有效的地方。比如我们倡导的弹性工作制,很多技术人员非常喜欢。有些人是夜猫子,就让他们晚上多工作一会,不用赶早;有些人是early bird,早上创造力旺盛,就让他们早上班早下班。一切的达成是以团队目标来衡量,而不是朝九晚五打卡之类的东西去限制团队成员。
人才的选、育、用、留
对团队中的每一个成员,都要非常谨慎,在选、育、用、留四个方面多下功夫。
选,是招聘,选择。选择团队需要的人加入团队,把严进口。既要考察硬技能,了解其理论和动手能力,又要考察文化因素等软技能。优秀的团队,应该用好的文化很快地去同化进来的人,而不是被不符合文化特征的人来稀释。
育,是培养,培养。每一个人都有优点和缺点,通过很多事情的强化,增强他们的能力,改善他们的不足。
用,用人所长,避人所短。把每个人放在最适合的地方,做他喜欢而且擅长的事情。团队领导者需要分析成员的长处和短处,对症下药。比如有些人算法强,动手能力弱,就让他去做调研;动手能力强的人,则让他多做一些编码。对团队管理而言,也需要选拔管理方面的人才。有意识地培养这方面的人才,给他一些事情去管,让他去协调。
留,留住人才。在团队中是否得到了成长,是否与个人目标一致,是否快乐,都与成员能否留在团队里息息相关。留住优秀的人才,也就需要从这几个方面去留心。留,还有一个内涵是裁,把不合流的人清除出团队。清除绩效不好和不符合团队文化的人,对团队是一个激励。
5如何培养团队精神等软技能
如何培养团队精神,其实是软技能的培养。
从小事做起,从现在做起,善于总结提高
从一点一滴的事情做起,去培养团队精神。不能只是想着做大事,大事都是小事积累起来的,所以要脚踏实地,从小事做起,从现在做起。善于学习很重要,既包括硬技能的学习,也包括软技能的学习。IT技术发展日新月异,不学习很快就会过时,只有善于学习才能跟上时代的进度。同时,软技能也需要总结提高,每天自省,看看哪些地方可以做得更好,总结提高。
有抱负、强烈的进取心、高标准
不想当将军的士兵不是好士兵。一定要有抱负,有高远的目标。树立强烈进取心,高标准要求自己,工作积极主动,更多地投入,把一点一滴的事情做到极致。
团队合作力
除了工作,其他团队也可以培养团队合作力。比如旅游,说是30分钟后集合,那就一定要30分钟内回来。不能只想到自己做什么,而要想到团队,想到大家。承诺的事情,就要做到,这也是团队合作力的表现。
团队领导力
如果团队管理是你的人生目标,就要积极地锻炼团队领导力。从小事做起,协调一些东西,配置一些资源,想办法把人凝聚在一起实现团队目标。
对人而言,硬技能和软技能都很重要。硬技能决定起点,软技能决定高度。硬技能高,则起点较高,但是,软技能却能决定一个人最后发展的高度,成就多大的事业。现在研究较多的第10名现象,即学校或者班里的第10名往往做出的成就最大,也说明了硬技能和软技能均衡发展的重要性。因为第10名学习也不错,又有合作能力和领导力,在社会中容易得到发展。
以上为本人在团队管理中悟出的一些经验与方法,希望能对大学生规划今后的职业生涯有所启发。