实习P1P1P2.1P2.2P3.1P3.2P4.1P4.2P5.1P5.2P6.1P6.2能素一级项目二级项目编号子项目了解-1分掌握-2分熟练-3分精通-4分101语言:语法/数据类型/运算/异常/反射/泛型等基础编程语言技术;语言原理和体系。具备应用java语言编写逻辑代码的开发能力。对语言的语法全面掌握(各种写法区别);理解数据类型空间和运算效率,并根据场景正确应用;理解并正确使用反射,泛型和异常体系;代码规范可读性和可维护性强。对语言的语法全面掌握(各种写法区别);理解数据类型空间和运算效率,并根据场景正确应用;理解并正确使用反射,泛型和异常体系;代码规范可读性和可维护性强。熟悉JVM体系原理;能通过调整参数优化JVM性能;对java体系管理和维护命令熟悉;能根据JVM运行情况及工具定位生产问题。11122223334102集合:Java的Array/List/Set/Queue/Map等接口的各种实现类的理解和应用。具备常见集合及实现类正确使用能力(插入/删除/迭代/查找等),主要包括:ArrayList,LinkedList,HashSet,Linked/HashMap,TreeMap等。具备常见集合及其并发集合正确使用能力,常用JDK内置集合相关工具使用。主要包括:Collections/Arrays/CopyOnWriteArrayList,ArrayBlockingQueue,ConcurrentLinkedQueue,DelayQueue,PriorityBlockingQueue,ConcurrentHashMap等。理解常用大部分集合和Map实现原理,能根据不同使用场景,选择合适的集合,注重效率,空间平衡;具备封装通用集合相关工具类和组件的能力。源码级掌握Java集合体系和各种实现,定位和解决在不同场景下会出现的问题。11112222334103I/0:Java基础I/O模型原理和使用,包括:BIO/NIO方式操作流;文件操作等。具备java-io类库使用能力;通用输入输出流的操作;文件及内容操作。能根据不同场景,选择不同的io实现模型;springResource应用。熟悉和应用第三方I/O相关工具和框架(netty等);掌握常规的BIO和NIO的编码和操作。理解java/io体系和实现原理,能解决io开发中的性能问题,资源泄露问题。11111222334104序列化:java原生序列化机制,kryo,hessian等开源序列化机制;xml/json等序列化。理解序列化的原理和应用场景,具备java原生序列化机制,编程应用和相关类库使用能力。了解各种序列化机制的差异(性能,兼容,使用难度)。封装序列化组件。无11111112223105通讯:TPC/IP/SOCKET/HTTP/FTP/SSH/Mail。具备各种协议工具使用能力。了解工具的性能,根据场景选择不同的解决方案。为框架封装通讯组件。无11122222233106并发:Java的线程体系原理了解;多线程场景的理解和应用;线程池的理解和应用。具备并发工具使用能力。具备并发风险回避能力(了解并发隐患,了解并发问题出现的时机)。具备并发工具自定义能力。无11122222223107安全:owasptop10;Java安全体系使用及原理;java安全解决方案shiro,springsecurity。具备框架安全工具使用能力。了解框架安全工具的原理。了解行业内的安全趋势,根据安全趋势同步推动框架升级(业务安全)。无11111112223108工具包:开源工具包common/guava/acooly等的应用。了解开源工具包,并能在代码中使用工具包常见和主要场景,能正确使用开源工具包,不自己瞎造轮子。可根据实际场景需求,封装或二次封装贴近实际的工具(独立案例)。有封装和二次封装体系化常用工具的案例(字符串/日期时间/安全/转换/反射/IO等)。11122222224109Servlet:Servlet规范体系化理解和应用。Servlet/filter/listener/内置对象等理解和应用。了解servlet常用组件,能使用这些组件。能根据不同的使用场景选择合适的组件。了解servlet组件在分布式环境下的表现、取舍。无11122222233110模板语言:对服务器模板语言原理的理解和场景应用。包括:JSP/JSTL/velocity/FREEMARKER等能使用模板语言完成业务开发。能封装模板组件。了解模板语言的各种特性和渲染原理。无11122222233职级初级P2中级P3高级P4资深P5专家P6评测标准得分开发职系能素模型能力素质评测项目评测标准定义能力专业技能基础技术111日志:不同日志级别的含义,日志框架slf4j,logback。具备日志框架使用能力。具备符合日志使用规范的框架使用能力。了解日志框架底层实现。具备日志框架优化,扩展能力。11122222224112数据库:理解关系型数据库的原理和应用,包括开发和管理。包括:库/实例/表/视图/存储过程/触发器/索引/标准SQL/常见数据库方言SQL/负载分析查询统计/SQL优化/事务/隔离级别/锁/管理。了解jdbc,能通过框架提供的能力完成dao代码开发。了解数据库相关的概念,并能根据使用场景选择合适的事务传播机制,锁的使用。能根据应用sql日志输出完成sql性能调优。无11122222333113linux:安装linux/基础命令/文件操作/应用部署/系统调优等。具备linux基础命令的使用,满足日常开发的基本要求。具备linux权限,用户,组相关知识,并能使用常用linux命令。能编写shell脚本,能独立完成系统搭建。能通过linux命令完成应用性能分析,性能监控,故障定位。11111222223114开发工具:依赖管理工具(maven)/IDE(eclipse/IDEA)/NEXUS/SVN/GIT/JENKINS/禅道。具备工具的基础功能使用,满足日常开发的基本要求。具备工具的主要功能使用,并应用到日常开发所有工作中。具备工具的熟练使用和配置,了解工具的原理,并能通过配置按需调整。具备工具的熟练使用,配置和理解应用原理,可根据需求扩展工具能力。11122223334201spring体系:IOC/AOP/工具集/集成能力/常用模式:spring4/springmvc/boot。具备spring框架/springmv/springboot功能使用,满足日常开发的基本要求。了解框架扩展机制,能使用框架机制高效完成业务开发。了解框架实现原理,能扩展框架能力,帮助开发工程师高效完成业务代码开发。无11111222333202acooly体系:工程/生成代码/核心封装/组件体系:使用/参与/设计/扩展。具备框架功能使用,满足日常开发的基本要求。了解框架扩展机制,能使用框架机制高效完成业务开发。了解框架实现原理,能扩展框架能力,帮助开发工程师高效完成业务代码开发。能独立完成新组件开发。11111222444203acooly组件:组件的应用,开发和贡献。知道大多数组件的使用场景,如何使用。了解组件的设计原则(高内聚、低耦合、易扩展、可配置、易使用),具备独立完成业务组件的开发能力。具备组件开发能力,并能根据组件的原则,合理设计组件依赖,组件依赖带来的影响,风险。具备开发出能大幅度提高开发效率的组件的能力。11111222234204测试:测试技术知识及junit,mock,spring-test的使用。具备测试框架使用知识,满足日常开发的基本要求。能根据测试场景,独立完成测试用例覆盖开发。了解测试相关知识、开源框架、accoly框架对测试的支撑。无11111112223205持久化:jdbc,jdbctemplate,mybatis,hibernate的使用。具备框架提供的持久化技术使用能力,满足日常开发的基本要求。能通过框架提供的持久化技术,完成所有业务场景的开发。了解框架持久化技术的原理,并能扩展。无11111222233206事务:事务隔离级别,事务传播,spring事务实现原理。具备事务基本知识,满足日常开发的基本要求。能根据业务场景选择不同的事务策略。了解事务原理,spring事务实现原理。扩展spring事务机制。11111223344207消息:消息使用模式,进程内消息和分布式消息。具备消息使用能力,满足日常开发的基本要求。能根据不同场景,合理选择不同的消息实现。了解框架的消息组件原理,消息中间件的使用场景,并能根据场景封装消息组件。无11111112333208缓存:redis基础类型,redistemplate的使用。具备框架缓存组件使用能力。具备缓存组件使用能力,并能在不同场景选择不同的使用模了解缓存框架和缓存中间件的基本原理,了解key和值序列无11111112233301面向对象设计:OOA和OOP的理论理解和实践应用能力。OOA和OOP的理论(封装,继承,多态/对象,接口和组件),并能通过他人专递,理解设计并实现。在实际工作中,有面向对象的完整具体模块级应用案例,并掌握常规的常用设计模式(工厂,模板,代理等)。在实际工作中,至少有1个以上独立完整系统的面向对象设计案例,完整学习过设计模式(要求读书:《设计模式》)。至少2个以上案例;有独立封装可重用组件并在团队推广应用;掌握并实际应用面向对象设计的主要设计方法论(接口编程有限,开闭原则)和设计模式(一半以上设计模式)。11111223344302数据库设计:关系型数据库的物理模型设计方法论和工具的应用。理解数据库设计的关键技术(表,数据类型,备注,主键,索引等),理解数据库设计范式和团队数据库设计规范。遵循设计规范至少成功完成1个以上的模块级数据库设计。遵循规范,至少2次以上独立完成系统级的数据库设计;根据场景灵活考虑和设计空间(长度)和效率(索引和关系结构)。对常用数据库方言(MYSQL,ORACLE等)熟悉,灵活应用不同场景的设计方案;掌握常规的设计方法论,可根据经验和能力制订和完善团队数据库设计规范。11111223344设计分析能力专业技能基础技术框架技术303文档方案:根据目标场景,开发和编写专业文档的能力和实践应用(重点再编写,设计可以是团队)。能理解软件或互联网开发过程中输出的所有相关文档,并根据文档完成想要的工作。能根据模板和Demo完成模块级概要设计文档(重点在于通过文档描述清楚逻辑)。独立完成2个以上模块级或独立小系统的概要设计(完整逻辑和),逻辑表达清楚和严明;或者基础架构方向独立组件的设计和使用说明文档。1个以上独立系统的概要设计;独立系统的总体技术方案编写(逻辑清晰,表达严明)/或者基础架构方向。1个以上平台级或中大系统的总体技术方案编写(输出并成功应用);具备PPT方式表达和转播方案的能力和案例。11111223344304设计工具:专业设计工具的应用能力。常规开发设计功能的使用。至少包括:word和excel的熟练使用,1个数据库设计工具和时序图工具,并有实际输出案例。PDM等专业设计功能熟练使用至少1个;应用至少1个专业工具表达:流程图,时序图和活动图。应用EA/starUML等设计工具至少1个.并掌握主要的UML图例设计,包括:用例,时序,活动,类图等。应用PPT制作方案或材料的综合应用(具有:逻辑,直观和美观效果)。11111113344305架构设计:综合应用设计分析理论,方法论和工具,完成系统分析和架构设计的综合能力和应用。对系统分析和架构设计的理论和过程有了解,能理解和根据架构设计进行系统建设和开发。对系统分析和设计过程有了解和参与,并能够应用系统分析设计方法论和工具参与系统分析设计的部分工作(如:核心业务设计,物理模型设计等)。具备完整的系统分析设计方法论,并能独立完成中小型系统的全部设计工作。推动并指导团队按设计完成系统开发;参与平台或公司级架构设计;需要在公司内负责并成功完成2个以上的系统分析案例。具备大中型平台或企业级架构设计能力,职业生涯中至少2个