大家好,如果您还对程序员分为哪些种类不太了解,没有关系,今天就由本站为大家分享程序员分为哪些种类的知识,包括程序员有哪些种类的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

本文目录

  1. 软件工程师分有哪些类
  2. 程序员有哪些种类
  3. 软件开发都有哪些

软件工程师分有哪些类

1.程序员

这里所指的程序员不包括高级程序员,在互联网时代,程序员职位的提供也更多地与网站相关。现在大约38%的程序员职位都是关于网站动态页面编码与设计的,如ASP、JSP、PHP、ASP.net等;17%的程序员职位是关于Java编程的,而VC++大约占了13%,这三类已经占据了普通程序员市场需求的三分之二强。一般来说,普通程序员的职位要求都有如下特征:精通所需要的编程语言,有1-3年的工作经验;精通一类数据库的开发技术,其中网站动态页面程序员岗位以要求SQLServer/MySQL的居多,也有部分要求DB2的,Java程序员岗位以要求Oracle的居多,普通程序员一般对学历要求不高,大学专科即可。由于应用领域的不同,有些有行业要求的程序员职位还有其他的少许要求。另外,该职位有少数的公司接收应届本科毕业生。

求职建议:应聘此类职位,你以往的作品是最好的通行证,比如你以前工作设计的软件系统、网站系统(B/S软件系统),或者学生时代制作的个人网站和小软件,另外还要注意拿出的应当是具有良好编码风格的作品,别让你未来的老板读不懂。

2.高级程序员

高级程序员一般都被用于开发大型的应用项目,现在约60%的高级程序员职位都要求应试者是Java程序员,另外有少数要求VC或PHP领域3年开发经验。一般来说,高级程序员职位都要求求职者具备如下素质:在精通所需要的编程语言同时,要精通两种数据库技术,以Oracle和SQLServer居多。同时多数公司要求应聘者具备Unix/Linux开发经验。高级程序员一般要求本科学历,同样由于应用领域的不同,一般还有其他的开发经验要求,有的还有特殊外语要求。需要注意的是,该职位一般不接收应届毕业生。

求职建议:此类职位应聘侧重于两个方面,一个是以往的工作项目经验,另一个是团队合作精神,这两个方面可以分别在简历作品和面试中得以体现。

3.高级软件工程师

对于这个层次的职位来说,己经不会简单地要求熟悉某种计算机语言,转而要求应聘者对面向对象开发以及Web开发都要精通每类开发中的至少一种语言技术。此职位一般要求3年以上工作经验并全程参与过大型项目开发、设计和构架的经验,同时一定要精通UML,数据库开发至少精通两个,以SQLerver,DB2,Oracle居多。特别要注意,由于要面对客户采集需求或者领导团队进行开发,这个层次的职位对应聘者的沟通和协调能力要求较高,并且一般不接收应届毕业生。

求职建议:简历中在你带领下开发项目的规模、种类、数量将是你的求职砝码,在面试中将主要考核你的沟通和团队组织能力。

4.软件测试工程师

这是一个比较乐意接收应届毕业生的职位。一般来说,面向应届毕业生的职位对计算机语种没有过多的要求,有些要求应聘者学过特定的课程,并对应聘者的英语水平要求较高,一般都要求英语达到六级水平或者可以说出流利的口语,有的公司对学校和在校成绩也有要求。对于面向非应届毕业生的职位来说,对语种同样没有过多的要求,但一般要求有2年左右的工作经验,同时对各种常见的测试方法和技术要熟悉,还要熟悉各类开发文档的写作与阅读,另外学历要求一般为本科。

求职建议:注意应届生应聘这个职位时,应该在简历中体现自己在学校的学习成绩优秀,以及应聘这个职位的优势。在面试中要体现自己的严谨的态度,因为软件测试是绝对不容马虎的。

5.数据库工程师

数据库工程师主要从事数据库开发和维护工作,在招聘时对国际企业认证比较看重,同时对经验要求也较高,一般都是面向当前主流数据库的,主要是Oracle,SQLServer、Sybase和DB2.一般来说,要求应聘者精通一种数据库技术,同时有3年左右的数据库项目工作经验。由于数据库涉及到企业生存,所以数据库相关的职位对应聘者的文档能力和流程规范化习惯要求很高,并要求应聘者具有一定的需求分析和独立、快速解决问题的能力,另外要求应聘者对数据库所处的操作系统及应用该数据库的编程语言也很熟悉。数据库职位对外语要求不高,另外学历一般以本科为主,同时该职位一般不接收应届毕业生。

求职建议:应聘这个职位的要点就是要体现出你高深的技术和丰富的经验。一般来说,如果你能让对方相信你拥有很好的处理紧急事件的能力,将更容易应聘成功。

6.系统集成工程师

