优秀的java工程师该具备怎样的素质? java软件工程师应该具备哪些基本素质?

作者&投稿:年露 (若有异议请与网页底部的电邮联系)
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是class,object,interaction以及statediagrams。

2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams, networking,?multithreading,reflection,event,handling,NIO,localization,以及其他)。

3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。

4.如果你将要写客户端程序,你需要学习WEB的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWING,AWT,? SWT。你还应该对UI部件的JAVABEAN组件模式有所了解。JAVABEANS也被应用在JSP中以把业务逻辑从表现层中分离出来。

5.你需要学习java数据库技术,并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO,?CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。

6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如racle,mysql,mssqlserver。

7.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。

8.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。

9.你需要学习如何使用及管理WEB服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护WEB程序。

10.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。

11.你需要掌握各种流行中间件技术标准和与java结合实现,比如Tuxedo、CROBA,当然也包括javaEE本身。

12.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。

13.你应该学习如何利用JAVA的API和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC),SAAJ? (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),JAXM (JavaAPIforXMLMessaging),?JAXR(JavaAPIforXMLRegistries),或者JWSDP (JavaWebServicesDeveloperPack)。

14.你需要学习一门轻量级应用程序框架,例如Spring,PicoContainer,Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。

15.你需要熟悉不同的J2EE技术,例如JNDI(JavaNamingandDirectoryInterface),JMS? (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService), JMX?(JavaManagementeXtensions),以及JavaMail。

16.你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans, EntityBeans(包含Bean-?ManagedPersistence[BMP]或者Container- ManagedPersistence[CMP]和它的EJB-QL),或者?Message-DrivenBeans(MDB)。

17.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。

18.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。

19.你需要熟悉对不同有用的API和frame work等来为你服务。例如Log4J(logging/tracing),Quartz? (scheduling),JGroups(networkgroupcommunication),JCache (distributedcaching),?Lucene(full-textsearch),JakartaCommons等等。

20.你应该熟练掌握一种JAVAIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:)

21.JAVA(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。

22.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。

23.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。

24.你还需要紧跟java发展的步伐,比如现在可以深入的学习webwork2.0

25.你必需要对实际项目的开发流程有所了解,至少要有两个有实际应用价值的项目,而不是练习项目!因为现在企业看重的是你有没有实际的开发经验,真正开发经验的体现就是你做的项目,也就是有实际应用的项目!

素质????

仅对楼上的回答表示无语,这是需要一个过程的。。。

JAVA软件工程师应该具备哪些基本素质~

一:java软件工程师项目经验要求

1.一年以上正规项目开发经验

2.熟悉软件开发流程、体系结构,较好的文档能力及编码风格

3.至少熟悉OA、CRM、HR、ERP、电子商务中一种业务类型

二:java软件工程师职业素质要求

1.学习能力和主动性

2.团队协作和沟通表达

3.责任心和稳定性

三:java软件工程师平台技能要求

1.熟悉Eclipse开发工具,熟悉Weblogic安装部署

2.熟悉Linux基本操作

四:Java软件工程师技术要求

1.具有良好Java语言基础,面向对象基础

2.熟悉Struts、Hibernate、Spring等主流技术框架

3.熟悉Ajax、XML解析、Excel导出、文件上传、发送Mail等常见业务的实现

五:java软件工程师数据库技术要求

1.熟练掌握、运用SQL Server或者Oracle数据库

2.精通SQL语句,熟悉存储过程、视图、索引、事务处理等

3.能够根据具体业务和要求进行查询优化

六:java软件工程师客户端技术要求

1.精通HTML、CSS、XML、JavaScript等Web开发技术2

2.熟悉DIV+CSS网页布局,提供良好的视觉效果和用户体验

3.熟悉AJAX原理,掌握一种以上的AJAX框架(JQuery,Ext JS)

1.良好的编码能力。软件人员的一个重要职责是把用户的需求功能用某种计算机语言予以实现。编码能力直接决定了项目开发的效率。这就要求软件工程师至少精通一门编程语言,比如当前国内企业常用的C/C++、VB和国际上最流行的Java语言,熟悉它的基本语法、技术特点和API(应用程序接口)。  2.自觉的规范意识和团队精神。随着软件项目规模越来越大,仅仅依靠个人力量已经无法完成工作,因此,现代软件企业越来越重视团队精神。一般来讲,软件企业中的程序员可以分为两种,一种是程序“游击队员”,他们可能对编程工具很熟,能力很强,把编码编得很简洁高效,但却缺乏规范和合作的观念;另一种程序员编程不一定很快,但是很规范,个人能力不一定很强,但合作意识很好。第二种人更加适合现代软件企业发展的潮流。对于基础软件工程师来说,他们在企业中的角色决定了他们必须具有良好的规范意识和团队精神。  3.认识和运用数据库的能力。信息是以数据为中心的,因此与数据库的交互在所有软件中都是必不可少的,了解数据库操作和编程是软件工程师需要具备的基本素质之一。目前常用的数据库软件有甲骨文公司的Oracle数据库和微软公司的SQL Server等。  4.较强的英语阅读和写作能力。程序世界的主导语言是英文,编写程序开发文档和开发工具帮助文件离不开英文,了解业界的最新动向、阅读技术文章离不开英文,与世界各地编程高手交流、发布帮助请求同样离不开英文。作为基础软件工程师,具有一定的英语基础对于自身的学习和工作极有帮助。  5.具有软件工程的概念。基础软件工程师处于软件企业人才金字塔的底层,是整个人才结构的基础,虽然他们从事的工作相对于系统分析师和高级程序员要单纯一些,但是他们是整个软件工程中重要的一环,因此,基础软件工程师同样要具有软件工程的概念。从项目需求分析开始到安装调试完毕,基础软件工程师都必须能清楚地理解和把握这些过程,并能胜任各种环节的具体工作,这样的能力正好符合了当前企业对基础软件工程师的全面要求。  6.求知欲和进取心。软件业是一个不断变化和不断创新的行业,面对层出不穷的新技术,软件人才的求知欲和进取心就显得尤为重要,它是在这个激烈竞争的行业中立足的基本条件。软件工程师应具有较强的学习总结能力、需求理解能力和对IT新技术比较敏感,同时,掌握最新的IT实用技术。

成为一名优秀的软件开发工程师需要具备哪些能力?
答:软件开发工程师是当今社会最受欢迎的职业,所有大规模的IT企业和非IT企业对软件工程师的需求程度是不同的。特别是在信息化速度加快的今天,软件开发工程师成为了一个高薪的职位。那么,成为一名优秀的软件开发工程师需要具备哪些能力呢?下面昌平北京java软件开发为大家具体介绍。一、需求分析能力 对于软件...

合格的Java开发人员应该具备的能力?
答:2、代码编写规范化 外国知名软件公司的规则,Java代码变量命名,代码内标注格式,甚至嵌套中的行缩进长度和函数间的空白行数都有明确规定,云南java培训认为良好的编程习惯不仅有助于Java代码的移植和错误修正,也有助于不同技术人员之间的合作。3、测试习惯 在一些商业化的开发中,全职测试工程师是必不可...

java工程师的需要会什么?
答:java分为好几个方向的,这要看你要学哪一个。 java ME 是电子类产品的,已经不流行了,所以不用学了。 java SE 是做桌面应用的,可以用来开发游戏,也可以往android方向发展。 java EE 是企业级应用,用来开发网站,现在比较流行。 javaEE的话 一位优秀的Java开发工程师需要身怀以下5项技能:1、...

学习Java软件工程师要具备什么条件?
答:2)熟悉Linux操作系统 Linux是当今用作广泛的服务器操作系统。合格的java高级工程师必须具备熟练地Linux操作技巧,这也正是在企业面试中获得加分的重要指标之一。3)深入学习数据库技术 互联网公司对Java应用离不开数据库技术。任何一个大中型应用,数据库设计的好坏、数据库访问的效率直接决定了该项目的成败...

