首页 > 软件测试/ 正文
软件质量控制实践――Microsoft 篇(3)
2012-12-30 06:00:41 ℃
7. invest on test employees’ career 无论产品使用何种方式保障质量,人总是最核心最关键的因素。提高软件质量有无数种方式和无数个因素,如果非要说一个最最重要的方式,那就是激发测试工程师的工作热情。You can only achieve average by working hard, but passion is the one driving to excellence. 为了最大化激发测试工程师的潜能,微软为测试工程师设计一整套完善的职业发展计划。测试工程师主要有两个职业发展路线。一个是Individual Contributor (IC): 不管人,管技术。另外一个是Manager: 偏重于管人和项目。这两个路线没有好坏之分,因人而异。两个路线都是以技术能力为核心,也是加薪升职的最主要考虑因素。经理未必比个人挣钱更多,“Become a manager is not a promotion”。You are paid for what you cover。”what you cover”就像长方形的面积,面积大小有长和宽同时决定。VP管的很多(长),但是深度有限(宽)。而技术大牛管的很少(长),但是很深(宽),所以两个长方形的面积大小差不多。这也就是为什么 有些技术大牛一个人不管但是挣钱和VP一样多。下面是几个测试工程师常见的职位: SDET - 初级测试工程师 ,要求是:executor,如果有个问题需要解决,而且告诉你如何解决,你能够很好地把问题解决了。 SDET 2 - 中级测试工程师 ,要求是:designer,如果有个问题需要解决,你自己找出办法去解决。 Senior SDET - 资深测试工程师,要求是:planner,你自己去发现问题,然后找出解决办法。 Principal SDET - 首席 测试工程师, 要求是:thinker,能发现问题并且发现问题的共性,不仅解决问题而且避免问题出现。 对经理的要求也大致如此,除了技术上也要过硬外,还要求经理为手下的人尽可能创造机会以帮助他们成功。 另外微软鼓励测试工程师创造性思维,鼓励员工创建好的测试工具用来提高测试效率,好的想法也可以可以申请测试专利或发表论文,并且被邀请到国际性测试会议上做演讲。微软内部有一个测试工具库,有将近1万个测试工具。本人就有一个测试??具在微软内部50多个产品组广泛使用,我也多次做演讲,现在正打算open source。 最后,我总结的测试工程师必须具备的硬技术能力: 1、至少一门编程语言,比如 C++/C#/Java,最好也了解设计模式的基本概念,比如:open-close principle, design to interfaces, favor aggregation over inheritance, encapsulate by policy and reveal by need, etc… 2、至少一个脚本语言, 比如DOS batch, powershell, perl 3、熟悉测试基础,比如功能测试,性能压力测试,安全测试,本地化测试。 4、基本测试技能,比如等价类划分,边界值分析,黑白盒测试,组合测试,基于模型测试,探索性测试等 5、Xml 6、P/invoke 7、Reflection 8、Threading 9、Code coverage analysis 10、Network knowledge, such as TCP/IP, HTTP, HTTPS,WCF 11、Fault injection/dependency injection and mocking 还有微软鼓励测试工程师take responsibility, make a difference。鼓励员工在做好本职工作同时在某一项技术领域专的更深。比如前面提到的一些测试基础 (test fundamentals) 包含功能测试,性能压力测试,安全性测试,本地化测试,容错测试, TiP等等。可以鼓励测试团队的每一个人选一个领域去专研,把他培养成不仅是产品组里的go-to person, 而且成为公司内乃至更大范围的领域专家。这不仅对产品的质量有帮助,更是对员工本身职业发展的极大激励。工程师是一群特殊的人类,如果一直重复做一件事(比如本职工作),很容易厌倦失去兴趣;相反越是有难度,有挑战,有影响力的工作,越是激发工程师一定要搞定,做好的斗志和恒心,哪怕是没有任何报酬,不为别人,为的是自我价值的实现。英语里有句话:it’s not what you have to do make you success, it’s what else you do . that will make a difference. 所以不仅仅把本职工作做好(这是最低要求了),更进一步将会使你脱颖而出。“更进一步”不是指你的本职工作,也不是让你加班加点,而是指那些自己喜欢的可以实现自我价值,同时对产品质量有深刻影响的东西。没有人逼你做这些东西,你完全可以选择按部就班或平平庸庸。最后引用功夫熊猫里的一句话立志:It’s not about where you came from or what you were, it’s about what you choose to be。所以,what you choose to be? 好了,关于微软的话题就此打住。感觉好像在写长篇小说,没完没了,越聊话题越多。:) 小结,英语里面有句话“little steps lead to big change”。我觉得这句话用来描述微软走过的测试路最恰当不过了。微软有几百个产品组,发布过几千个产品。很难有一个或几个因素决定产品的质量。但是上面几个是我个人认为是诸多因素中的几个至关重要的。微软是世界上最伟大的软件公司…..(没有之一)。尤其是在测试方面,微软的投资比其它任何公司都多,在软件测试理论和实践上绝对是首屈一指的领先者。微软就像一个健壮的中年人,而google像一个20岁的青年,facebook可能只是teenager。 但是google,facebook这些公司起源于互联网应用服务,在互联网应用服务质量管理方面的确有很多出色的实践。所以下一次和大家探讨:提高软件质量实践――Google 篇。相关链接:软件质量控制实践――Microsoft 篇(1)软件质量控制实践――Microsoft 篇(2)
- 上一篇:软件质量管理之痛
- 下一篇:质量保证漫漫谈之SQA组织的建设
更多郑州软件开发编程培训学校哪家好,郑州高中生软件培训班哪家好,北大青鸟郑州校区在哪里,郑州计算机软件开发学校排名好的,郑州大学生java培训学校有哪些,河南软件开发学校哪家教学好相关文章
- Java多线程notify ifyall的区别
- 如何进行Java EE性能测试与调优
- 集成测试的几个思考点
- 一次软件测试的电话面试分享
- 反汇编技术在代码测试中的应用
- 敏捷开发过程中的测试开发
- 浅谈随机测试
- 我的软件测试之旅:(7)启程——Scrum中的测试工作者
- 我的软件测试之旅:(4)并行——自动化回归测试
- 本地化测试
- 基于代码覆盖数据分析的代码去冗优化
- 三年QA工作的感想与体会
- 谈谈CMM评审的过程改进
- 关于软件质量的思考——不只是测试
- 怎样把QA的工作做好?
- 实时控制软件的质量
- 软件测试过程改进
- 几种测试工作量的估算方法
- 现在软件测试工程师专业很好找工作吗?
- 一键还原和重装系统有什么不同
- 显示器漏光介绍
- 32位系统和64位系统有什么区别
- 电脑DIY五忌
- 常见笔记本进入BIOS方法大集合
- 怎么打开隐藏文件?
- 测试下MySQL 的加密的性能怎么样
- 女生学计算机软件测试好不好
- 你了解软件测试吗,软件测试行业状况知多少?
- 郑州软件测试培训学校哪家好
- 搜索
-
- 热门标签