我所认知的java等级划分

从事java4年左右了,因为前几年心思分散,所以一直没有专注学习。后因为工作变动开始学习。目前来看自己的水平堪堪达到java高级的水平,也就是勉强p5的级别。当然还是缺点经验。

这里分析一下初中高的差别,因为题主在二三线城市,所以和一线科班的人比基础肯定会差些。

初级:初级刚从培训班出来,其实只会增删改查。这阶段主要是提升代码量减少bug还有形成将业务代码转为需求的能力,解决问题能力比较差,bug可能得花半天一天才解决。

中级:熟练掌握主流框架体系下的大部分业务实现,能够撰写比较复杂的sql,能够较快处理自己和别人代码中的bug。缺点就是:对于代码底层实现原理理解不够,无法写出抽象的代码

高级:1.了解了项目架构设计与每个模块技术特点,对部分核心业务或者common里面的系统功能如何实现的有较为清晰的了解,

           2.能够较为熟练掌握并发编程,并用于解决实际问题。对于框架底层源码实现原理有一定了解,并能够了解框架源码每个模块是做什么的。

           3.开始接触管理,尤其是业务需求分配,git代码管理与版本管理,运维环境熟悉,在当前主流技术下,必须掌握docker与k8s。至少要比较熟悉。

           4.代码上能够较为灵活利用三大特性以及设计模式实现业务需求。并且在处理一些复杂bug要懂得如何用jvm工具分析,初步理解jvm调优原理。

           5.分库分表方案设计与工具使用,熟练掌握sql调优能力

            6.对于微服务组件熟悉,能够设计方案解决需求

资深:资深和高级区别主要在于,资深能够初步设计一些高并发的方案,对于设计模式烂熟于心,对于spring等主要框架源码烂熟。能够开始写一些复杂的组件,甚至内部的框架。对于算法和大数据方案

也能够设计出相应方案。一般在二线城市,大部分的总监,甚至cto处于这个级别。

 架构师:二线架构相当于一线资深,少部分大厂回来的。架构的能力主要在于能够设计极端环境的一些问题解决方案,其他方面和资深并没有本质变化,当然这阶段的个别人已经是在开源项目贡献的能力上开始展露出成果了。

总结:最难的的阶段其实是高级到资深,这个阶段基本上百分之80的人因为毅力以及不喜欢写代码的原因倒下。到高级了,虽然可以转业务方向,主要负责管理。但是对于一个有追求的人来说,还是需要不断学习,精进。否则,在国内大环境这么卷的情况下,很可能被市场淘汰。可能以后大数据会成为高级和和资深的标配技术栈。高级到资深最难的还是在于开源代码的学习以及设计模式的融汇贯通,这些其实都是前面基础阶段忽略的,没办法,非科班学习这种思维设计方式还是很折磨人的,看完一遍就忘记了。

 

posted @ 2021-11-29 01:50  慧剑仙  阅读(1922)  评论(0编辑  收藏  举报