资源描述:
《程序员素质模型解析.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、计算机程序员职业素质模型职业简介:程序员(英文Programmer是从事程序开发、维护的专业人员。一般我们将程序员分为程序设计人员和程序编码员,但两者的界限并不非常清楚,特别是在中国。职业描述计算机程序员的工作范围是电子数据处理。他们用计算机语言编写代码,告诉计算机该做什么。总的来说,有两大类计算机程序员。一类是系统程序员,一类是应用程序员。系统程序员通过指令,控制从中央处理器到外围设备的整个计算机系统。应用程序员开发的软件则是专门用来处理某一种问题的。后者当中某些人可能会被指派为项目负责人,负责监督其他应用程序员的工作。根
2、据受教育程度、经验水平和职责范围,程序员可以分为初级和高级程序员。达到程序员的最高级职位以后,还可以转向其它领域寻求更好的发展。很多程序员更偏爱做软件系统分析,而不喜欢实际的编程工作;通常,计算机程序员会去参加培训或者进修,然后转向系统程序员或者系统分析员的职位。高级的计算机程序员和上层管理机构有很多的沟通,如果有兴趣的话,也可以转向编程部门或者其它相关部门的管理人员。还有的计算机程序员会转向其它的技术领域,比如计算机操作、硬件设计、软件工程或者网络工程等,如果有经验,还可以去数据系统中心工作。总之,有了编程的背景,发展的空
3、间非常广阔就业方向程序员就业范围应该是很大的。有的是软件工厂式的编程工作,有的是项目开发的编程工作,有的是用户单位维护类的开发工作。有的后台编程工作,有的是前端编程工作,有的是编制网站、有的是软件培训、有的是与硬件相关的汇编级编程工作,有的是数据库类编程和管理工作。随着软件专业化分工的加快,分工会越来越细,就业种类也就越来越多了。面对各种就业种类,如何去选择倒是一个仁者见仁智者见智的。只有先定下来就业方向,然后根据就业方向所要求的必须掌握的语言,确定自己要学的语言。例如,你想去做后台的编程工作,你就可能会选择C语言、数据库等
4、。如果你想去编写网站,你就会在C#、JAVA、PHP中进行选择。如果你想去做底层与硬件有关的编程,你就会去学习汇编和专业的单板机语言。市场状况当你自己不知如何选择的时候,可以从“唯利是图”角度出发,看看在程序员这个行当中,做什么职业收入最高,你可以通过google的方式,去反复比较,相对较高的职业。然后根据这个职业要求选择所需的编程语言。当然你可以从“技术至上”的角度出发,你可以通过google的方式,看看当前那语言最为流行,因为流行的程序往往体现这种语言的未来可持续的发展,当你选择了流行的语言的时候,这就意味着软件市场对这
5、种语言的程序员需求是比较大的,因此,就业的概率相对较高。但是,正是需求增加,在供过于求的情况下,竞争就会加剧,如果你没有更多的能力体现的话,就很难在竞争中胜出。当然,你也可以从“反向思维”,选择相对比较冷门的职业,由于冷门,竞争就会有所减弱,就业的概率同样会大大增加。素质要求团队精神和协作能力团队精神和协作能力是作为一个程序员应具备的最基本的素质。软件工程已经提了将近三十年了,当今的软件开发已经不是编程了,而是工程。独行侠可以写一些程序也能赚钱发财,但是进入研发团队,从事商业化和产品化的开发任务,就必须具备这种素质。可以毫不
6、夸张的说这种素质是一个程序员乃至一个团队的安身立命之本。文档习惯文档是一个软件系统的生命力。一个公司的产品再好、技术含量再高,如果缺乏文档,知识就没有继承,公司还是一个来料加工的软件作坊。作为代码程序员,必须将30%的工作时间用于写技术文档。没有文档的程序员势必会被淘汰。规范化的代码编写习惯知名软件公司的代码的变量命名、注释格式,甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定,良好的编写习惯,不但有助于代码的移植和纠错,也有助于不同技术人员之间的协作。测试习惯测试是软件工程质量保证的重要环节,但是测试不仅仅是测试工程师
7、的工作,而是每个程序员的一种基本职责。程序员要认识测试不仅是正常的程序调试,而要是要进行有目的有针对性的异常调用测试,这一点要结合需求理解能力。学习和总结的能力程序员是人才很容易被淘汰,很容易落伍的职业,因为一种技术可能仅仅在三两年内具有领先性,程序员如果想安身立命,就必须不断跟进新的技术,学习新的技能。善于学习,对于任何职业而言,都是前进所必需的动力,对于程序员,这种要求就更加高了。但是学习也要找对目标,一些小coding有些codingTO就是这样的coding上只是一些Cfans们,他们也津津乐道于他们的学习能力,一会
8、学会了asp,一会儿学会了php,一会儿学会了jsp,他们把这个作为炫耀的资本,盲目的追逐一些肤浅的,表面的东西和名词,做网络程序不懂通讯传输协议,做应用程序不懂中断向量处理,这样的技术人员,不管掌握了多少所谓的新语言,永远不会有质的提高。善于总结,也是学习能力的一种体现,每次完成一个研发