Java 程序员从入坑到年薪二十万的进化之路
撇开题目不谈,我个人认识一些非常厉害的程序员,他们有的是 bat 的大牛,有的自己创办了公司,有的在一些企业担任着重要的角色。正是这些让人仰望的存在,给了我们无限遐想。他们的年收入,可能在 50 万以上,可能是 100 万以上。
我当然在这些耀眼的新星之外,入行三年,从一个小白到年薪二十万左右的行业资深油条。如果你也和我一样,并不属于那一部分天之骄子,那么本文将是一个很好的参考。
要学什么
首当其冲,自然是 Java 的基础语法。各种语言其实都大同小异,三种结构:顺序,分支,循环。几种数据类型,集合框架,异常,多线程等。下面给出一张基础语法学习思维导图。
最近不少人问我,我要转行,我要毕业,我要跳槽,学什么?问我干什么,我的建议是去问你将要进入的公司。以下是几个拉钩上面的招聘需求。
多看几个企业的需求大致就能知道,刚入行应该学什么,Java 基础只是和一点框架知识,知道怎么用然后刷刷面试题,那都不是事儿。
想要拿到更多的 money,技能要求就要更多一点了,这个时候,你应该会的技术除了一些框架以外,你会看到分布式,微服务等字眼,这就是你该学的。
从 CV 开始
一开始的时候,我什么都不会,但着并不影响我的日常工作。比如一个简单的冒泡排序,你会怎么做?
先想象一下一个 for 循环,嵌套一个 for 循坏,比较大小,交换位置,然后开始码代码。
这个阶段,我们可以叫 CV 工程师,首要做的,就是要知道如何寻找代码,然后复制到自己的项目中去。谷歌?访问外国网站太麻烦,其实百度就能解决 90% 的问题。剩下的 10% 那就不是问题!
作为一个熟练的 CV 工程师,你大概可以拿到 10 万以下的收入。
阶段建议
玩转框架
CV 工程师玩熟练了之后,可以考虑搭建一些框架了。比如 springmvc+mybatis,我有认识的朋友开发三年了搭一个这样的框架还需要好几天,甚至还搭不好,这实在不应该。
网上总能找到各种各样的教程,你在公司里面工作了之后,肯定就会对一些框架或多或少的有一定的理解,这个时候找个例子,结合工作经验,自己搭建各种框架,初级需求的搭完了,可以搭一下中级的。
比如 dubbo,自己动手搭一套能够完整运行起来的分布式服务,你会成长很多。安装 zk,部署 dubbo 的 monitor,设计接口,开发消费者和提供者。最后部署运行。
每一步的成长都是那么自然,下面给出一张 Java 框架部分的思维导图, 不一定完全,但是都掌握熟练应用了,基本可以让你的工资上升一个台阶了。
阶段建议
深入原理
面试的时候经常会有以下这种类似的对话:
Q:HashMap 是有序的吗? A:无序 Q:有没有有序的集合? A:LinkedHashMap Q:它是怎么实现有序的? A:巴拉巴拉巴拉
这个面试场景就是考察原理的掌握了,不光是 Java 基础部分的原理,各种框架的原理也会经常本问到。spring ioc aop 是什么原理,动态代理模式是怎么实现的啊?
这个阶段就要求对各种原理有一定的深入理解,目前我也在这个阶段摸索着。原理阶段摸索得差不多都能侃侃而谈得时候,年薪二十万基本上不是什么问题了。
阶段建议
职业发展路线
一张进阶图,选择自己的路,坚持学习下去,终究能收获属于你自己的成功。
未完待续……
我将与你一起探索!