当前位置:文档之家› 高级软件工程师需要掌握的技能

高级软件工程师需要掌握的技能

高级软件工程师需要掌握的技能
高级软件工程师需要掌握的技能

j ava高级工程师需要掌握的技术

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数据库技术,如JDBCAPI并且会使用至少一种persistence/ORM

构架,例如Hibernate,JDO,CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。

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

7.你需要学习JAVA的沙盒安全模式(classloaders,bytecodeverification,managers,policyandpermissions,

codesigning,digitalsignatures,cryptography,certification,Kerberos,以及其他)还有不同的安全/认证API,例如JAAS(JavaAuthenticationandAuthorizationService),JCE (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及JGSS (JavaGeneralSecurityService)。

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

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

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

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

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

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

JAXR(JavaAPIforXMLRegistries)。

14.你应该学习如何利用JAVAAPI和工具来构建WebService。例如

JAX-RPC(JavaAPIforXML/RPC),SAAJ (SOAPwithAttachmentsAPIforJava),

JAXB(JavaArchitectureforXMLBinding),JAXM(JavaAPIforXMLMessaging),

JAXR(JavaAPIforXMLRegistries),或者JWSDP(JavaWebServicesDeveloperPack)。

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

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

17.你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:

Stateless/StatefulSessionBeans,EntityBeans(包含Bean- ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者

Message-DrivenBeans(MDB)。

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

19.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆

的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。

20.你需要熟悉对不同有用的API和frame work等来为你服务。例如

Log4J(logging/tracing),Quartz (scheduling),JGroups(networkgroupcommunication),JCache(distributedcaching),Lucene(full-textsearch),JakartaCommons等等。

21.如果你将要对接或者正和旧的系统或者本地平台,你需要学习JNI (JavaNativeInterface) and JCA (JavaConnectorArchitecture)。

22.你需要熟悉JINI技术以及与它相关的分布式系统,比如掌握CROBA。

23.你需要JavaCommunityProcess(JCP)以及他的不同JavaSpecificationRequests(JSRs),例如Portlets(168),JOLAP(69),DataMiningAPI(73),等等。

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

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

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

27.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如

RUP(RationalUnifiedProcess)andAgilemethodologies。

28.你需要能够深入了解加熟练操作和配置不同的操作系统,比如GNU/linux,sunsolaris,macOS等,做为跨平台软件的开发者。

29.你还需要紧跟java发展的步伐,比如现在可以深入的学习javaME,以及各种java 新规范,技术的运用,如新起的web富客户端技术。

30.你必需要对opensource有所了解,因为至少java的很多技术直接是靠开源来驱动发展的,如java3D技术。

软件工程师应该具备的素质

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

高级软件工程师简历

高级软件工程师简历 以下是关于高级软件工程师简历范文的文章! 姓名:XXX 三年以上工作经验 | 男 | 31岁 居住地: 电话: E-mail: 最近工作 [3 年3个月] 公司:XXX集团(上海)有限公司 行业:计算机软件 职位:高级软件工程师学历 学历:硕士 专业:计算机信息管理 学校:上海复旦大学 目前年薪: 10-15万人民币 基本工资: 10万元/年 求职意向 到岗时间:一个月内 期望月薪: 10000-14999/月 目标职能:电子商务,软件工程师,系统工程师,数据库工程师/管理员,网络工程师,技术支持/维护工程师

工作经验 20XX /8--至今:XXX集团(上海)有限公司(500人以上)[ 5年3个月] 所属行业:计算机软件 软件事业部高级软件工程师 部门核心人员,担任项目主管 20XX /9--20XX /7:上海XXXX集团 [ 1年10个月] 所属行业:计算机软件 软件开发部软件工程师 任职期间参与了3个软件项目的开发。 教育经历 20XX /9--20XX /7 上海大学电子商务本科 主修课程:银行信息管理系统、管理信息系统、数据库技术、ERP、网络营销、工商管理模拟、管理中的定量方法、商务沟通、会计学、证券投资学、西方经济学等 所获奖项 20XX /10 上海大学人民奖学金三等校级 20XX /10 上海大学人民奖学金三等校级 社会经验 20XX /10--20XX /12 上海大学校学生会外联部 从事校学生会的外事接洽事宜,与兄弟院校建立长期稳定的合作伙伴关系,并在某些事务上展开合作

语言能力 英语 (熟练) 培训经历 20XX /3--20XX /5 上海新东方学校 BEC高级 培养了一定的商务英语听说读写能力,商务写作能力良好 证书 20XX /10 大学英语六级 20XX /3 大学英语四级 项目经验 20XX /7--至今 XXX保险核心业务系统项目 软件环境 Windows XP 开发工具 Graph talk 项目描述使用XXX公司的FUTURE FIRST平台,搭建XXXX 核心业务寿险系统。 责任描述担当项目主管,以及部分业务的编码与测试IT技能 技能名称熟练程度使用时间 DreamWeaver 熟练 6月 Oracle 熟练 6月 MS Office 精通 20月 自我评价

软件工程师职业规划

一、软件工程师的职业优势 1、最具增值潜力的职业,掌握企业核心数据、软件技术,具有不可替代的竞争优势。 2、新型软件人才缺口大,27%的行业增长速度导致软件人才年缺口达30万,高薪高福利成为必然。 3、可实现专业零基础入行,6-18个月的强化训练和职业化引导,就可成为企业急需的技能型软件人才。 4、就业面广,一专多能,实践经验适用于各个领域。 5、增值潜力大,职业价值随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨。 6、职业发展前景广阔、软件工程师到项目经理仅一步之遥,从容晋升Manager。 二、软件工程师解读 何谓软件工程师,软件工程师是通过学习和训练,掌握软件技术的理论知识和操作技能的软件技术人员。软件工程师能够从事计算机软件、网站的设计、开发、维护和测试工作。 具体来说,我们可以从企业技术部的岗位体系中作一些了解。企业(或政府)信息化过程中需要以下四种人: 1、企业信息化管理:负责信息化建设中的目标与方案决策,信息化建设、升级、更新; 2、工程技术人员:负责软件系统的分析、设计、开发、数据库、使用、维

护和升级; 3、运行维护岗位:负责软件开发代码的编写以及基本的开发和测试; 操作应用人员::主要应用软件进行日常的管理工作。 4、操作应用人员 一般来说,IT企业的IT技术职位根据职能可以分为管理岗位:企业信息主管CIO、总监、IT经理、项目经理等;工程技术岗位:规划设计师、网络工程师、系统工程师、软件工程师和数据库工程师等;运行维护岗位:数据库管理员、系统管理员、程序员等;操作岗位:办公文员、CAD设计员、网页制作员、多媒体制作员等。 根据企业规模大小,规模较小的企业,一个岗位可能涵盖几个岗位的内容,系统管理员既要负责系统管理,又要承担网络管理;大企业则会分的比较专业,有软件设计师、系统集成工程师、网络工程师、程序员和系统测试工程师等。 软件工程师的三个进阶:

2018年软考上半年数据库系统工程师考试真题(下午题)(同名17553)

2018年软考上半年数据库系统工程师考试真题(下午题)(同名17553)

2018年上半年数据库系统工程师考试真题(下午题) 试题一(共15分) 阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。 【说明】 某医疗护理机构为老人或有护理需求者提供专业护理,现欲开发一基于Web的医疗管理系统,以改善医疗护理效率。该系统的主要功能如下: (1)通用信息查询。客户提交通用信息查询请求,查询通用信息表,返回查询结果。 (2)医生聘用。医生提出应聘/辞职申请,交由主管进行聘用/解聘审批,更新医生表,并给医生反馈聘用/解聘结果;删除解聘医生出诊安排。 (3)预约处理。医生安排出诊时间,存入医生出诊时间表;根据客户提交的预约查询请求,查询在职医生及其出诊时间等预约所需数据并返回;创建预约,提交预约请求,在预约表中新增预约记录,更新所约医生出诊时间并给医生发送预约通知;给客户反馈预约结果。 (4)药品管理。医生提交处方,根据药品名称从药品数据中查询相关药品库存信息,开出药品,更新对应药品的库存

以及预约表中的治疗信息;给医生发送“药品已开出”反馈。 (5)报告创建。根据主管提交的报表查询(报表类型和时间段),从预约数据、通用信息、药品库存数据、医生以及医生出诊时间中进行查询,生产报表返回给主管。 现采用结构化方法对医疗管理系统进行分析与设计,获得如图1-1所示的上下文数据流图和图1-2所示的0层数据流图。

【问题1】(3分) 使用说明中的词语,给出图1-1中的实体E1~E3的名称。【问题2】(5分) 使用说明中的词语,给出图1-2中的数据存储D1~D5的名称。

一个优秀的软件工程师应该具备什么素质

一个优秀的软件工程师应该具备什么素质 工程的本质不是创造,而是去风险化。工程是关于如何低成本、高效率、按时按量完成既定任务的。所以判断一个工程师是否优秀,并不是他多有创意多有名气,而是看他有多稳,看他能多GettingThingsDone,中文就是「靠谱」。 有时候一个好的解决方案,未必采用了最新的技术和框架,而是看上去朴实无华,功力都包涵在背后的细节里。就像顶尖高手打的斯洛克台球,每一杆都平淡无奇,只是因为上一杆的回球太到位。 有同学问,那我工程做的太好,岂不是没有机会遇到一些高难度挑战了么?放心,一般公司都雇佣了产品经理来帮你制造高危事件。同样的,一个好的工程师,会选择最适合需求和团队的方案,考虑开发效率和系统效率的均衡,从而已达到最优效果;而不是整天和别人去争论什么语言最好、哪些框架过时了。 工程的另一个要求是进度控制和质量控制。在项目立项之后动工之前,对要做的事项作出详尽的规划,对未来一到两周的工作给出细致的排期,这是进度控制的基础。 代码的及时入库与合并,自动化测试和每日构建,CodeReview和文档编写,这些看似无关紧要的习惯则决定了项目质量。不幸的是,很多程序员把这些工程上至关重要的东西当成垃圾,视为对他们「创造力」的压抑。他们总是以创造力为借口去寻求自身的自在,比如上班不带胸牌不打卡,中午休息时间在公司看视频打游戏,最好可以远程上班,项目到期之前再来检查进度,公司不要用统一框架,只有傻X才写文档。 对职业的理解偏差和工程能力上的荒芜,培养了大批能写代码但死活写不好代码的「码

农」,反而让那些有着彪悍工程能力和良好习惯的程序员变得奇货可居。 点击咨询

高级软件工程师月考试试题A卷带答案

高级软件工程师考试试题(A卷) 1、下哪种命名空间中的类型用于创建Windows GUI应用程序。(选择1项) D、System.ServiceProcess 2、判断这PL/SQL代码块:(选择1项) BEGIN FOR i IN 1..6 LOOP IF i = 2 OR i = 3 THEN n ull; ELSE INSERT INTO example(o ne) VALUES (i); END IF; ROLLBACK; END LOOP; COMMIT; END; 有多少行被插入到表EXAMPLE ? A、0 B、1 C、2 D 3 3、链表具有的特点是:(选择3项) A、不必事先估计存储空间 B、可随机访问任一元素 C、插入删除不需要移动元素 D、所需空间与线性表长度成正比 4、序列图描述对象是如何交互的并且将重点放在消息序列上。(选择1项) A、正确 B 、不正确

5、一个XML必须有DTD或Schemas (选择1项)

A、正确 B、不正确 6、动态网站需要的技术为。(选择3项) A 、CGI B 、 HTTP C 、 ASP D PHP 7、Linux文件名的长度不得超过()个字符?(选择1项)。 A、64 B、128 C、256 D 512 8、在Struts中实现页面跳转主要通过什么方法来实现?(选择1项) A server.transfer B response.redirect C mapping.findForward D response.sendRedirect 9、EJB的优点有哪些?(选择2项) A、技术领先 B价格低廉 C性能优越 D强大的容器支持 10、在使用匿名登录ftp时,用户名为()?(选择1项) A log in users B、a nonymous C、r oot D guest 11、你判断下面语句,有什么作用?(选择1项) GRANT update ON inven tory TO joe WITH GRANT OPTION; A、一个系统权限被授予用户JOE

软件工程师的考试要求

软件工程师的考试要求 软件工程师证书,是有社会培训机构通过培训考核发给的有关证书。与国家计算机软件水平资格考试不一样。 如JAVA如件工程师,其培训内容包括: 初级部分: 1. Java 面向对象程序设计、Java API使用、数据结构及算法基础、Java高级类特性、异常处理; 2. AWT及Swing图形程序设计、流、网络程序设计、对象序列化、Applet、多线程程序设计、Java应用国际化基础; 3. Java桌面系统项目开发; 4. Java编程基础提高课程:反射机制、设计模式(I)、正则表达式,Java SE 5.0新特性等; 5. 基于Oracle的数据库开发及管理、数据库设计、标准SQL、PL/SQL编程; 6. JDBC、JSP2.0、Servlet2.4、JavaBean编程;Tomcat服务器使用、Jbuilder及Eclipse 等集成开发环境; 7. Linux操作系统中的Java程序开发、Linux系统管理; 8. Java Web编程提高课程:JDBC进阶、高效分页处理、过滤器使用技巧、Struts中动态表单验证、DispatchForm等; 高级部分 1. MVC设计模式、Struts架构核心工作机制、国际化、验证框架、Struts Taglib、ORM基础、基于Hibernate的企业级应用; 2. JavaME手机游戏设计、界面程序设计、数据库程序设计、手机短信、多媒体短信(彩信)开发; 3 .JavaEE核心技术、XML、Web Service、异构系统整合、分布式应用开发、WebLogic和JBoss等应用服务器; 4 .CMM、UML与系统建模和设计、Rational Rose、软件工程和软件过程模型、版本控制及设计模式;

嵌入式软件开发工程师一般应具备哪些能力

1 华清远见嵌入式培训官网:https://www.doczj.com/doc/fc6279561.html, 嵌入式软件开发工程师一般应具备哪些能力 近年来程序员的工作很受人喜爱,其中作为嵌入式开发的高级工程师更是很多学习者梦寐以求的岗位。怎么样才能成为一名嵌入式开发工程师呢?今天华清远见小编所讲内容就是从程序员的5个共同特质谈论这个问题,那接下来就简单来了解下成为一名优秀的程序员到底需要具备哪5个特质。 具备特质一:发展全面 想要深入了解一门技术虽然很好,但是在现实生活中,这样的问题从来都是无法依靠一种技术就能够解决,在一个团队当中,即使你充当的角色是专业的技术人员,但你仍然需要明白你所掌握的技术如何能够更好的应用在整个项目、硬件和网络中,你还需要以多种不同的方式来为项目做出贡献。 具备特质二:要学会享受解决难题的过程 当然我想大家应该都非常了解应用开发其实并非一蹴而就,在开发的整个过程中,要搞清楚代码无法编译的原因是什么,是由于什么而导致故障以及如何来应对某些环节当中产生的问题,这些种种问题都需要你有解决问题的能力,一定要有坚持不懈的理念。 具备特质三:一定要热爱学习 在我们熟知的生活、工作当中,我们随处可见技术在不断的演进,你今天使用的工具和语言,在数年之前你想都不敢想,更谈不上如何来应用,所以,应对这种不断演进的技术,我们应该不断的学习新技能,这样才可以更好地参加未来的项目。 具备特质四:要善于沟通 对于程序员来讲,工作不仅仅是和技术打交道,作为程序员更要学会如何与商户交流,从而更好的理解他们对应用的相应需求。 具备特质五:自信 在开发过程中不只有一种方法,所以不管你的想法有多么出色,如果你选择把想法藏在心里,那么这些想法就真的是毫无价值,所以作为一名优秀的程序员,对自己的想法一定要非常自信,在设计讨论阶段一定要敢于说出自己的意见,这样才更有利于产品架构的设计。 上述就嵌入式程序员所具备的五大共同的特质。当然这五大特质之前你必须有过硬的技能,当前很多人通过华清远见学习具备了开发能力。如果想要参加嵌入式开发的朋友选择华清远见是明智之举 keywords:(嵌入式软件开发工程师,嵌入式软件开发工程师一般应具备哪些能力)

高级软件工程师月考试试题A卷带答案

高级软件工程师考试试题(A卷)1、下哪种命名空间中的类型用于创建Windows GUI应用程序。(选择1项) D、 2、判断这PL/SQL 代码块:(选择1项) BEGIN FOR i IN 1..6 LOOP IF i = 2 OR i = 3 THEN null; ELSE INSERT INTO example(one) VALUES (i); END IF; ROLLBACK; END LOOP; COMMIT; END; 有多少行被插入到表 EXAMPLE ? A、0 B、1 C、2 D、3 3、链表具有的特点是:(选择3项) A、不必事先估计存储空间 B、可随机访问任一元素 C、插入删除不需要移动元素 D、所需空间与线性表长度成正比 4、序列图描述对象是如何交互的并且将重点放在消息序列上。(选择1项) A、正确 B、不正确

5、一个XML必须有DTD或Schemas。(选择1项) A、正确 B、不正确 6、动态网站需要的技术为。(选择3项) A、CGI B、HTTP C、ASP D、PHP 7、Linux 文件名的长度不得超过( )个字符?(选择1项)。 A、64 B、128 C、256 D、512 8、在Struts中实现页面跳转主要通过什么方法来实现?(选择1项) A、 B、 C、 D、 9、EJB的优点有哪些?(选择2项) A、技术领先 B、价格低廉 C、性能优越 D、强大的容器支持 10、在使用匿名登录ftp时,用户名为( )? (选择1项) A、login users B、anonymous C、root D、guest 11、你判断下面语句,有什么作用?(选择1项)

JAVA工程师个人职业规划

JAVA工程师个人职业规划 “选择重于努力,方向重于能力。”很多职场人都缺乏借助职业导师的职业智慧和职场经验为自己拨开职场迷雾,导航职业方向的意识。钟总监建议,有好像王敏这种职业困惑的职场人,最好向具有同行业职场经验的职场导师寻求职业指导,借助导师们的职业智慧和职场经验让自己少走弯路。 1、选择比能力重要 通常,作为开发工程师,一般会有以下几种职业走向。 ①走技术路线:技术高手、技术专家、软件架构师。 ②走管理路线:项目经理、部门经理、技术总监。 甚至,从事销售顾问、培训讲师、自己创业都是一种可能。 其实,这些职业当中的每一种,都有一条非常宽敞的职业发展之路,关键在于作为还是一个开发工程师的你,将会做出什么样的选择,哪怕我们想从事软件产品的市场和销售工作,带着对技术的理解,也必将做出自己独特的一面。

但无论如何,我们都要做出一个选择,给自己定一个目标。目标对人生有着巨大的导向作用。成功,在事业起步的时候仅仅是一种选择,你选择什么样的目标,就会有什么样的人生。不少朋友最大的痛苦就是不知道自己适合做什么,该干什么,该走什么路,不满足于现状又不得不沉沦于现实。 所以,先认清“正确的结果”,根据正确的结果去设计你的过程。当一个人具有明确的职业目标时,就会对有助于实现目标的蛛丝马迹都特别敏感,做事情相应也就会很有目的性,而不是稀里糊涂的。所以,就容易到达自己的目的。如果没有职业目标,就算是天上真有神仙,神仙也不知道该给你什么。 “做正确的事情,永远比正确地做事更重要!” 2、做自己喜欢与最擅长的工作 既然必须做出选择,如何选择就是关键。总不能写几个纸条,靠抓阄来决定自己以后的命运。从众多成功者的经历来看,成功的一个关键因素就是做自己感兴趣的和最擅长的事情。如果没有兴趣,就没有百分之百的激情与动力,如果不擅长,就不可能把一件事情做到最好。

计算机考试软件工程师试题

考号:006姓名:006剩余时间:01:29:40IP:192.168.0.26网络连接:● 2010年(下)全国信息技术水平考试计算机程序设计技术水平证书(JAVA语言) 考试试卷 第一大题:单选题(30 分) 1. (1分) 下列叙述中正确的是( D ) (A) Java程序经编译后会产生machine code (B) Java程序经编译后会产生byte code (C) Java程序经编译后会产生 DLL (D) 以上都不正确 2. (1分) 下列说法中正确的是( C ) (A) 类中的构造方法声明不可省 略 (B) 构造方法必须与类同名,构造方法返回值为 void (C) 构造方法在一个对象被new时执行 (D) 一个类只能定义一个构造方法 3 . (1分) JDBC常用的类和接口都包含在( A )包中。 (A) java.sql (B) java.awt (C) https://www.doczj.com/doc/fc6279561.html,ng (D) java.swing 4. (1分) 执行下列程序后,C的值是( C ) public class Test{ public static void main(String arg[]){ int a=0,c=0; do{ --c; a=a-1; }while(a>0); } } (A) 0 (B) 1 (C) -1 (D) 死循环 5. (1 若有int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是( A )

分) (A) public int MAX_LENGTH=100 (B) final int MAX_LENGTH=100 (C) public const int MAX_LENGTH=100 (D) public final int MAX_LENGTH=100 6. (1分) 在程序中import,package,class出现的正确顺序是( ) (A) import package class (B) package import class (C) package class import (D) import class package 7. (1分) 下列方法中可以用来创建一个新线程的是( ) (A) 实现https://www.doczj.com/doc/fc6279561.html,ng.Runnable接口并重写start()方法 (B) 实现https://www.doczj.com/doc/fc6279561.html,ng.Runnable接口并重写run()方法 (C) 实现https://www.doczj.com/doc/fc6279561.html,ng.Thread类并重写sleep()方法 (D) 实现https://www.doczj.com/doc/fc6279561.html,ng.Thread类并重写start()方法 8. (1分) 下列程序的输出结果是( ) public class Test{ public static void main(String[] args){ String a=new String("A"); String b=new String("B"); oper(a,b); System.out.println(a+","+b); } static void oper(String c,String d){ c.concat("B"); d=c; } } (A) A,A (B) 编译正确,运行时将产生错

优秀的软件测试工程师应具备的素质

优秀的软件测试工程师 应具备的素质 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

人是测试工作中最有价值也是最重要的资源,没有一个合格的、积极的测试小组,测试就不可能实现。然而,在软件开发产业中有一种非常普遍习惯,那就是让那些经验最少的新手、没有效率的开发者或不适合干其他工作的人去做测试工作。这绝对是一种目光短浅的行为,对一个系统进行有效的测试所需要的技能绝对不比进行软件开发需要的少,事实上,测试者将获得极其广泛的经验,他们将遇到许多开发者不可能遇到的问题。 ? (1)沟通能力 一名理想的测试者必须能够同测试涉及到的所有人进行沟通,具有与技术(开发者)和非技术人员(客户,管理人员)的交流能力。既要可以和用户谈得来,又能同开发人员说得上话,不幸的是这两类人没有共同语言。和用户谈话的重点必须放在系统可以正确地处理什么和不可以处理什么上。而和开发者谈相同的信息时,就必须将这些活重新组织以另一种方式表达出来,测试小组的成员必须能够同等地同用户和开发者沟通。 (2)团队合作能力 (3)技术能力 就总体言,开发人员对那些不懂技术的人持一种轻视的态度。一旦测试小组的某个成员作出了一个错误的断定,那么他们的可信度就会立刻被传扬了出去。一个测试者必须既明白被测软件系统的概念又要会使用工程中的那些工具。要做到这一点需要有几年以上的编程经验,前期的开发经验可以帮助对软件开发过程有较深入的理解,从开发人员的角度正确的评价测试者,简化自动测试工具编程的学习曲线。 (4)自信心

开发者指责测试者出了错是常有的事,测试者必须对自己的观点有足够的自信心。如果容许别人对自己指东指西,就不能完成什么更多的事情了。 (5)外交能力 当你告诉某人他出了错时,就必须使用一些外交方法。机智老练和外交手法有助于维护与开发人员的协作关系,测试者在告诉开发者他的软件有错误时,也同样需要一定的外交手腕。如果采取的方法过于强硬,对测试者来说,在以后和开发部门的合作方面就相当于“赢了战争却输了战役”。 (6)耐心 一些质量保证工作需要难以置信的耐心。有时你需要花费惊人的时间去分离、识别和分派一个错误。这个工作是那些坐不住的人无法完成的。 (7)怀疑精神 可以预料,开发者会尽他们最大的努力将所有的错误解释过去。测式者必须听每个人的说明,但他必须保持怀疑直到他自己看过以后。 (8)自我督促 干测试工作很容易使你变得懒散。只有那些具有自我督促能力的人才能够使自己每天正常地工作。 (9)洞察力 一个好的测试工程师具有“测试是为了破坏”的观点,捕获用户观点的能力,强烈的质量追求,对细节的关注能力。应用的高风险区的判断能力以便将有限的测试针对重点环节。

高级软件工程师个人简历

x x x专业个人简历姓名:*** 性别:男 出生日期:1974-11-29 籍贯:内蒙 目前城市:北京市工作年限:五年以上 目前年薪:6-8万人民币联系电话: E-mail:(邮件&MSN) 请换成自己的真实信箱! 应聘方向 求职行业:计算机软件,计算机服务(系统、数据服务,维修) ,通信/电信/网络设备,通信/电信运营、增值服务,互联网/电子商务 应聘职位:高级软件工程师,软件工程师,系统分析员,系统架构设计师,项目经理 求职地点:北京市薪资要求:8000-9999/月工作经历 2006/09—现在***公司 所属行业:计算机软件 智能交通研究院高级软件工程师 主要职责: 前期负责高速公路交通监控项目的前期需求分析和设计工作,3月份 开始参与高速公路收费系统,分析需求和设计编码。 2005/04—2006/08 &&科技有限公司 所属行业:服装/纺织/皮革 研发部门高级软件工程师 主要职责: 1. 根据需求分析,负责相关模块的设计开发维护工作。 2. 项目的编码和单元测试。 2004/03—2005/04 **软件有限公司西安研发中心(轻松软件) 所属行业:计算机软件 系统开发部高级软件工程师 主要职责: 通用管理软件数据平台3.0/3.1的部分模块的设计,开发工作,并在 在项目中担任过程管理协调员。 2001/04—2003/09 **青鸟科技股份有限公司 所属行业:计算机软件 流通事业部软件工程师 主要职责:

流通业管理系统JBCMIS5.0的开发,并参与项目实施,客户化开发 等工作。 1997/01—2001/02 **中科贸有限公司 所属行业:计算机软件 网络工程部/软件开发部软件工程师 主要职责: 网络工程,软件开发。有多年的网络工程施工调试经验,并参与开发 设计了医保、住房公积金、企业咨询网站和计委报送系统等软件。项目经验 2006/10—至今高速公路收费/监控系统 软件环境:oracle/Windows 硬件环境:PC/PC服务器/局域网 开发工具:Delphi/VC 项目描述:高速公路的监控系统,设计设备管理,路网间数据通讯, 报警和预案处理等功能。收费系统分为站级、分中心和中心三大系统, 主要围绕高速公路收费对车道收费、费用缴交、IC卡管理、报表等 功能的设计开发。 责任描述:前期负责监控系统的维护开发,后面负责收费系统中费用 缴交、IC卡管理等模块进行设计及开发。 2005/04—2006/08 CGM-ERP项目 软件环境:Window 2000 硬件环境:PC 开发工具:Delphi/SQL Server 项目描述:针对CGM集团下属服装工厂提供ERP开发服务。 责任描述:负责仓库管理、样品管理模块的设计开发和维护。 2004/03—2005/04 数据平台3.0/3.1 软件环境:Windows/linux 开发工具:Delphi/java sql server/oracle 项目描述:由设计器/运行器/报表构成的业务平台系统。通过对用户 的业务进行分析,对象化用户业务,使用户可以自定义系统,目标是 不用编程即可完成信息管理系统的定制开发。该系统已在南方电网, 广东移动的部分项目中成功运行。极大的满足了客户的需求。 责任描述:担任了业务设计,业务报送,地图查询,表单设计系统管 理等模块和部分基础库的设计开发工作。同时还担任了SQA协调员 的工作,负责西安研发中心的过程审计和广州协调同步。

软件工程师岗位职责

软件工程师岗位职责 1.软件的程序设计与代码编写 2.有关技术方案、文档的编写 3.软件单元的测试 1、根据项目具体要求,承担开发任务,按计划完成任务目标 2、配合系统分析人员完成软件系统及模块的需求调研与需求分析 3、配合系统分析人员完成软件系统及模块的设计 4、独立完成软件系统及模块的编码 5、协助测试人员完成软件系统及模块的测试 6、负责编制与项目相关的技术文档 7、有OA及电子政务软件开发经验或相关背景优先考虑; 1、根据项目具体要求,承担大型网站设计与开发 2、部分软件功能模块设计和软件界面美化 3、协助测试试人员完成软件系统及模块的测试 系统分析员岗位职责: 1、负责项目开发作业程序的执行,严格执行开发设计工作规范; 2、负责进行需求调研分析,制定项目需求规格说明书; 3、负责产品详细设计方案和具体设计的制定、审核; 4、负责具体开发工作,解决项目开发中的各种技术难题; 5、规划项目所需资源,估算项目时间需求,估算项目费用需求,计划项目的其他需求; 6、识别和分析项目的风险,制定应对计划和应急计划; 7、进行项目控制,如进度、费用、质量和风险等,跟踪项目里程碑; 8、发现、分析项目出现的问题,制定解决方案,推动方案执行; 9、对产品设计的进度、质量和技术负主要责任。 1、参与项目的需求调研,进行需求分析,编写需求分析书; 2、负责项目的概要设计,包括功能结构规划、功能子系统划分,实现模型设计,数据库设计; 3、核心、关键模块的算法设计,详细设计; 4、关键、核心的算法或功能编码实现; 5、修正设计、编码错误直至系统能正确、正常运行。 1.负责系统的分析设计,核心代码的研发。 2.协助项目经理管理的开发团队。 3.完成上级主管的安排的其他工作。 岗位职责 1、按系统设计完成功能模块的编写; 2、遵循工作规范,和编写要求; 3、编写模块详细设计文档,和相关技术资料;

软件工程师考试大纲

一、考试说明 1.考试要求: (1) 掌握数据表示、算术和逻辑运算; (2) 掌握相关的应用数学、离散数学的基础知识; (3) 掌握计算机体系结构以及各主要部件的性能和基本工作原理; (4) 掌握操作系统、程序设计语言的基础知识,了解编译程序的基本知识; (5) 熟练掌握常用数据结构和常用算法; (6) 熟悉数据库、网络和多媒体的基础知识; (7) 掌握C程序设计语言,以及C++、Java、Visual、Basic、Visual C++中的一种程序设计语言; (8) 熟悉软件工程、软件过程改进和软件开发项目管理的基础知识; (9) 熟悉掌握软件设计的方法和技术; (10) 掌握常用信息技术标准、安全性,以及有关法律、法规的基本知识; (11) 了解信息化、计算机应用的基础知识; (12) 正确阅读和理解计算机领域的英文资料。 2.通过本考试的合格人员能根据软件开发项目管理和软件工程的要求,按照系统总体设计规格说明书进行软件设计,编写程序设计规格说明书等相应的文档,组织和指导程序员编写、调试程序,并对软件进行优化和集成测试,开发出符合系统总体设计要求的高质量软件;具有工程的实际工作能力和业务水平。 3.本考试设置的科目包括: (1) 计算机与软件工程知识,考试时间为150分钟,笔试; (2) 软件设计,考试时间为150分钟,笔试。

二、考试范围 考试科目 1.计算机科学基础 1.1 数制及其转换 二进制、十进制和十六进制等常用制数制及其相互转换 1.2 数据的表示 数的表示(原码、反码、补码、移码表示,整数和实数的机内表示,精度和溢出)非数值表示(字符和汉字表示、声音表示、图像表示) 校验方法和校验码(奇偶校验码、海明校验码、循环冗余校验码) 1.3 算术运算和逻辑运算 计算机中的二进制数运算方法 逻辑代数的基本运算和逻辑表达式的化简 1.4 数学基础知识 命题逻辑、谓词逻辑、形式逻辑的基础知识 常用数值计算(误差、矩阵和行列式、近似求解方程、插值、数值积分) 排列组合、概率论应用、应用统计(数据的统计分析) 运算基本方法(预测与决策、线性规划、网络图、模拟) 1.5 常用数据结构 数组(静态数组、动态数组)、线性表、链表(单向链表、双向链表、循环链表)、队列、栈、树(二叉树、查找树、平衡树、线索树、线索树、堆)、图等的定义、存储和操作 Hash(存储地址计算,冲突处理)

软件工程师具备的素质

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

高级软件工程师岗位职责

高级软件工程师岗位职责 工作描述:职责:公司网络项目的售前售后和代理产品的推广,具体包括:项目的网络规划与设计,技术解决方案制定,投标文件制作,项目实施与维护;负责array networks产品的全省巡回推广活动,并担任主讲。 中国的IT行业的就业形势一直呈上升趋势,中国软件市场保持稳定增长,2020年已达62.3亿美元,市场增长潜力巨大。在技术领域,高级软件工程师也一直是各个公司极为需要的。 岗位描述: 1、高级专业技术人员职位,独立负责工作小组,给下级成员提供引导或支持并监督他们的日常活动; 2、参与软件产品项目规划工作,制定具体项目实施方案; 3、整合并优化项目开发所需各种资源; 4、负责软件开发技术和规范及标准流程的改进; 营销中心是作为一个整体进行规划和核算的,一线工作人员、后勤人员、主管领导的三向互动沟通是内在的要求和发展的保障。营销中心需要及时、全面、顺畅地了解每个区域的一线状况,以便随时调整策略,任何知情不报、片面汇报的行为都是不利于整体发展的。 西澳大学工程系的毕业生就业率为100,通常学生毕业前已经同时接到几家不同大公司的聘书,起薪点目前是年薪七万到十二万澳元 5、参与软件系统的设计和分析; 公示无异议的考生将获得我校自主招生考核资格,请于5月10日-5月20日在“试点高校自主招生报名系统”( https://www.doczj.com/doc/fc6279561.html,/zzbm/)中确认考试、通过网上银行缴纳报名考试费100元,并可打印准考证。我校2020年自主招生考核将于6月10日在武汉理工大学南湖校区进行现场确认,于6月11日进行测试,具体测试安排将于5月底在我校招生信息网发布。 2020年04月17日香港中金国际投资有限公司温州代表处在互联网上公布招聘期货行情分析/程序化交易软件工程师信息,主要内容为以下:

软件工程师的职业规划

软件工程师职业规划 主讲人:李翊谢谢大家,非常高兴有机会再次回到校园和大家共同探讨“软件工程师职业规划”这样一个话题。 在这个讲座开始之前,我想让大家先看一个图片,这个图片是实景拍摄,在北京的中关村,是招聘会的一个现场的画面,密密麻麻的全是人。大家看到之后有什么感觉呢?你们可能感觉很有震撼力,对于我来说就是勾起了痛苦的回忆。确实想找一份自己满意的工作不是很容易,特别是对于我们软件专业的学生来说去找一份工作就需要规划,我今天就把我的一些经验介绍给大家,使大学能够及早地规划好自己的人生。 大家最小的也是大一的吧,我觉得即便是大一,离找工作也不远了。我们怎么使我们自己在面临找工作难的环境的时候能够有很强的竞争力,我觉得大家应该从大一的时候就开始有意识地去规划自己的人生、去塑造自己,使自己能适应这样的环境,这就是我们今天要讲的一个主题。 今天我们的主题是做软件的人的规划,我们这个主题有以下几个要点:第一,我们要分析一下中国软件产业的发展现状,大家既然将来要从事这个行业,要在这个行业“混碗饭吃”,所以一定要了解我国现今的软件行业到底发展到一个什么样的时期,它有什么特点,我觉得这个是我们应该了解的第一个话题。第二,我们要了解一下我们国家目前软件人才的体系结构,它有什么特点,它出了什么问题。因为只有了解了这一点,我们大家才能够对症下药,才能按照这样的需求去规划我们的知识、技能等。第三点,我就跟大家讲一下,我们要做一个合格的软件工程师或者准备做一个合格的软件工程师应该具备哪些基本的素质和知识。这些基本的素质和知识往往是你第一次去面试一个公司的时候,那个面试官要考核你的最主要的东西。 第一个,我们先来看一下我们国家软件行业发展的现状。软件是IT产业中的一个环节。硬件、软件、IT服务是组成IT产业结构的三大块。软件和硬件看起来区别很大,但是对于我们来说动起来其实差别不大。因为在硬件中的一些理论、一些方法现在已经慢慢渗透到软件行业了。IT服务是个什么概念呢?大家知道,软件也好,硬件也好,它们不断地发展,越来越壮大,那么对于一个企业来说,它如何能够从IT的发展中受益呢?比如说一个企业想有一套这样的软件帮助它进行业务的管理,那它怎么能方便的获得这样的一些利益呢?IT服务就是对于这样的情况发展起来的一个分支。大家可以这样理解:软件和硬件是核心,IT服务是包在外面的接口,我们每个个人也好、每一个这样的企业也好,可以通过IT服务去获取一些利益。这就是我们简单地给大家介绍一下IT产业结构的一些方面。 我们主要还是搞软件,下面我就来给大家介绍一下软件行业发展的概况,特别是在我国软件行业的发展情况。我们通过数据可以看出我们国家的IT行业特别是软件行业呈现一个非常快的上升的势头,连续5年以28%的速度递增。这样的数据告诉我们IT行业在我国应该还是一个飞速发展上升的时期。再就是现在的社会对软件工程师也好、网络工程师也好,对人才的需求非常大,目前每年至少在40万人以上,这是一个相当庞大的数字,大家可以计算一下,我们国家每年毕业的大学生是多少,可以分析一下这个需求量在大学毕业生中所占的比例。这就是通过数据给大家传达这么一个信息:IT行业目前在我们国家呈快速上升

软件工程师职称评定的级别及标准

欢迎阅读软件工程师职称评定的级别及标准 一、见习程序员(AP:assistant?programmer)? 1、计算机相关专业毕业;英语通过国家四级。? 2、具有较强的学习能力,可以编写代码,达到公司的工作要求。? 基本要求:? 1、获得程序员资格1年以上;或满足程序员级别标准,2年以上相关行业工作经验。? 2、完成年度工作量指标;具有较强的沟通能力和责任心。?

3、所承担的项目满意度达到满意以上。? 技术能力要求:? 1、精通一种主流语言及对应的开发工具;精通数据结构。? 2、具有较好的业务理解能力和技术调查能力。? 3、编写高质量代码并具有代码审查能力。? 3、担当过一个20人月以上的项目或累计超过60人月项目的技术负责工作。? 4、所负责的项目客户满意度达到满意以上。? 技术能力要求:? 1、精通并熟练运用2种以上的开发工具,至少一种数据库知识,至

少一种操作系统知识。? 2、能够很快完成新项目的技术调查工作,能够完成复杂算法的设计,能够设计可重用的和柔韧的软件结构。? 3、具有系统设计能力及系统提案能力。? 4、对系统或项目的技术框架有深入的认识和较丰富的经验。? 4、带领的项目客户满意度满意以上。? 5、完成年度培训工作。? 技术能力要求:? 1、精通并熟练运用2种以上的开发工具,至少一种数据库知识,至少一种操作系统知识。?

2、具有整体系统设计能力及系统提案能力。? 3、具有较强的技术筹划能力、技术指导能力和处理疑难问题的能力。? 4、深入了解某一领域的行业知识。? 5、具有大型项目领导能力。? 6、*语达到*级并相当于*级水平,熟练会话和编写*语技术文档。? 间件。熟练掌握至少一种操作系统。? 2、熟练掌握软件需求分析/大型项目的策划。? 3、熟练掌握软件的系统设计。? 4、熟悉软件的高级项目管理和质量控制,具有分析和规避重大质量问?题的能力。?

相关主题
文本预览
相关文档 最新文档