大家好,我是二哥呀。
今天端午节,我带着老婆、女儿、妹妹来青岛了,高铁上,我们谈起了毕业后去哪里工作的话题。老读者应该知道了,我毕业后去的苏州,从个人情感上来说,我是非常喜欢苏州的,不仅景美,人也美,哈哈。
毕业后去哪个城市,其实对于我们程序员来说,还是蛮重要的,这在很大程度上决定了你未来的职业发展。
首先,尽量选择一线城市,比如说北上广深杭,这里的机会多,薪资起点高,技术紧跟潮流。其次,可以选择省会城市,比如说成都、南京、武汉,薪资相对还不错,技术也跟得上,还可以作为长期发展的根据地,没有意外基本上就在这里定居了。
我当时从苏州回洛阳的原因其实很简单,因为——爱情。加上实习的一年时间,我在苏州了工作了三年半,当时刚涨了一波薪资,签了新的合同,在公司的发展前景也很不错。但为了爱情,必须忍痛离开,异地你懂的。
当时对在洛阳的发展其实是挺悲观的,没想到,这些年,凭借自己的努力,发展的还算是有声有色。我身上的这些变化,老读者应该感受得很明显,尤其是身边的一些同学,基本上都觉得我特别不可思议,完全超出了他们的认知程度。
我心里其实对我妹是有规划的,这点她也很清楚,所以她想毕业后去北京做 Java 开发。其实也不一定非要去北京,上海、广州、深圳、成都、杭州这些城市都是可选项。
去这些城市,有一个天大的好处,就是起步的薪资会相对较高。这么说吧,一个水平还算不错的程序员,即便是工作了五六年,在郑州这样的二线城市,能拿到一万五的薪资算是表现好的了。对于北京这样的一线城市来说,情况就完全不同了,如果学历 OK,表达能力强,能击中面试官的痛点,起薪拿到两万是没有问题的,如果还有其他优秀的加分项,拿到的薪水会比这个数目高得多。
退一万步说,即便是拿不到这个数,也会比二三线城市好很多。
薪资拿到这个数难不难,当然是有难度的,但只要找到方法,自己肯去努力,就有很大机会拿得到。给大家晒张图,我之前在票圈提到过。
要想学好 Java 虚拟机,必须得啃周志明老师的《深入理解 Java 虚拟机:JVM 高级特性与最佳实践》,目前已出到第三版。如果觉得比较难懂的话,其实可以到 GitHub 上看看我给你推荐的这份读书笔记。
https://github.com/TangBean/understanding-the-jvm
其中 Java 内存管理机制和 Java 虚拟机程序执行需要重点掌握,至于虚拟机性能监控以及故障处理,其实可以放到工作以后再去实践会好很多。
4)框架原理,我建议大家不要对学习框架有任何的抵触,不要总觉得学习 Spring 全家桶很 low,其实不是的,学会了 Spring 全家桶,你就可以上手做练手项目,做了练手项目,你就会感觉学过的那些知识都可以落地了。
学习框架当然不能只停留在会用的层面上,还得懂一些原理,比如说 Spring 的 AOP、IoC、DI 等等,@Guide 哥的《面试突击》解释得很清楚,一起来看一下。
AOP(Aspect-Oriented Programming),也就是面向切面编程,能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可拓展性和可维护性。
IoC(Inverse of Control),也就是控制反转,是一种设计思想,就是将原本在程序中手动创建对象的控制权,交由 Spring 框架来管理。DI(Dependency Injection),也就是依赖注入,原来叫 IoC,能让人更加直观和清晰地理解其背后所代表的含义。
如果还不理解的话,可以看看《码农翻身》,里面讲的更生动一些。
5)数据库,面试中最经常问的就是 MySQL 和 Redis。关于 MySQL 的学习,我之前也推荐过学习资料,书的话就是《SQL 必知必会》和《高性能 MySQL》,在线学习 站的话,就上 MySQL Tutorial,内容还是非常全面的,下图是 MySQL 在面试中常见的知识点。
像《TCP/IP 详解,卷 1》是讲解 络协议的经典书,不过学习难度比较大,可以看一看《图解 HTTP》以及《 络是怎样连接的》这两本书,有大量的图片穿插,阅读起来就不会那么枯燥。
数据结构与算法,@程序员吴师兄画过一副思维导图,里面几乎涵盖了所有数据结构和算法书籍中都会讲到的知识点。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!