如何提升Java程序员的价值分支路线【金沙澳门官

作者: 互联网资讯  发布:2019-12-01

随着涌入程序员行业的从业者越来越多,很多程序员都或多或少处于贬值状态,当然站在顶端的程序员除外,其中Java尤为明显。那么怎么样才能提升Java程序员的价值呢?

貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时,才会真实的感受到这句话。

金沙澳门官网dkk,1. 锻炼高并发高可用,网络编程以及系统架构设计能力。如果你一直在从事基于Spring + Mybatis之类的开发,且都是一些管理系统,没有流量,没有技术难度,那么哪怕你工作10年,也跟工作1-2年的程序员没啥区别,可能别人比你还更拼命。所以哪怕是10年实际上你还是处于一直贬值状态。推荐方式:高并发高可用框架至少要了解一种。比如:Dubbo、Disruptor等等。网络编程。比如:Netty、ZeroMQ等等。系统架构设计能力则需要多了解一些原理和经验实战。比如秒杀系统为何需要用 Redis,为什么需要序列化反序列化,为何使用Thrift等等。

工作第一年,往往是什么都充满新鲜感,什么都学习,冲劲十足的一年;WEB行业知识更新特别快,今天一个框架的新版本,明天又是另一个新框架,有时往往根据项目的需要来不断学习新东西;所有,很多时候感觉,自己用过的东西真多呀!但是真正深入研究的东西却不多。

2. 转型从事大数据开发。大数据时代,同一级别的大数据开发人员比同一级别的普通Java开发者薪资要高出很多。而目前大数据很多框架都是采用Java来开发的,所以转型成本相对其他语言来说不高。转型方式可以通过自学或者找靠谱的培训机构,当然一定要能够坚持。推荐方式:深入学习一种大数据语言。 离线大数据:Hadoop、Spark。实时大数据:Storm、SparkStreaming、Flink。

面试,是跳槽后第一个需要面对的问题;而且不同公司面试的着重点不同;但是却有一个共同点:Java基础是必考的。

金沙澳门官网dkk 1

工作第一年,可能问你String对象创建的理解,常用的框架是什么等等;

金沙澳门官网dkk 2

工作第二年,就问你Java内存分配机制是什么,类是如何加载的等等;

金沙澳门官网dkk 3

第三年,就问你常用的设计模式是什么,你在工作中充当什么角色,怎么独立完成一个模块等等;

金沙澳门官网dkk 4

可以看出——这是一个典型的程序员的成长过程:

3. 考类似pmp的项目管理证书,往项目经理方向发展。实质上一些小公司,时间待久一点的员工都会被作为骨干程序员或者项目经理培养,公司会给予一定的带团队的机会。这个时候一定要利用好机会,锻炼自己技术之外的管理能力,同时去考个靠谱的证书,有个本总比啥也没有要好。这一步如果走得好,那么恭喜你,脱离了编码这一层面,你已经上了一个台阶了。推荐方式:考pmp证书,土豪可以考MBA。

使用Java—->深入理解Java积累经验——>独立设计分析能力——>独当一面的多面手!

4. 发表高质量技术文章,多参与开源社区的代码提交,锻炼知识分享能力。17年之后,知识付费逐渐火了起来,对于想要依靠技术来提升价值的人来说,知识分享不愧于一种最直接的手段,当然前提是你能发表高质量文章,在一些知识付费平台开一些精辟的课程,在开源社区积攒人气。推荐方式:1. 开通头条号,微信公众号等等,坚持发表技术文章。2. 兼职做技术讲师。现有很多平台都可以做外聘讲师:比如网易云课堂,极客时间等等。个人推荐极客时间,大牛多。3. 多看github经典项目的一些源码。

因此,必须学习:

1.作者目前在大型互联网公司从事大数据开发。以后会长期更新一些Java和大数据干货,阅后如果喜欢,不妨点赞、收藏、评论和关注一下。

Java基础的深入理解;

  1. 在技术中有什么问题,欢迎与我沟通交流。

不多作解释,推荐书目《Java编程思想》,《Java线程》,《Java NIO》,《深入java虚拟机》

