学历不够,技术来凑,看八年开发码农如何逆袭进阿里拿年薪百万

简介: 有人说,今年可能是过去十年最差的一年,但却是未来十年最好的一年。随着越来越多的知名企业进行大规模裁员,我们不得不承认一个事实:经济寒冬与裁员潮,将是未来常态!个人经历普通二本毕业,学历不突出,在杭州工作两年,14年来到深圳,从事java开发一晃8年多。做过外包、跳槽比较频繁,由于内心一直以一个技术人自居,所以一直重技术,轻业务,导致在职业规划上做的很差。

有人说,今年可能是过去十年最差的一年,但却是未来十年最好的一年。随着越来越多的知名企业进行大规模裁员,我们不得不承认一个事实:经济寒冬与裁员潮,将是未来常态

个人经历

普通二本毕业,学历不突出,在杭州工作两年,14年来到深圳,从事java开发一晃8年多。

做过外包、跳槽比较频繁,由于内心一直以一个技术人自居,所以一直重技术,轻业务,导致在职业规划上做的很差。

期间尝还试过2次开发方向的转变,一次是2014年左右,移动APP的浪潮时期,自学了安卓开发半年,结果还没等转开发方向成功,移动开发的浪潮就逐渐过去,第一次转变尝试就这样胎死腹中,白忙活一场。第二次是2015~16年,这个时间点正是大数据开发最热门的时期,自学各种大数据框架,无奈受限于学历,并没有找到满意的工作,只能回归java。。。。。。

曾经盲目的追逐了几次技术浪潮,但是又没有真正对自己的职业生涯有多大的帮助。

经历了这些事之后,从此决定安心搞Java,方向确立之后就是考虑提升技术栈了!

确立方向后的恶补

俗话说:“书中自有黄金屋、书中自有颜如玉” 作为码农提升的第一想法就是多读书!!

就这样怀揣着不服输的性格,购买的大量同事及一些大牛推荐的书籍:《Java数据结构和算法》、《重构:改善既有代码的设计》、《代码整洁之道》、《Java并发编程实践》、《Hadoop权威指南、《Java8 实战》、《Spring实战(第4版)》、《深入理解 Java 虚拟机 第2版》、《实战Java高并发程序设计》、《Java性能权威指南》、《程序员的职业素养》等等经典书籍

在网上也找了很多学习资料、进阶视频等等,常常和公司的同事、大牛虚心请教!

小转折

就这样沉下心来学习半年多时间后,我离职了且成功拿到了一家30Koffer的互联网企业!

工作8年多,成长最快的就是这段时期,遇到好的同伴、领导,找到了正确的学习方式,从而也让我明白了技术栈系统化的重要性。

人生的路,一步慢,步步慢,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代

小建议

八年来的小结:Java程序员必经的三个阶段

第一阶段1-2年

我认为1-2年对于程序员来说是第一个门槛,这一阶段菜鸟正式从理论迈向企业级开发。我们知道如何使用工具、项目版本如何控制、接触并能够使用以下tplaravel等框架完成项目等等,积累了一定的开发经验,也对代码有了一定深入的认识,是一个比较纯粹的Coder的阶段。

第二阶段2-3年

3年又是区分程序员的第二个门槛。有些人在3年里,除了写工作代码,在空余时间基本不会研究别的东西,这些人永远就是个Curd,年纪大一些势必被更年轻的人给顶替;3年的Java程序员除了写代码还需要热衷于学习各种技术实现、不仅对项目运筹帷幄,还要能解决一切性能问题。只有深入学习底层原理、spring、Java虚拟机,微服务,Mysql底层优化等,才能保持核心竞争力,拥有一份不错的薪资!

第三阶段3-5年

到了第三阶段3-5年的阶段,技术体系需要逐渐往大型层次进阶, 有效、高速的处理从很小到非常大的项目管理,随着我们的业务量越来越大和越高并发,单体的架构模式已经无法对应大规模的应用场景,利用分布式架构来冗余系统消除单点的故障,从而提高整个系统的可用性。同时分布式系统的模块重用度更高,速度更快,扩展性更高是大型的项目必不可少的环节。

关于找工作面试

1、面试一定要带简历,这是态度问题,不然容易第一印象就不好。

2、简历上最核心的2点,1是自己掌握的技术栈说明,让面试官清楚知道你掌握技术栈;2是项目中使用了哪些技术栈,体现自己对这些技术栈的实际项目的运用情况。

另外简历不要超过3页。很多早期的项目经验和大篇幅的项目功能介绍,并没有什么意义。

3、准时,实在有突发情况,要提前打电话商量修改面试时间。

4、至少提前几周准备面试,因为java知识体系真的很庞大,不复习下直接面试,就像送人头一样,很容易错失难得的面试机会。

5、java基础一定要掌握好,不然丢分非常严重。之前面试一个高级java,竟然回答不出年轻代的垃圾回收机制,一下子我都不想继续聊下去了。

6、框架的核心特性要熟悉,并对其实现原理有一定的了解。比如:Spring Boot有哪些新的特性?它的核心特性自动化配置的原理了解吗?

7、主流中间件的工作原理和调优有一定的了解。

