对工作1-3年的程序员来说,依据个人情况提前规划未来职业发展方向,这很重要。譬如,在未来3-5年甚至更久,工作要做到什么程度?往哪个方向发展?通过怎样的路径才能实现目标?如果沉浸在当下“程序员高薪”的论调中岁月静好,总归有一天会面临网上热议的“程序员中年危机”,以至于最后不得不步入转行或提前退休的尴尬局面。
**职业规划的重要性**
人生和职场就像下象棋,你只有明确了目标才不会在每一步上迷茫,之所有迷茫,是因为不清楚自己最终想要什么,下一个阶段的目标在哪里?
我相信有很多的程序员都会遇到这些问题:
某公司表示薪资上浮20%-30%,我应该跳槽加入吗?
我最近收到了几个offer,应该去哪一家更好?
从大公司去小公司,是否值得去尝试?
想成为架构师,但不知道自己的技术是否能胜任?
从程序员转行,但不知道未来自己的竞争力会变弱吗?
……
**其实,追求短期利益(眼前)或长期利益(未来),取决于你自己的决定。**
建议是,不要在你经历之后,再去回顾职业生涯,初期跳槽涨薪确实很快,但到了中后期,跳槽再也带不来前期的涨幅,反而在频繁的跳槽过程中,失去了很多机会,技能与业务的能力也没能积累沉淀下来,这将直接导致很多人在即将步入中年时感到异常焦虑,不知道自己未来的路何去何从。
跳槽和转行如果仅仅只是工作逃避的手段,未来你将面临更大的焦虑,未来也根本谈不上什么有什么核心竞争力。但如果跳槽和转行,是谋定而后动,围绕你的主线职业去发展,这是完全不一样的结果。
总之,在职业的选择上,绝不能有“逃避”二字,逃避将会让你无处藏身,你只有明白了这个道理,你才会去克服眼前的困难,学会承担,这样的人生才有未来。
**程序员的职业发展方向**
**架构师(专注技术,侧重技术)**
每一个程序员都有一个架构师的梦想,这个方向是很多技术人的第一选择,从年薪十几万的程序员成长为年薪几十万甚至过百万的架构师,给力的薪酬已足以让不少程序员心动不已。若未来你想成为架构师,那么现在至少需要清楚了解架构师的主要职责是什么?有目标有方向地坚持学习。
**架构师的主要职责是什么?**
架构师,是一个既需要掌控整体又要洞悉局部瓶颈,并依据具体的业务场景给出解决方案的团队领导型人物,他需要参与项目开发的全部过程,包括需求分析、架构设计、系统实现、集成、测试和部署各个阶段,负责在整个项目中对技术活动和技术说明进行指导和协调。
架构师应该是立足于技术和业务之间的中间角色或者平衡点, 在针对业务深刻理解的基础上,针对业务中存在诸多变数,挑选适合的技术架构和技术方案。
架构师必备知识是什么?
**1. 设计模式**
![设计模式](https://upload-images.jianshu.io/upload_images/11633898-ecc4d25330893d9b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**2. 框架源码分析**
![框架源码分析](https://upload-images.jianshu.io/upload_images/11633898-a33e428622e13e72.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**3. 工程化工具**
![工程化工具](https://upload-images.jianshu.io/upload_images/11633898-fb5a41ce9a0a39dd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![工程化工具](https://upload-images.jianshu.io/upload_images/11633898-009068f4dc4b3019.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![工程化工具](https://upload-images.jianshu.io/upload_images/11633898-6d4d15ba87b48f3b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**4. 并发编程**
![并发编程](https://upload-images.jianshu.io/upload_images/11633898-1ad1527c1bf79468.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**5. 分布式架构**
![ 分布式架构](https://upload-images.jianshu.io/upload_images/11633898-105b5d17f7ed72d1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![分布式架构](https://upload-images.jianshu.io/upload_images/11633898-ff1fae81babd5ea3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![分布式架构](https://upload-images.jianshu.io/upload_images/11633898-2cbb76d04d180e07.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![分布式架构](https://upload-images.jianshu.io/upload_images/11633898-647db1f54311ce00.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![分布式架构](https://upload-images.jianshu.io/upload_images/11633898-7a3208e84ebb0ec8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**6. 微服务**
![微服务](https://upload-images.jianshu.io/upload_images/11633898-c4955a8a24d93146.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**7.性能调优**
![性能调优](https://upload-images.jianshu.io/upload_images/11633898-1768cc1bc466eff1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![性能调优](https://upload-images.jianshu.io/upload_images/11633898-63bb4da1f6638735.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![性能调优](https://upload-images.jianshu.io/upload_images/11633898-ae73eefc4957a94d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**8. 实战电商项目经验**
![实战电商项目](https://upload-images.jianshu.io/upload_images/11633898-0a7641ba3a1c91fc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**项目经理(技术一般,侧重管理)**
往管理方向发展的职业路径,项目经理主要侧重于项目管理工作,主要能力是计划、沟通及组织协调。沟通和表达是开发人员短柄,所以想往此线路发展的同学,从日常的工作、生活中就得逐步加强锻炼这方面能力。
**产品经理(转岗)**
如果你对技术发展路径、管理发展路径都不感兴趣,那么不妨考虑转产品经理,移动互联网时代,产品经理的角色越来越重要,一个好的产品经理有可能带给公司颠覆性的发展,收入各方面也还不错,我认识的一些程序员,也有转行做产品经理,并且做得还不错的。
### 总结
不管选择什么样的路径,都离不开提前规划、充分准备,机会总会留给有准备的人。程序员是个相对公平的职业,你若盛开,蝴蝶自来,薪酬也会随能力得到明显增幅,那么大家在应对中年危机时更加游刃有余了,这句话送给自己及大家:Stay hungry ,Stay Foolish。我们,共勉!
**【文章彩蛋】**
给大家推荐一个**Java进阶内推交流群967051845**,不管你在地球哪个方位,不管你参加工作几年都欢迎你的入驻!(群内会免费提供一些群主收藏的免费学习书籍资料以及整理好的几百道面试题和答案文档!)
![](https://upload-images.jianshu.io/upload_images/11633898-502930daca368223.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
有疑问加站长微信联系(非本文作者)