数据库

最常用的是Oracle了(当然银行项目等需要DB2等),熟练掌握使用存储过程,触发器等;

UML

项目中经常要写文档,项目经理的基本功,程序员走向设计的基本功;

设计模式

这个建议多看吧,在阅读源码中体会;

linux系统

需要掌握常用的linux命令——部署在windows操作系统上的项目很少吧。

其他就不多说了,大家可以补充。

学习上,兴趣是最大的老师;项目驱动也是不错的选择,总之,不学习不行。

第二. 积累行业背景;

行业背景非常重要;工作3年后必须确定自己的行业背景,比如一直从事电信行业,一直从事银行项目,一直从事ERP行业等等。

一个程序员不可能是一直写代码的,就是写代码也要知道业务逻辑,满足什么需求;俗话说隔行如隔山,每个行业的业务都不一样,甚至差别很大,比如你一直从事流媒体的研究,让你跳槽到一家银行项目,完了,一切从头学吧,以前的行业经验都用不上了;而且,一个公司公司招人,就是希望找到那些很容易上手,不需要培训业务很久的程序员;频繁跳槽的朋友,一定要注意这点;

一直在一个行业呆久了,就可以成为这个行业的专家;我们可以经常看到,一个项目组的某个leader,代码写的一般,但是却可以跟客户流畅的沟通,控制着新需求的提出,bug的修正等等;而客户也很愿意跟他打交道,因为那些老的项目只有他能维护,他甚至熟悉系统的每一张表结构——-可想在这个行业呆的时间有多久啦。

第三. 合理的职业规划

什么是职业规划—-就是你短期或者长期的一个职业计划!大道理不讲,咱简单点。先问你几个问题:

a.你工作几年了,你愿意一直和新入行的新手一样就是个简单的程序员吗?

b. 你愿意一直写代码,而不关心其他吗?

c. 一个项目的前期需求,设计,后期部署维护,领导找到你,你说咱搞不定,行吗?

程序员不是敲代码的机器。第一年太多东西不懂,你可以一切听从老大的安排,敲敲代码,看看数据库,测试自己和别人的代码;但是第二年,你还是这样吗?不可能的,一年的经验你完全可以入行了,是时候该学习怎么进行需求分析,怎么设计数据库,怎么写各类文档,怎么写更好的代码?这是高级程序员的要求!

什么是高级程序员?

具有分析设计能力,能进行技术攻关,而且具有某行业深厚背景的程序员!

所有,一个项目立项后,你要积极的参与到前期设计中,跟老同志们一道思考分析问题,学习经验!OK,你这就成长啦!

千万不要认为程序员就是写代码的哦!!!

而且,通过一个项目的开发,你要能粗略的统计出一个功能的开发时间;比如一个模块有20个小功能点,你开发了80个小时,每个小功能点平均2小时——这时在前期就能评估工作量啦。当然每个人的效率和工作质量是不同的,因人而异,但是大概的工作量应该是可以统计出来的,用于统计一个项目的工作周期;

具备上面的能力,你起码已经是一个项目组的骨干啦!此时,就可以带领小弟做开发而不是平凡的一个被带领者啦。

很多公司的项目骨干和项目经理都不是通过招聘的来的,都是培养出来的——-工作2年,思考能力不错,善于动手,很上道!OK,此时项目经理和公司中层可能就注意到你了,就会给你多分配任务慢慢的锻炼你,这时候千万不要闹别扭哦(曾遇上这样一个同事,技术很好,人也不错,领导突然给他分配很多任务,他开始是默默承受,后来闹意见啦!领导找他谈话后,他算明白啦!顶过一段时间就基本适应,可以快速的做完;后来他成了我们那批人中新的项目leader啦),跟带你的人好好学习,多劳动,很快就出头啦!

如果你工作了多年,属于老鸟了,也要善于带人,能提携小弟!因为只有小弟成长了,你身上的担子才会轻,项目才会顺畅的进行!

本文由金沙澳门官网dkk发布于互联网资讯,转载请注明出处:如何提升Java程序员的价值分支路线【金沙澳门官

关键词: