薪资在一定程度上反应了一名Java程序员的技术能力和价值,一般年薪在40W-50W左右的程序员,通常已经有了3-5年的工作经验,扎实的代码功力、架构和业务能力,而且对于工作细节也有自己的理解。

身边的一位阿里P7架构师朋友也说过,基本上达到以上标准,身边大多数Java程序员都能迈入年薪40W+的行列。具体的能力业务要求可以参考以下4条标准。

1、代码能力

代码能力是基本功,Java语言本身,包括语言的各个方面包括对并发的理解,对内存使用对理解,对Java运维的理解等等。语言本身外,社区里常用的框架是否可以十分清晰的了解,包括spring,包括他实现的ioc,aop,orm,web机制是否有清楚的认识,有丰富的经验等等。

2、对常用中间件的理解

毕竟在一个大系统中,各种中间件是是否常见的,缓存中间件,消息中间件,例如 redis、memcache、rmq这些。要理解常用中间件使用场景,使用姿势(例如redis的常用命令),甚至包括他的一些运维。一旦出了问题,除了专门的运维人员,也需要你参与问题的排查,因为有时候这些中间件出现问题,是不当的使用姿势引起的。

3、架构、业务落地能力

前面提到了语言本身,各种中间件。如果你有很好的业务抽象能力和架构思维,就可以把一款部门内部产品很好的设计并实施了。这点蛮难的。想必都有过接手现有项目的经历吧,有时候真恨不得把之前的设计者拿出来批斗。作为一个设计者,你能否做到当下一个接手它的人会说一句,这个系统设计的真好,稳定又可拓展,理解起来也很容易。这需要很多能力,除了对现有系统的理解,还包括对未来可能发生变化的理解。

4、沟通协作

毕竟一个部门内部产品,是不可能由一个人完成的,所以需要沟通协作,把设计好的方案,要和2-3个小伙伴一起实施,包括同样身份的后端人员,前端人员,产品等角色。这个级别的人可能会参与带2-3个人,例如应届毕业等,所以你自己对知识的把握,分享精神,leadership都是很好的加分项。


敲击  传送门  索要28套Java进阶+高级视频教程(内容参考如下)