应聘java开发工程师需要哪些技术能力?
答:一般开发工程类的岗位,只要具备本科学历就可以了。具备扎实的基础知识(基础知识并不是我们所说的Java、前端的一些基本概念,而是更深层次的。以Java为例,要能深刻理解Java的多线程开发,熟练使用NIO技术优化网络编程,了解JVM的底层机制,具备底层性能调优的能力,这些技能往往被开发人员忽略。相关的项目...

互联网java高级工程师都什么要求(高级java开发工程师具备什么条件)
答:1、具有互联网分布式开发经验:熟悉Dubbo框架构建分布式服务,注册服务器zookeeper、缓存处理redis、消息中间件ActiveMQ等,熟悉maven库的操作;2、深入理解Spring、iBATIS、Hibernate、Struts等框架的设计思想和实现方式;3、精通J2EE、XML、WebService、分布式、多线程等高性能架构相关开发技术。4、精通主要应用...

java工程师需要掌握什么技能?
答:少走弯路,提高效率。学习的质量决定以后工作的薪资以及起点,所以还是应该重视起来。最终自学Java能就业的人基本具备以下几点:1、有超强的学习耐心及进取心 2、手不懒,代码写的足够多,熟能生巧 3、有一定的学习能力,善于自学善于自己解决问题 4、可以独立写一些简单的项目 ...

想成为Java软件工程师有什么要求
答:可以确定的是软件工程师的前途在未来的发展依然是不断升温的职业,比较需要有技术和良好前景的专业之一。JAVA应用程序开发 技能要求:熟练使用Struts2+Spring+Hibernate 掌握Jquery 掌握Java 熟悉Oracle 掌握xml/webservice 掌握OOD、OOP 基本文档写作能力 web、数据库方面的开发 ⒈计算机或相关专业本科以上学历...

学习Java软件工程师要具备什么条件?
答:1、适应Java语言 Java培训必然就离不开编程,这是一种与计算机进行交流的语言,是一种非人类语言,所以一定要有极强的逻辑性和运算性,要求程序员在编写的时候进行慎重的考虑。能够脚踏实地细心地研究一行行代码,具有较强的逻辑思维能力,同时有一个端正的学习态度和心态,这些都是从事Java工作的基础能力...