在阅读了阅读软件工程师职业规范后,我感到需要对以后所从事的软件和相关文档,负起检测,修正和报告错误的责任,一款新软件的开发,从开发初期的问题定义及规划到各个阶段的有效进行,整个软件项目的开发需要做到层层相扣。
面对飞速发展的技术,能自觉跟踪技术发展动态,积极参与各种技术交流、技术培训
和继续教育活动,不断改进和提高自己的技能,自觉参与项目管理和软件过程改进活动。能
注意对个人软件过程活动的监控和管理,积累工程数据,研究和不断改进自己的软件生产效
率和质量,并积极参与发展高效的团队软件过程管理,使各项软件产出,都能达到国际和国
家标准与规范。
社会上的大多数职业,倘若不能主动学习,不能自我进步,那么至少你将失去对于你来讲最
有价值的手段,用来获得高薪机会的手段
对软件工程师来讲,这一点尤其明显。一方面是技术的不断普及,一方面是公司对经验人员
的迫切需求。在开发领域甚至在任何其他领域一个默认的共识是才华横溢绝对不是你想象的
那么重要,从才华横溢到事业成功,要付出艰辛的劳动。你再去问问资深软件工程师,成为
资深工程师所需要的不是天份,而是1万小时定律支配下的时间和你的肝功能。
软件业是一个不断变化和不断创新的行业,面对层出不穷的新技术,软件人才的求知欲和进
取心就显得尤为重要,它是在这个激烈竞争的行业中立足的基本条件。软件工程师应具有较
强的学习总结能力、需求理解能力和对新技术比较敏感,同时,掌握最新的丌实用技术。
个合格的软件工程师,是真正理解了软件产品的本质及软件产品研发的思想精髓的人(个
人观点、欢迎探讨)。掌握软件开发语言、应用语言工具解决工作中的具体问题、完成目标
任务是软件工程师的主要工作,但从软件工稈师这个角度来看,这只是外在的东西,并非重
要的、本质的工作。
而软件测试一一作为软件开发过程中最后也是关键的一步,其把握着
软件质量关,在其中发挥着至关重要的作用,无论是对软件安全性的保障,还是软件功能性
的检验,都有着无可替代的地位。因此,要想让一款新的软件很好的满足市场的需求,得到
用户的认可,软件测试必不可少,只有在软件测试上下足功夫:在软件设计完成之后进行严
密的测试,才能发现软件在整个软件设计过程中存在的问题并加以纠正,使得软件质量有保
障
作为一些商业化正规化的开发而言,专职的测试工程师是不可少的,但是并不是说有了专职
的测试工程师程序员就可以不进行自测;软件研发作为一项工程而言,一个很重要的特点就
是问题发现的越早,解决的代价就越低,程序员在每段代码,每个子模块完成后进行认真的
测试,就可以尽量将一些潜在的问题最早的发现和解决,这样对整体系统建设的效率和可靠
性就有了最大的保证。测试工作实际上需要考虑两方面,一方面是正常调用的测试,也就是
看程序是否能在正常调用下完成基本功能,这是最基本的测试职责,可惜在很多公司这成了
唯一的测试任务,实际上还差的远那;第二方面就是异常调用的测试,比如高压力负荷下的
稳定性测试,用户潜在的异常输入情况下的测试,整体系统局部故障情况下该模块受影响状
况的测试,频发的异常请求阻塞资源时的模块稳定测试等等。当然并不是程序员要对自己的
每段代码都需要进行这种完整测试,但是程序员必须清醒认识自己的代码任务在整体项目中
的地位和各种性能需求,有针对性的进行相关测试并尽早发现和解决问题,当然这需要上面
提到需求理解能力。