4年程序员如何加薪升职穿西装,这些你有准备吗?

4年对于程序员来说是第一个门槛,这个阶段将会淘汰掉一批不适合写代码的人。这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本上的内容迈向真正的企业级开发。我们知道如何团队协作、如何使用项目管理工具、项目版本如何控制、我们写的代码如何测试如何在线上运行等等,积累了一定的开发经验,也对代码有了一定深入的认识,是一个比较纯粹Coder的阶段。


我认为,随着你工作年限的增长、对生活对生命认识的深入,应该明确自己的职业规划,对自己的规划负责并为之努力。


端正的态度及学习交流方面


  • 实用驱动,如果在实际使用场景有用到再去深入学习,这样边学边用才能比较集中注意力

  • 技术人员必然是技术优先,但是等你到了一定工作年限,其实业务经验也是非常重要了

  • 工作中遇到的问题,尽量刨根问底的去弄清楚是什么原因导致的,不要一些老司机帮忙解决了就一了了之。或者是其他同事遇到的问题,你都可以去了解一下。

  • 对技术求知欲很强,特别是一些高大上的技术,什么大数据、人工智能、区块链等等,有些偏向于技术研究,有些偏向于业务,这时候,静下来分析一下,你到底适合哪种方向。你能否静下心来对技术研究很深入,能否耐得住寂寞。


关于项目经验,我认为并发编程网的创始人方腾飞老师讲的一段话非常好:


       介绍产品时面试官会考察应聘者的沟通能力和思考能力,我们大部分情况都是做产品的一个功能或一个模块,但是即使是这样,自 己有没有把整个系统架构或产品搞清楚,并能介绍清楚,为什么做这个系统?这个系统的价值是什么?这个系统有哪些功能?优缺点有哪些?如果让你重新设计这个 系统你会如何设计?


我觉得这就已经足以概括了。也许你仅仅工作一年,也许你做的是项目中微不足道的模块,当然这些一定是你的劣势且无法改变,但是如何弥补这个劣势?


从方老师的话中我总结几点:

  • 明确你的项目到底是做什么的,有哪些功能。

  • 明确你的项目的整体架构,在面试的时候能够清楚地画给面试官看并且清楚地指出从哪里调用到哪里、使用什么方式调用。

  • 明确你的模块在整个项目中所处的位置及作用。

  • 明确你的模块用到了哪些技术,更好一些的可以再了解一下整个项目用到了哪些技术。


在你无法改变自己的工作年限、自己的不那么有说服力的项目经验的情况(这一定是扣分项),可以通过这种方式来一定程度上地弥补并且增进面试官对你的好感度。


写完项目接着写高薪Java程序员应该具备的技能,这可能是Java程序员们比较关心的内容。

我这里要说明一下,以下列举的内容不是都要会的东西—-但是如果你掌握得越多,最终能得到的评价、拿到的薪水势必也越高。


Java程序员一定要学好重点的技术,如下面这些


  • 并发包:理解 ConcurrentHashMap原理,线程池,异步并发,锁。

  • 集合类,线程类。

  • http请求。

  • json,xml读写。

  • 常用api。

  • 前端模块javascript、css,熟悉一个前端框架。

  • 常用框架、常见的设计模式、面向对象。


加薪必备知识点


  • 掌握Java编程语言,包含io/nio/socket/multi threads/collection/concurrency等功能的使用;

  • 熟练掌握jvm(sun hotspot和ibm j9)内存模型、gc垃圾回收调优等技能;

  • 精通JVM,JMM,MVC架构,熟练使用struts2。

  • 熟练使用spring、struts、ibatis构建应用系统。

  • 熟练使用Servlet,jsp,freemark等前端技术。

  • 熟练使用axis搭建基于SOAP协议的WebService服务接口。

  • 熟练使用MAVEN构建项目工程。

  • 熟练使用tomcat等web服务。

  • 熟练使用mysql等关系型数据库,熟悉mysql集群搭建。

  • 熟练使用redis等NOSQL技术。

  • 熟悉tcp、http协议。

  • 熟悉nginx、haproxy等配置。

  • 熟悉javascript、ajax等技术。

  • 熟悉主流分布式文件系统FastDFS等。

  • 熟悉JMS,可熟练使用ActiveMQ。

底层计算机理解内存管理/数据挖掘系统

可靠性和可用性如何理解

  • jsp和sever lap对比

  • 数据库到界面,字符集转化

  • 基栈

  • jvm优化cup高的时候如果分析和监控

  • java curb突出细节问题

  • 分布式缓存文档如何分流

  • 迁移数据库垂直分割

  • 高并发如何处理前端高并发应用层

  • LB设计load balance

  • 负载均衡

  • 防网络攻击

  • 数据日志事件监控后通知

  • 数据库事务实现的底层机制

  • 字符串空格输入的网络攻击

  • Quartz框架的底层原理

  • 数据库同步中不通过数据库引擎直接读日志等方式同步数据


时间

下面有这么一个公式,可能有些朋友曾经见过。

它告诉你,若每天比前一天进步0.01,非常微小的进步。

但是一年累积下来,你会比一年前的你牛叉37.8倍。

4年程序员如何加薪升职穿西装,这些你有准备吗?

那十年呢,二十年呢?

其实,这就是时间的力量。

结尾

最后,送大家一句话,我是在某个网站上看到的:

再牛 x 的梦想也抵不住傻 x 似的坚持!

还有,别走。

我没有办法助你成功,那是*工程师做的事儿。

我倒是有这么个晋升渠道,它可能会帮你完成那每天的0.01的积累。

4年程序员如何加薪升职穿西装,这些你有准备吗?

以上这些技术如何学习?有没有免费的学习资料 

对Java后端技术,对架构技术感兴趣的朋友,欢迎加QQ群:686367882,一起学习,相互讨论。

群内已经有小伙伴将知识体系整理好(源码,学习视频等资料),欢迎加群免费领取。

4年程序员如何加薪升职穿西装,这些你有准备吗?

 扫描上方二维码即可进群学习交流

仅以身边朋友的一次成长经历分享给给喜欢Java,喜欢编程,有梦想成为架构师的程序员们,希望能够帮助到你们。