Java程序员你是否有了明确的职业发展规划?
就现在经济大环境而言,很不乐观,Java程序员的日子也很不好过,无论是还在找工作的、还是已经入职多年、哪怕做到项目经理技术经理的,压力都异常巨大,似乎处处充满危机。但是,仔细分析一下,出路还是有的,甚至解决温饱、过上有房有车没贷款的生活也是很可能的。首先,在如今这个浮躁的社会,大多数人的心态也是浮躁的,只要你能潜下心来,深入研究某个技术,有了一技之长,温饱问题肯定就可以先解决了。
1、 走向架构师
对于任何一个Java开发人员来说,架构师都是一个令人向往的角色。那么从程序员与架构师有没有比较明显的区别呢?其实架构师和程序员的界限并不是很大,比如现在仍然在每天写代码。其实成长首先来自于自身的学习,而阅读成熟项目的代码会使人受益匪浅,其次就是来自于所从事领域的经验,要了解分布式系统的特点,在做项目时,要能够关注性能、扩展性、可靠性、可用性等指标。
架构师其实就是一个漫长的积累过程,从准备期到动荡期我们都是不停的探索,学习。大部分的架构师的年龄都是在35岁左右,这个阶段就是程序员的黄金期。那么我们如何以一个架构师的标准来加强自己的能力呢?程序员要成为一名架构师发展,需要进一步加强技能的修养。,对于互联网公司来言,最重要的技能是对网络和分布式系统的理解,网络上面的书籍很多,比较麻烦的是分布式系统,除了分布式在现在大型互联网企业中,对于技术知识,个人推荐还得掌握高性能、深入浅出。性能调优、Spring,JVM等技术。当然了,良好的驾驭管理开发团队的能力,良好的人格修养,能够让架构师在开发项目中游刃有余,不会出现意料之外的干扰,更能从内散发出人格魅力。
2、 走向项目经理
也有一些程序员工作机遇比较好,不但负责了项目的设计工作,而且负责了项目管理工作。对项目经理这个工作有了一定的尝试。因此,这类程序员可以审视一下自己,是否合适这项工作。如果自己对这种工作比较满意,而且具备项目经理的要求,则可以向项目经理这个方向发展。项目经理承担着项目管理的职责,对项目负主 要责任。它和程序员的作用也不相同,项目经理的重点已经从编程转移到对人、对技术、对进度、对项目的管理。由于软件的项目经理与软件项目的相关性太大,因 此,他必须要了解软件开发的各个环节、了解开发的各种技术和运用、了解开发队伍人员的水平和特点。所以他依旧和程序员脱不了干系。从程序员到项目经理可以使得项目经理更好地理解程序员在项目中的地位和作用,了解软件开发的各种规律性的东西。从而保证项目的正常完成。而且,项目经理的收入在公司中的地位也是 比较高的。因此,我认为走向项目经理是程序员的另一个发展空间。我想提醒一下,程序员在担任项目经理之前最好要把软件设计工作做好,这样在做项目经理的时 候,就会有很好的基础。
3、 走向管理者
很多程序员希望自己能成为公司中的主管、经理、老总、老板,这样无论是收入和在公司的地位都相对比较高一些。另外,一方面程序员可能厌倦了年复一年的编程工作,对工作产生了抵触情绪,希望能摆脱这种步步紧逼的工作状态。走向管理者其实要求程序员要比一般人做更多的准备,要做更多的转型工作,并不是想当管理者 就能成为管理者的。但是,如果程序员有这个志向和爱好,有积累了这方面的工作经验,自己也感觉在这个方面能够发展,更重要的是有这样的机会,走向管理者也 是可能的。由于软件公司的管理者毕竟不同于一般公司的管理者,专业能力越强,管理起来就越得心应手的,没有专业能力的管理,遇到的问题很多,也很难解决。 因此,我的建议程序员最好要把编程、项目设计、项目管理等基础打打好。这样转型到管理者成功率就会高一些。
4、 原地踏步
当然也有一些程序员惰性比较大,满足于现状,享受着眼前的胜利果实,也无可非议。对待这些程序员,我们不要强求他们改变自己的想法,我建议是原地发展,把本职工作做得更好,把自己的技术水平往上再提高一步。在这个过程中他们的能力和自信心都会得到提高,他们的想法不会一直一成不变的。磨刀不误砍柴功,刀快了自然会去砍柴的。
不管做哪一行,都该尽早做好职业规划,人都是需要有一个目标去激励自己,Java程序员更是如此。朝着一个目标逐步提升自身实力总会比原地打转好,相信聪明的你该知道怎么做。
据不完全统计,截至目前(2017.07)为止,中国Java程序员的数量已经超过了100万。而且,随着IT培训业的持续发展和大量的应届毕业生进入社会,Java程序员面临的竞争压力越来越大。那么,作为一名Java程序员,怎样努力才能快速成长为一名高级的程序员或者架构师,或者说一名优秀的高级工程师或架构师应该有怎样的技术知识体系,这不仅是一个刚刚踏入职场的初级程序员,也是工作三五年之后开始迷茫的老程序员,都必须要面对和想明白的问题。为了帮助大家少走弯路,我总结出一个Java程序员的工作2-5年成长路线图。
我特意整理了一下,里面的技术不是靠几句话就能讲清楚,所以干脆找朋友录制了一些视频,很多问题其实答案很简单,但是背后的思考和逻辑不简单,要做到知其然还要知其所以然。如果想学习Java工程化、高性能及分布式、深入浅出。性能调优、Spring,MyBatis,Netty源码分析的朋友可以加我的Java进阶群:759563652,群里有JAVA大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。