大家都熟知阿里技术的P系列,从P5-P10都有,越往上走人数越少,比较急缺的是P6-P8的岗位,以下我分别谈谈阿里Java的P6-P8的技能要求的区别,文末有阿里Java架构师进阶88期专题资料~
一、 阿里P5(高级研发工程师)
1.工作要求
能独立完成日常工作,并能够对一些方案提出自己的建议。
基本考核就是能上手独立完成工作,熟练掌握。
2.技能要求(熟练)
程序设计和开发。
工作中需用到的Java开发的技术点以及相关的其他技术点。
工作中需用到的Web开发的技术点以及相关的其他技术点。
工作中需要用到的数据库技术点以及相关的其他技术点。
运维能力
应用发布和运维,线上故障分析和排查
1-5的技能能力:程序设计和开发、java web、数据库的技能要求熟练。
备注:技能要求我会在文章末尾解读。
二、阿里P6(技术主管)
1.工作要求
能独立解决问题,制定系统的技术实现方案,考核会涉及部分技术深度。
2.技能要求
除P5的技能外,还需掌握以下技能,以下技能至少需要做到熟悉。
架构设计
运维能力
操作系统
三、阿里P7(技术专家)
1.工作要求
能独立带领产品或业务向前发展,并在产品或业务的规划上具备一定的能力。
这里我强调一句,是独立带领的能力,并且有一定的产品和业务的规划考核,比如:对业务的了解程度,是否可以掌控,这一条很多人会忽视业务的重要性。
2.技能要求
在P6的基础上,需要在Java开发、Web开发上至少有一项能做到精通。
在架构设计上至少在某一架构领域达到精通。
架构相关的技能要求请参考如下阿里P8架构师技能。
四、阿里P8(高级技术专家)
五、技能要求解读
1.编程能力
对工程师而言,编程是最基础的能力,必备技能。其本质是一个翻译能力,将业务需求翻译成机器能懂的语言。
常见的编程范围:
数据结构算法,比如: 经典排序:插入排序、冒泡排序、快排(分划交换排序)、直接选择排序、堆排序、合并排序等。
高级语言特性: JVM、类装载机制、多线程并发
设计模式:常见的单例、工厂等。
UML建模:详细设计必备。
网络与安全:网络协议、安全等。
开源系列:spring、maven、redis、memcached、activeMQ等。
2.调试能力
本质上讲,通过不断调试可以持续强化其通过静态代码去预测运行状态的能力。
所以调试能力也是编程能力提升的关键手段。
3.编译部署能力
编译并在线上部署运行程序是系统上线的最后一个环节。
随着微服务架构的普及以及业务复杂度的增加,本地编译和运行并不能完全模拟系统在线运行。
为了快速验证所编写程序的正确性,编译并在线上部署就成了必要环节。所以编译部署能力是一个必备技能。
4.性能优化能力
随着使用量的增加和业务复杂度的增加,大部分系统最终都会碰到性能问题,性能优化能力是一个综合能力。
因为影响系统性能的因素众多,包括:数据结构、操作系统、虚拟机、CPU、存储、网络等。
性能调优集中在:JVM调优,线程池调优、SQL调优、索引优化、数据库垂直拆分等。
5.在线运维能力
如果说性能优化能力体现的是静态思考能力,在线运维能力考验的就是动态反应能力。
残酷的现实是,无论程序多么完美,Bug永远存在。
为了对线上故障进行快速处理,标准化的监控、上报、升级,以及基本应对机制当然很重要,通过所观察到的现象,快速定位、缓解以及解决相关症状也相当关键。
在线运维本质上是一个强化学习的过程。
很多能力都可以通过看书、查资料来完成,但在线运维能力往往需要大量的实践来提升。
6.架构设计能力
针对以上技术怎么学习?
1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的。
2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的。
3、如果没有工作经验,但基础非常扎实,对java工作机制,用设计思想,常用java开发框架掌握熟练的。
4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的。
5.群号:高级架构群692845439备注好信息!
6.阿里Java高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!
7.小白勿加
java架构群:692845439 一起交流