8、数据库一般也是必问的,索引,锁,事务,sql优化都必须了解。

9、听清楚面试问题再回答,不要答非所问,太过自由发挥。你和面试官聊的越有共鸣,你通过的几率越高。不知道可以直接说不知道,然后再阐述下自己的认知和了解,以探讨的方式让面试官和你互动,这样也能偷师点东西。

10、了解不深的技术栈名词和机制,尽量回避,不然只要你提到,面试官就可能展开深入的问下去。

11、多积累一些技术圈的人脉,很多时候内推进入会容易很多。

12、多积累一些可展示的技术成就和作品,比如参与了某某著名网站或者APP的核心模块开发,在GitHub上开源了什么框架或者参与了什么开源框架的开发,著名博客网站的一些排名,运营某某技术公众号。

上面我们提到系统化学习的重要性,那么到底该如何系统化的学习?

启蒙扫地僧马士兵P5—P8系统课程体系图

阿里巴巴企业及P8架构师学习导图及淘宝大型项目


网络异常,图片无法展示
|

网络异常,图片无法展示
|

阿里巴巴P7级别系统学习导图

网络异常,图片无法展示
|

网络异常,图片无法展示
|

一、微服务体系

微服务架构的系统是一个分布式的系统,按业务进行划分为独立的服务单元,解决单体系统的不足,同时也满足越来越复杂的业务需求。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

网络异常,图片无法展示
|

二、K8S

Kubernetes能在实体机或虚拟机集群.上调度和运行程序容器。且, Kubernetes也能让开发者斩断联系着实体机或虚拟机的”锁链”, 从以主机为中心的架构跃至以容器为中心的架构。该架构最终提供给开发者诸多内在的优势和便利。Kubernetes 提供给基础架构以真正的以容器为中心的开发环境。

网络异常,图片无法展示
|

三、Redis及ZK

Redis是一个开源,内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。

网络异常,图片无法展示
|

四、分布式、Spring源码及MySQL调优

网络异常,图片无法展示
|

网络异常,图片无法展示
|


网络异常,图片无法展示
|

SpringBoot源码解析


网络异常,图片无法展示
|

网络异常,图片无法展示
|

网约车项目


网络异常,图片无法展示
|

微服务体系


网络异常,图片无法展示
|

网络异常,图片无法展示
|

P8架构视频


网络异常,图片无法展示
|

网络异常,图片无法展示
|


马士兵整理大厂面试专题及大牛简历分享

网络异常,图片无法展示
|

网络异常,图片无法展示
|

阿里巴巴内部PPT全集及电子文档分享

网络异常,图片无法展示
|

马士兵全集视频分享


网络异常,图片无法展示
|

网络异常,图片无法展示
|

本文就是愿天堂没有BUG给大家分享的内容,大家有收获的话可以分享下,想学习更多的话可以到微信公众号里找我,我等你哦。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
存储 Linux
Linux中的进程等待(超详细)
Linux中的进程等待(超详细)
565 1
|
存储 运维 数据可视化
具有中国特色的普及工厂数字化转型的新路子
具有中国特色的普及工厂数字化转型的新路子
125 1
|
安全 Java 数据库
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
这篇文章是关于Apache Shiro权限管理框架的详细学习指南,涵盖了Shiro的基本概念、认证与授权流程,并通过Spring Boot测试模块演示了Shiro在单应用环境下的使用,包括与IniRealm、JdbcRealm的集成以及自定义Realm的实现。
390 3
shiro学习一:了解shiro,学习执行shiro的流程。使用springboot的测试模块学习shiro单应用(demo 6个)
|
机器学习/深度学习 算法 算法框架/工具
深度学习中epoch、batch、batch size和iterations详解
深度学习中epoch、batch、batch size和iterations详解
1773 0
|
数据格式
如何绘制热图?ggplot2入门笔记
如何绘制热图?ggplot2入门笔记
|
开发者 Sentinel 微服务
高并发架构设计三大利器:缓存、限流和降级问题之降级策略中的有限状态机的三种状态切换的问题如何解决
高并发架构设计三大利器:缓存、限流和降级问题之降级策略中的有限状态机的三种状态切换的问题如何解决
302 0
|
存储
MCS-51单片机的中断源
MCS-51单片机的中断源
957 1
|
自然语言处理 安全 Unix
【天枢系列 01】Linux行数统计:命令对决,谁才是王者?
【天枢系列 01】Linux行数统计:命令对决,谁才是王者?
336 4
|
存储 机器学习/深度学习 人工智能
玩转AIGC | 使用阿里云NAS+PAI-EAS部署Stable Diffusion文生图模型
阿里云的AIGC存储解决方案是覆盖了数据收集、模型训练以及模型推理整个生命周期,本实验场景主要覆盖模型推理过程,介绍如何使用模型在线服务(PAI-EAS)以及文件存储NAS部署AIGC应用,快速生成图片。
14613 10
玩转AIGC | 使用阿里云NAS+PAI-EAS部署Stable Diffusion文生图模型
|
算法 Linux 开发者
【Linux】后台进程
【Linux】后台进程
663 0

热门文章

最新文章