如何通过技术培训建设强有力的软件团队
无论哪个团队都想成为拥有超强技术实力的团队,而建设一支这样的团队也是每一位组长、技术主管、架构师的责任之一,要问起怎样建设,会得到很多种回答,有人说涨工资,有人说搞绩效,有人说多聚餐,有人说去旅游……那么哪种方式能低成本高收益的提升团队的技术能力呢?
当然,答案肯定不是唯一的,这个答案既会随着企业文化变化,也会随着管理者风格变化,但是我认为,提升团队的技术实力首选的还是进行技术培训。
显然,技术实力的提升要靠团队成员的技术能力来保障,因此提升每位成员的技术实力就尤为重要。在本文中我们暂且不讨论技术培训的重要性,而是把关注点放在如何进行技术培训上。
一.培训目标
在一个理想的软件团队中,技术实力可以大致分为三种:一种是基础技术能力,这种能力可以认为是一个初级软件工程师应该具备的知识和技能;第二种是中级技术能力,可以认为是一定的分析设计能力;第三种是高级技术能力,可以认为承担软件全局的设计或架构的能力。
比如一个手机软件团队,通常大部分人在从事Android、iOS等具体平台下的编码工作,这部分工程师熟悉某平台的API接口、平台特性,可以完成对给定类的代码实现,也具有一定的网络、UI等知识,可以实现指定的功能,这可以被认为是一种基础技术能力。还有一小部分人承担了更复杂的更大粒度的模块开发,可以对复杂功能进行设计工作,并分解为更小的单元,可以指导其他成员的开发工作,可以看到代码中不合适的地方并进行重构,这可以被认为是中级技术能力。另有一位或几位负责软件全局的结构设计、质量保证等工作,对软件的质量属性有保证能力,这可以被认为是高级技能。
通过这样的分解,就可以进行针对性的培训目标设定了。如果软件中的低级bug较多,可用性降低,可能是在基础技能上需要加强,可以考虑由经验丰富的开发人员进行经验分享,或者针对特点问题进行重点剖析,从而提升基础技能。如果复杂功能的实现不够顺畅,可靠性降低,灵活性降低,可以寻找是不是功能的设计上不合适、类结构上不合理,耦合度是否太高,并针对性的进行中级技能的培训。当然,如果想提高架构等能力,就可以进行高级技能培训。
二.培训周期
在培训目标中说了很多,可见其太重要了,目标不对或没有目标的培训只是在浪费时间。在明确了培训目的以后,需要设定培训频度。这个就相对容易进行了,对基础技能的培训频度可以高一些,比如每周一次,对中级技能的培训频度可以略低一些,比如两周一次甚至更长,对高级的当然可以周期更长。另外也不必拘泥于固定周期,但固定周期往往能让被培训成形成习惯,所以还是建议这样进行。
三.培训内容
培训内容的选择就要根据自己的实际情况了,举个例子,比如进行Android平台开发的团队,可以进行Android平台本身的培训,也可以进行Java语言能力、OO设计、重构、设计模式等培训,这些一定要具体团队具体分析,要有针对性而不是盲目从众,否则会有费力不讨好的嫌疑,造成收效不高的结果。
四.培训讲师
培训师的选择最好是在内部产生,这样设计的内容更有针对性,甚至可以直接通过项目代码进行实际演示,往往事半功倍。这是重点的是内容设计,不仅要难易适中,更重要的还是针对性,不务虚,不泛泛。对有兴趣为大家分享一些知识的成员,也可以安排时间来作讲师,形成良好的交流氛围。记住,这是内部培训,形式不那么重要,重要的是高效的知识传达。即使请外部的培训师,也一定要在内容设置上把好关。
五.参加人员
参加培训的人员既可以是指定的,也可以是成员自愿的,当然也可以二者结合。重要的是不要遗漏目标受众。对于个别不愿参加的人员,可以通过建议等方式邀请参加。在这个过程中,一方面可以发现成员的技术取向,另一方面可以补充某些成员薄弱的知识环节,有利于知识体系的完整。
六.培训反馈
培训结果反馈是最容易忽视的一环,往往培训完了就结束了,但恰恰这才是最重要的一步。结果反馈不是随便填一张调查表,而是针对每位参加培训的成员进行回访,进行一对一的谈心和效果反馈,征求意见和建议,指导他在实际工作中的知识运用,并寻找对后续内容的期望。这种反馈未必每次都进行,但一定要进行,并且通过观察长期的bug数量等指标来评估培训的成果。
相信通过以上这些描述,我大体上能展示出技术培训的主要环节和实施方法,这些内容可以根据企业或团队特点进行灵活处理,但不管怎样,作为团队建设的重要环节,培训是低成本高收益的事,也是各团队负责人或技术负责人的一项责任,同时是成员取得团队认同和技术能力提升的重要方式,需要长期坚持,在潜移默化中团队的已经具有了超强的技术实力了。
——欢迎转载,请注明出处 http://blog.csdn.net/caowenbin ——
如何通过技术培训建设强有力的软件团队相关推荐
- 程序员度量:改善软件团队的分析学
<程序员度量:改善软件团队的分析学>前言 让我们不要太确信,我们没有错过一些重要的东西. --比尔·詹姆斯(棒球统计学家和作者),摘自"Underestimating the F ...
- 【原创】软件团队建设和管理--之我见
软件团队建设和管理--之我见 一个软件的成功需要一个或几个团队的心血去完成.由此可见团队是软件开发的核心.那么怎样才能让你的团队出色的发挥?只有三点 优秀的软件工程师.尊重每一个技术人员.简单的流程和 ...
- 软件团队建设和开发管理及十种需要掌握的关键技术
软件团队的建设和开发管理 毕业以后一直在从事软件工作,历经了10年坎坷,现在是一家IT企业的软件开发主管.在不断的摸索.失败.成功中,有不少的经验和教训,希望能和一些成长中的软件从业者分享. 软件组织 ...
- 软件团队的建设和软件开发管理[zz老秦]
软件团队的建设和软件开发管理 毕业以后一直在从事软件工作,历经了10年坎坷,现在是一家IT企业的软件开发主管.在不断的摸索.失败.成功中,有不少的经验和教训,希望能和一些成长中的软件从业者分享. 软件 ...
- 脚踏实地,自强不息——清华大学大数据软件团队2021年度先进个人风采展示
清华大学大数据软件团队为充分调动员工积极性和创造性,提升团队综合水平和综合竞争力,组织开展了2021年度"优秀员工"评选工作,团队从组织管理能力.工作完成效力.工作创新能力等方面进 ...
- 您尝试打开的文件_您是否尝试过重新打开软件团队的身份?
您尝试打开的文件 by Victoriya Kalmanovich 由Victoriya Kalmanovich 您是否尝试过重新打开软件团队的身份? (Have you tried turning ...
- 垂死病中惊坐起_我如何开始恢复垂死的软件团队的过程
垂死病中惊坐起 by Victoriya Kalmanovich 由Victoriya Kalmanovich 我如何开始恢复垂死的软件团队的过程 (How I started the process ...
- 构建开放的软件团队文化
文 / 许正华 伴随着软件开发敏捷化趋势的发展,"以人为本"的软件团队建设理念越来越得到广泛的重视,但在这方面的研究.探讨与实践则显得乏善可陈,现在是到了个体.团队.组织甚至是社会 ...
- 迪捷软件团队研发的国产替代MBSE系统建模仿真软件
近年来,系统工程的概念越来越火热.其中MBSE(基于模型的系统工程)是最受大家推崇的.在复杂系统和安全关键的开发领域,如果你不能说出一些跟MBSE有关的一些词儿,那么你是无法号称自己站在时代前沿的. ...
最新文章
- CSS3+jQuery实现时钟插件
- python人脸识别、人脸关键点检测、性别检测
- 智能合约重构社会契约(7)以太坊总结
- t-mobile频段_T-Mobile再次被黑客入侵:超过200万个帐号和地址可能泄漏
- VSS Get Latest Version 没有提示recursive的对话框解决
- 作者:谢华美(1976-),男,就职于中国人民银行征信中心数据部
- 这5款功能强大、堪称最良心的浏览器,简直好用极了!
- php 坏了怎么修复,winload.exe丢失或损坏怎么办
- SpringMVC中的Model和ModelAndView详解
- pythonflag=false_python学习:跳出while循环的用法 exit_flag = False while not exit_flag:
- Mac的3个个性化设置,你值得拥有!
- 联想收购方正,不是不可能
- JPEG文件格式介绍
- layer弹出图片的问题
- 阿布扎比和比利时的港口合作开展区块链贸易试点
- [4G+5G专题-142]: RF- JESD接口简介
- 基于jsp的电影订票网站的设计与开发
- Simulink建模:PID控制模型
- 随机过程学习笔记1:泊松过程
- 努比亚android版本游戏彩蛋,更畅快游戏 努比亚红魔手机获系统更新