java 初级、中级、高级工程师等 如何区分?
一般各需要多少年工作经验,各需要哪些技能?还有在北上广,一般的工资是? 展开
初级水平(认知理解技术为主):
项目实战方面:
1.能够熟练使用三大框架或者springboot进行基本的业务开发,熟悉MVC架构
java部分:
1.能熟练应用封装,继承,多态这三大特性。能熟练使用list,set等collection接口,及map接口。
2.对java的较为复杂的技术能够灵活使用如:多线程,反射,io流,网络编程和数据库编程
3.sql能够熟练掌握,如子查询,mybatis的复杂查询
中级水平(利用技术解决复杂业务和理解技术的原理为主):
1.对常用的框架的原理有较清晰的理解,能够掌握其设计思想和所用到的设计模式。
2.能独立的完成项目的某些模块的任务
3.能够进行性能优化,代码规范,编程习惯良好无冗余代码
4.对缓存,事务管理,日志,分布式等复杂技术有着深入理解
高级水平(技术领导):
1.能对需求进行架构设计,选择框架以适应最合适的业务,作为某个项目的领导,带领团队完成项目。
2.有自己的开源项目,可以写出自己的组件,对开源的框架能够进行二次编写,java核心技术有着非常深入的理解
架构师
能管理多个高级工程师及以下级别,提升工作效率
其发展战略可以参考下图:
扩展资料
1、Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多 继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
2、Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅 的思维方式进行复杂的编程。
3、Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态 性等特点。
4、Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。 2018年9 月25日,Java11(18.9 LTS)正式发布,支持期限至2026年9月。
技术不同。简单的可以理解为:初级中级的只关注代码,编程。高级的就要考虑系统的架构,整体框架。
一、初级部分
1、Java 程序设计基础,包括 J2sdk基础、Java面向对象基础、Java API使用、数据结构及算法基础、Java AWT图形界面程序开发;
2、J2SE平台Java程序设计,包括Swing图形程序设计, Socket网络应用程序设计,对象序列化,Java 常用数据结构,Applet,流和文件,多线程程序设计;
3、Java桌面系统项目开发,4~5人组成一个项目组,项目大小为(15人*工作日);
4、Linux的基本操作,Linux下的Java程序开发,Linux系统的简单管理;
5、Oracle数据库,包括SQL/PLSQL;数据库和数据库设计;简单掌握ORACLE9i 数据库的管理;
二、中级部分
1、Java Web应用编程,包括 Java Oracle 编程,即JDBC;JavaWeb编程,包括JSP、Servlet,JavaBean;Java应用编程,包括Weblogic、Websphere、Tomcat;以及利用Jbuilder开发Java程序;
2、MVC与Struts,学习业界通用的MVC设计模式和Struts架构;
3、Java B/S商务项目开发,4~5人一个项目组,项目大小为(25人*工作日左右)
三、高级部分
1、J2ME程序设计,包括J2EE程序、J2ME;Java高级程序设计(J2EE),包括J2EE体系结构和J2EE技术、EJB;Weblogic使用、 JBuilder开发;
2、Java和XML,包括Java Web Service,JavaXML, 业界主流XML解析器程序设计;
3、软件企业规范和软件工程,包括UML系统建模型和设计(Rational Rose 200x)软件工程和业界开发规范;CVS版本控制、Java Code书写规范;
4、J2EE商务应用系统项目开发,4~5人一个项目组,项目大小为(25人*工作日左右)。
扩展资料:
初级java属于初学者,能够完成基本的工作,但是往往不知道这么做的目的,优秀者,能够写出高水平的代码,应用各种框架。
中级java往往觉得代码不够优秀,他们往往经过了很多的实践,经历过代码的腐朽,有心想要写出优秀的架构,但是因为经验欠缺,架构能力不足,所以总有一些虎头蛇尾的感觉。典型的几种行为:非常喜欢封装函数,代码,过度设计等。
高级java 经过之前一系列的设计,终于找到了架构设计的黄金点,懂得在实际与美之间进行取舍。
参考资料:百度百科——java工程师
高级开发工程师:扎实的Java基础,熟悉JVM、JavaIO,掌握并发编程、网络编程及常用数据结构;深入了解Spring,SpringCloud、Tomcat等开源架构,并对其运行原理有较好的理解;熟悉面向对象开发,具备领域模型抽象能力,熟悉常用设计模式;熟悉分布式、缓存、消息等机制;有高并发,高性能系统经验,熟悉微服务架构设计;熟练掌握MySQL等关系型数据库,掌握MongoDB、HBase等NoSQL数据库,并有性能调优经验 + 初级程序员掌握的技能
架构工程师:Java技术功底扎实,有多线程,NIO,集合,内存调优等技术的实际项目经验,了解技术的底层实现原理; 精通Dubbo、Spring Boot、Spring Cloud、MyBatis、ElasticSearch、Nacos、Zookeeper、Redis等常用开源框架及中间件,熟悉其原理及实践;可以针对不同的大型分布式、高并发、高负载、高可用性架构分析和设计,熟悉离线或实时大数据平台架构; 有Kubernetes,Linux,Docker,ServiceMesh,微服务经验,能参与JVM和MySQL线上排查和调优,对与项目出现的机构问题能够及时处理调。
应届毕业一般就是初级了
工作一年到两年就可以是中级了 工作一般会有一万左右
高级工程师 理论上也没什么,但是得有一个产品带去跳槽,能力不一定很强的,
高级的话,看公司,一万多到2,3万一月