2019将到,个人年终总结(7年开发经验),献给迷茫中的你

clipboard.png

我愈来愈担忧我做为一个Java程序员的将来。
恍然间,发现本身在这个行业里已经摸爬滚打了7年了,原觉得本身就凭已有的项目经验和工做经历怎么着也应该算得上是一个业内比较资历的人士了,可是今年在换工做的过程当中却遭到了重大的挫折。详细过程我就再也不叙述,在此,只想给你们说一说被拒绝的缘由,看看你们有没有类似的经历,和相似的感悟。
面试官对个人答复大体是这样的,咱们不须要熟练工,咱们须要在某领域拥有超过常人的积累认知,和拥有整套完整思惟模式和优秀认知事物能力的人…他很诚恳地告诉我,你还年轻,真的应该好好地静下心来,深刻地研究一些东西,本身写一些东西,而不是这也用过,那也知道,可是多半都是局限于仅仅见过,会用,却历来没有认真思考过其代码背后蕴含的思想,更少有人研究过源码,进而体会大师们在某些问题的解决上秉承的思想和思惟的风格。我的感受,这也算是国内大部分程序员最让人悲哀的地方了,固然这也与外界浮躁氛围的蔓延不无关系。
不了解这一行的人总以为程序员都是代码民工,若是本身也认为本身是敲代码的机器的话,我诚恳地建议您尽早转行吧,也许我这么说会得罪伤害一些同行,毕竟转行对任何一我的来讲都是有至关的风险和挑战的。不过这绝对应该是善意的忠告。相反,我强烈地认为,程序员应该是最有活力和最有思想的一个群体,只要你不愿让本身浮于表面,更重要的是,必须勤于思考。若是你承认我这句的话,就请您继续往下看看个人感慨,不然,那就但愿您好好利用好本身的时间作您最须要作的事吧。
因为面试中被问到Spring,MyBatis的时候,让面试官问得人仰马翻,哑口无言,因此回来以后洗心革面,下决心要把Spring,MyBatis好好研究个明白,再也没法容忍本身只知其一不知其二了。
清醒的认识本身
我一直担惊受怕,过去,多是由于我年轻,但如今,我已经不是那么年轻了,我仍然发现有不少事情让我惧怕。
当年纪愈来愈大后,我开始变得不能加班。我开始用更多的时间和家人在一块儿,而不是坐在计算机前(尽管这样,她们还是抱怨)。我在本地教育委员会社区里提供一些帮助,还组织开源兴趣小组参加活动。
我在思考,为何之前会把如此多的时间所有用在编程上。大量的编程。那是我渴望深刻研究一个类库,一个框架或一门技术。
如今的技术的学习曲线的增长,让个人忍耐性愈来愈低。各类新技术,由于新奇让人兴奋,但最终变成一场场争论。我愈来愈没法忍受这些充满市场宣传气息的喧嚣。我对技术看重的是稳定,清晰。
据不彻底统计,截至目前为止,中国Java程序员的数量已经超过了100万。并且,随着IT培训业的持续发展和大量的应届毕业生进入社会,Java程序员面临的竞争压力愈来愈大。那么,做为一名Java程序员,怎样努力才能快速成长为一名高级的程序员或者架构师,或者说一名优秀的高级工程师或架构师应该有怎样的技术知识体系,这不只是一个刚刚踏入职场的初级程序员,也是工做三五年以后开始迷茫的老程序员,都必需要面对和想明白的问题。为了帮助你们少走弯路,我总结出一个Java程序员的工做2-7年成长路线图。
1、开源框架解析
程序员天天都和代码打交道。通过数年的基础教育和职业培训,大部分程序员都会「写」代码,或者至少会抄代码和改代码。可是,会读代码的并不在多数,会读代码又真正读懂一些大项目的源码的,少之又少。这也形成了不少错误看源码的方式。
那要如何正确的分析源码呢? 咱们的目标应该放在最经常使用的框架上面:程序员

clipboard.png

2、架构师筑基
从架构设计,到应用层调优,再深刻了解底层原理,扎实的Java基本功才能让本身变为扫地神僧:内存模型,并发模式,线程模型,锁细节等等面试

clipboard.png

3、高性能架构
咱们不只仅对项目要指挥若定,还要能解决一切性能问题。只有深刻学习JVM底层原理,Mysql底层优化以及Tomcat调优,才能达到知其然,知其因此然的效果。除了性能优化以外,也能提供通用的常见思路以及方案选型的考虑点,帮助你们培养在方案选型时的意识、思惟以及作各类权衡的能力。sql

clipboard.png

clipboard.png

clipboard.png

4、微服务架构
关于微服务架构的取舍编程

在合适的项目,合适的团队,采用微服务架构收益会大于成本。
微服务架构有不少吸引人的地方,但在拥抱微服务以前,也须要认清它所带来的挑战。
须要避免为了“微服务”而“微服务”。
微服务架构引入策略 – 对传统企业而言,开始时能够考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。性能优化

clipboard.png

5、团队协做
开发工具工程化
经过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。程序员的战斗,每每不是一我的的战斗,咱们如何在一个平台下高效的去重,进行代码review,对功能进行调整,debug,作到在统一的规划下步步为营,混乱的堆代码的过程当中找到本身的记录。这一切都依赖于有效的工具。架构

clipboard.png

6、B2C项目实战
项目实战
要想立足于互联网公司,且能在互联网浪潮中不被淹没,对于项目的开发实战演练是没必要可少的技能,也是对自身能力的一个衡量,有多少的量对等于得到多少的回报。看似简单的一个项目需求图谱,其中的底层原理,实现原理又能知道多少?你搭建一个完整的B2C项目平台到底须要多少知识?这一切都是须要咱们考量的。并发

clipboard.png

我特地整理了一下,在面试中遇到的不少问题不是靠几句话能讲清楚,因此干脆找朋友录制了一些视频,不少问题其实答案很简单,可是背后的思考和逻辑不简单,要作到知其然还要知其因此然。框架

若是你也对Java工程化、高性能及分布式、JVM。性能调优、Spring、MyBatis,Netty源码分析感受兴趣,或者打算明年跳槽的朋友能够加个人Java架构师学习交流群:828545509,群里有也一些BAT的大神,跟你们交流分享,看看大神们是怎么学习提高本身的,另外我收集了一些Java大型互联网技术的视频,以及BAT等大型互联网的面试题,加群免费分享给你们!!分布式

点击连接加入群聊【Java高级架构师学习群】:https://jq.qq.com/?_wv=1027&k...微服务

相关文章
相关标签/搜索