Java 卷之又卷(内卷)(10min)
现状其实做java的人很多,所以竞争很大,也很内卷。 先来聊一下这个内卷
,这个是我们最近一直讨论最多的一个关键字。
以前还好,也就最近一两年、两三年吧,一直被提起,其实一直以来就存在,各行各业都存在这个现象。
有没有不知道内卷是什么意思的同学啊?需不需要咱们解释一波?可以在公屏上来一波1。
内卷: 啥是内卷,举个例子就比如说,本来我们公司5点半下班,现在少数几个人6点下班,老板看了觉得你可能在多干活,于是越来越多的人都6点下班,于是再到7点,再到8点最后演变为996。
有的公司的确有这样的企业文化,的确挺恶心人的,我们不能在这里明说啊,我有一个学生,他已经面试全过了,最后offer口头说要发,但是最后hr说他的气场不合?啥意思?就是你不符合我们的企业文化,这是不是很扯?说多了啊,这是题外话。
回到内卷,那现在大家应该对内卷这个词语有所了解了吧。懂了的来一波666。
Java的今天与未来(现状与前景)
先问下各位,有没有人正准备入行或者准备学习Java的?
很早以前有一些学生很焦虑,问我要不要转别的语言,比如go或者Python。说java是不是未来有很多未知性,或者说未来可能走下坡路。
其实不用怕的,也不会这么发展的,因为: Java Everywhere,java无处不在。 java可以做:
桌面端应用程序。
移动设备。
上千万的java开发人员。
企业开发的首选开发语言。
正因为学java的人多,做java的人也多,所以人多的地方必然内卷啊,这是肯定的。毕竟java的应用面是很广泛的。
java的分类:
J2SE / C# Winform(.net)
早期是共存的,但是相对来说,做桌面应用,我们毕竟在pc机很多的情况下,那么市场占有率还是以C#为主,毕竟是微软亲儿子嘛,在windows上肯定更好。
J2ME / Windows Mobile / ios&Android
相对来说,J2ME在一些移动设备上用的还是挺多的,windows mobile很不错,但是市场认可度不高,所以并没有完全推广开来,甚至很多人也许都没听过对吧?
2008年ios开始流行,然后就是安卓,移动互联网大爆发,ios和安卓目前都是最流行的。
J2EE / .Net
后端开发语言中目前必定是以Java为主的,曾经有段时间其实还是有.Net开发的,现在几乎没了,而且市面上全大多数的公司,都是采用Java来进行开发的。因为Java的生态更完善啊,技术圈以及社区都很丰富啊。
越来越多的人选择java这个领域,而且薪资都还不错,非常可观。
Java路线(10min)
初级
java基础
数据库,mysql,jdbc
javaweb,servlet,filter,listener,session,cookie,http
前端基础,html,css,js,建议学习
常用框架,spring,springmvc,springboot,mybatis(plus),hibernate,jpa,maven分层聚合,git代码管理,ssm/ssb整合。
进阶:
Linux,centos7,要去学习一下,有的公司的调试会基于linux,所以基本的操作命令啊啥的你得会
微服务,springcloud,springcloudAlibaba,redis
权限管理:shiro,springsecurity,jwt
项目实战:推荐我的短视频(初级)和自媒体实战(高级进阶),提一下薪资offer截图,基本上20k左右没问题的 到这里基本上工作没问题了
以上这些你都能在慕课网学习到。主要是一些实战课程。
高级提升:
分布式,redis,elasticsearch,zookeeper,nginx,分布式文件存储,消息队列(rabbitmq,kafka,rocketmq),netty,mycat,sharding-jdbc,mongodb
devops:docker,k8s,jenkins,ci/cd(持续基础,持续交付,持续部署)
监控:zabbix,
优化:JVM优化,数据库mysql优化,tomcat优化,open-restry
云平台的搭建与设计:云服务器的购买选型,服务器实例、负载均衡SLB/CLB,弹性扩缩容,对象存储OSS,CDN内容分发网络,云中间件,集群搭建配置,安全防范等。
推荐架构师一期,基本上25k-30k左右,目前最高的37k
Java 薪资路线(10min)
1-2年:技术积累期,积累经验,积累技术,10k-15K
3-5年:薪资上涨期,通过积累的技术与项目经验,跳槽涨薪,幅度区间也比较大,20k-30k,达到35k以上的也有
5年以上:
平稳期(舒适圈):35k-50k左右,学不进了,舒适,或者想作几年转行。这个大有人在,我身边的目前有转保险的,开滴滴的,开水果店的,开超市的,都有。我上次做曹操专车,那司机就是做前端的,32岁。
卷之又卷:技术更深层次的提升,做业务,做事说话圆滑,多看多听,多拍马屁,最终往P8/P9进阶。基本上越往后,你要想升职,一定跟你做人做事情商等有关,技术再好,也不一定能升的上去。能上这个层次,基本上可以80k-100k。(在这里推荐一些我的项目管理课程)
其实java后端的薪资头两年是很低的,甚至有的城市达不到1万,基本上7-8k的样子,等你进阶了各种技术以后,那么你的薪资就会飞速提升了。
拓展技术,做T
字型人才:(10min)
java为自己的主要技术领域,这个是直线。其他的分支技能,比如你要了解前端,其实最好学一下html,css,以及js。 此外别的平台比如小程序啊,安卓ios是怎么回事,了解一下,去看看,多好。毕竟如果你作为技术总监,这些你都不知道,那肯定不行,而且也不会升你的职位啊。
其次运维方面的,很多小公司是没有运维的,如果你有这个经验,那不是更好吗?
对大数据的了解,有的公司会有大数据职位,如果你是java,那么你的竞争力更好,进去了也容易转职。
掌握多门开发语言,比如,go和python,这个是我比较推荐的,值得去学一学的。
也就是说,你不要只局限于自己的技术领域,其他领域你都要去看看了解一下,这也是为以后奠定基础,因为你不可能一辈子做技术写代码的。
Java技能薪资水平汇总(资料可以加二维码提供)(上半场结束)
前面我们看的是职位以及相关的薪资水平,在这里,我附上薪资水平以及对应的招聘用人要求。主要是技术栈相关的。 这是一份PDF的文档,如果有需要的,可以公众号回复:JAVAPDF,就可以获得连接下载哈~架构师
架构师是长啥样的? 找图,风度翩翩的? 还是邋里邋遢?其实生活中的架构师都有,我见过很帅的,也见过由头满面的,哈哈哈。
架构师的定义:来,我们一起来给架构师定义一下,什么是架构师:
熟悉自身的技术领域
比如:java技术领域,前端或go或大数据某个特定的技术领域
运维领域(服务器怎么购买的,整个架构拓扑如何设计,怎么配置,这个你要和运维团队一起设计的)
一定的测试领域(这个可以不要求,但是我见过有的架构师是从java转测试再转的架构师)
一定的大数据领域(我以前的项目leader目前在美国,他就是在java领域以外,现在也是大数据架构师)
除了自身的java技术栈,其他的可以不必精通,但是你要熟悉,至少也要了解把。要不然怎么上得了百万年薪呢?对吧
其实这也是基于Java的T字形人才。
架构师的类型:
不同领域的专家,他的定位也不一样,而且在有的大公司,架构师可以有专门的团队,根据职能可以如下划分:
技术架构师:以技术为导向的开发人员,java技术leader,技术经理,偏技术的架构师,统称为技术架构师,或者开发经理。
薪资:差不多50w-60w
业务架构师:以业务为导向的,负责业务设计,推动公司产品,推动战略规划的业务型人才,可以是从java开发转产品再转业务架构师,或者项目经理转过来的,都可以。
薪资:60w-80w
运维架构师:偏系统、网络和硬件,精通linux和网络。有的还会go语言或者Python,会构建基础平台,构建开发底层。很厉害
薪资:40w-70w
大数据架构师:java领域和大数据领域的精英,
薪资:70w+
架构师每天做些啥?
首先提出疑问,架构师还要写代码吗? 觉得要写代码的请在公屏上敲1,觉得不要写代码的,请在敲2。 * 其实还是需要写一部分的代码,比如基础框架和架构,一些组件的脚手架,一些通用功能的基础封装,底层代码的修改与拓展。其他的更多的时间可以专注业务领域和解决方案。
工作内容:
庖丁解牛:有强大的解耦拆分能力,把产品业务细分为能够落地的架构以及细分的功能点。
技术选型:什么业务场景使用什么技术,用最适合的技术,而不是最牛的技术,去解决实际问题。比如消息队列的选择,rabbitmq,rocketmq,kafka,怎么选?用哪个?这的结合产品的业务。
底层优化:当自己使用的框架无法满足项目需求,是不是要优化底层,是不是要做底层的相关开发呀~ 想我没自己的,jvm和jms都是经过一些重构的,加入了我们的自己编写的一部分代码。
文档能力:会写word/ppt,要写的漂亮,因为有的公司会时不时要你汇报,你能做的好看,哪怕吹牛逼,那你也厉害啊,领导喜欢你啊。正所谓PPT架构师嘛。当然会吹牛也是本领,一般人都实实在在的老实人。
做事圆滑:情商高,见人说人话,见鬼说鬼话,两面三刀,我见过这样的人,我一个朋友就是这么混到高层的,以前也是做java的,但是会拍马屁啊,会战队啊,有时候当着面夸你,背后捅你一刀,有的人的确是这么爬上去的,但是,尽量不要做损人的事。
项目管理:因为你是架构师了,你不再是一个人,你要考团队的,所以基本的团队管理,软技能,你得会,我就举个例子,如果你是架构师,你看到你的组员在上班时间玩手机,你该怎么处理?你要不要处理?你如何用巧妙的方式去说,还是让别的同事去说?所以你要往上爬,项目管理的各种方方面面的都需要学习一下,比如你可以看老师的项目管理实战,也不错,比价便宜,可以购买,并且我还赠书~
另外说一下,现在很少有那种纯管理的岗位,如果有,一般也是空降的,而且职位很高。如果你又懂技术又懂管理,这个是最好的,也是最万金油的,企业也更青睐。
架构师的必备技能
内功心法:
算法
设计模式
数据结构
网络通信
操作系统
JVM底层
框架源码:
java集合
Spring(一定要看)
SpringBoot/MVC
SpringCloud
Zookeeper/Dubbo
Mybatis
Netty
Tomcat(通过源码可以去优化)