严格地讲,系统集成是一个以某个应用领域或公司的计算机网络实施为重点,同时兼有计算机软硬件的安装配置,并辅之以维护的工作。但考虑到一般用人单位都把该职位编入软件类人才的招聘计划,所以笔者在此也简要介绍一下。一般该职位要求应聘者具有某种系统3年左右的集成经验,有些行业有着相关的行业背景或项目经验要求,技术上要求应聘人员对各类网络设备硬件的调试、配置等工作环节熟悉,同时对系统所用的数据库及操作系统可以进行熟练的安装、配置及管理调试(注意这里的技术要求一般不再是开发),同时要求具有较强的规范文档撰写能力。有时出于维护需要,还要求应聘者有某种脚本语言的开发能力。该职位对英语〔涉外公司除外)和学历的要求不是很高。部分公司接收应届毕业生,系统实施工作一般不招聘应届毕业生。

求职建议:对于非应届人员,要着重体现出你的集成经验丰富,同时你所做过的项目运行稳定;如果你是应届毕业生,曾经在校园网担任过维护或类似的工作,那么将这些写入你的简历,它将提高你的应聘成功几率。

综上我们可以看出,在软件行业中,测试、维护和初级开发类的工作岗位一般要求不高,适合于经验较少的人或者应届毕业生,其他岗位则一般需要2-3年左右的工作经验。因此在找工作时,还需有的放矢,才能增加求职的成功率。

http://805509282.qzone.qq.com/infocenter?ADUIN=805509282&ADSESSION=1241571782&ADTAG=CLIENT.QQ.1881_QQUrlReportBlankZone.0

程序员有哪些种类

程序员可以分为很多种,像Unix程序员、Windows程序员,或是C++程序员、Delphi程序员,等等。今天我想谈的是Web程序员,一名真正的Web程序员应该懂得那些方面的知识,应该注意学习哪些东西。

也许有些朋友会说,我知道Asp、Jsp,会做网站、会做bbs,这应该叫Web程序员了吧。确实,我承认,这些技术是一名Web程序员应该具备的;但是,你如果仅懂得这些,却只能叫做Asp程序员、Jsp程序员,而不是真正意义上的Web程序员。现在的世界是属于Internet的,大部分的应用基于Internet,大家可以想想,像Yahoo、Microsoft、Amazon那样的网站,其访问量之大、应用之复杂,需要什么样的技术才可以支撑,难道仅仅是硬件的功劳么。

我想在Windows平台下来谈谈Web程序员应该掌握的技术

1.首先,就是上面提到的各种脚本,asp、jsp、php等等,这些东西大同小异,基本可以举一反三。

2.数据库,

相信做Web的人肯定用过,像Access、SqlServer、Oracle。很多人会用各种数据库,但是仅限于写一些sql,select、update、insert,用ADO来操作,如果这样,就算会用100种数据库又有什么用呢?

你应该考虑用户量、访问速度、内存消耗,这些东西和你的sql密切相关,我经常见到很多分页程序根本不去考虑数据库中有多少条数据,统统select出来,很明显,当你从数据库中查出1万条数据和100条数据,占用的内存是不同的。

另外,数据库连接池和事务机制是非常重要的,应该知道数据库用什么来保证事务,连接池如何实现,这些都是商务应用的关键。譬如,目前很多的应用服务,像weblogic、MTS,都包含事务处理,可以说好的事务处理决定了他们的竞争力。

3.组件技术

我想是现在的Web应用推动了组件技术的发展。以前,从老式的静态库、动态库(dll),到现在的COM/DCOM,再到正在兴起中的WebService;从单机调用,到基于内部网的分布式调用,到现在基于Internet的分布式计算。现在的应用都是基于组件的n层结构,最明显的就是COM和JavaBean。

这些东西体现了软件架构的发展,以前是基于单机的应用,然后是C/S结构,到现在的B/S结构。我记得李维曾经说过,程序员一定要注意软件技术的发展趋势,只有这样,才不至于被淹没在技术的洪流中。我想,作为Web程序员,一定要明白COM的原理,如何实现这种调用、如何进行分布式调用。说实话,我觉得COM还是比较复杂的,否则微软为什么要提供ATL和VB呢,要搞明白,应该学学C++,因为VC中提供的ATL库可以很明显的说明COM的内部运行机制。

4.网络技术

这可以说是Web程序员最应该懂得东西。起码,应该知道Web服务器的机制,要明白Http协议。就拿IIS来说,要懂得web应用程序运行的进程安全和IIS的关系,懂得ISApi的作用。

如果有时间,就看看TCP/IP,看看winsock,这些都是底层的网络的东西。

我所说的这些都是基于微软技术下的东西,其他的像Java方面的东西都可以对照参考,就不多说了,这也是我这几年来的一些心得。总之,学海无涯,每当接触一些新的东西,就会发现自己的不足,同时也就觉得基础知识的重要。说实话,像我们做应用开发,用别人的东西,在现在这种情况下,新的技术层出不穷,稍不注意就会被甩开,这也是没有办法的事情。

软件开发都有哪些

软件开发是一项包括计划、分析、设计、编码和测试、维护系统工程。

一、计划

对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。

二、分析

软件需求分析就是对开发什么样的软件的一个系统的分析与设想。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。

三、设计

软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。

四、编码

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。

五、测试

软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。

六、维护

维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。

扩展资料:

软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。

软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。

参考资料来源:百度百科-软件开发

关于本次程序员分为哪些种类和程序员有哪些种类的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

点赞(7)

猜你喜欢

相关推荐

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部