程序员为什么都喜欢阿里P7,十年开发经验Android架构师,分享学习路线(附BAT大厂面试真题解析)

前言:

互联网企业已经成为现在大部分年轻人选择职业打拼的行业,这个行业机会多,有各种各样职位和机会留给优秀的年轻人去闯,但是相应的压力也非常大。毕竟高薪水的待遇下,工作压力又怎么会轻松的了呢?

而在互联网行业的职位当中,阿里的p7岗却又是大家所向往和钟爱的,因为和千夫所指的阿里P8相比,阿里P7无疑是一个真香的存在,腾讯想要阿里P7,字节想要阿里P7,快手想要阿里P7,拼多多,小红书,滴滴大家都喜欢要阿里P7,甚至阿里自己,都想多招1万个阿里P7。

阿里P7凭啥这么香?

一、阿里P7有多牛逼?

阿里P7在内部的称呼叫做XX专家,比如技术专家,产品专家,运营专家,营销专家等。

根据网传的阿里P7能力模型图,一个合格的P7需要以下几个方面的能力和要求:

1、在专业领域,对自己所从事的职业具备一定前瞻性了解,在某个方面独到,对公司关于此方面的技术或管理产生影响;

2、对复杂问题的解决有自己的见解,对问题的识别、优先级分配见解尤其有影响力,善于寻求资源解决问题;

3、可独立领导跨部门的项目,能够培训或指导新进员工;

4、通常需正规本科毕业,需相关专业教育教育或相关从业经验;

5、行业外或公司内部培养周期较长;

6、是技术或相关管理岗位的资深人士。

根据这个能力模型,我们可以看到,阿里P7是某个专业领域的专家,他对这个领域非常熟悉,具备前瞻性,他的见解和建议能影响到公司在这个领域的认识;面对复杂问题,他能够利用自己的能力和认知,通过合理分配和安排,寻找资源去解决他,可以独立完成跨部门合作的项目(这个能力在大厂非常重要),同时能够培训指导新人。

这个能力已经相当强了,在一些小公司(B/C轮),这个能力模型甚至能担当总监的职位了,(所以阿里P7到了小一点的公司,都能直接上总监),所以要求也会比较高,一般是统招本科以上(最高985/211),在阿里内部或者行业外有较长周期的培养(一般是5-10年左右),是某技术领域或者产品运营管理岗位的资深人士(有比较丰富的资源和经验)。

我们根据模型,就能得出来阿里P7的大概画像,他的年龄在27-35岁之间(超过35岁还没机会升P8就比较危险了),一般大学(本科或者硕士)毕业5年以上,有5年的相关行业领域工作经验,最好还有大厂(BAT,TMD)相关经验或者相关细分领域(比如O2O,在线教育,电商,内容)工作经验。

二、阿里P7能挣多少钱?

根据笔者手中的近百个P7和拿到阿里P7 offer候选人的案例,P7的一般薪水在70-100万之间。超过100万的屈指可数,除非你是阿里5年以上的P7(一来是之前P7股票授予数比较高,二来是阿里股票5年翻了数番)或者是达摩院、淘宝、天猫、阿里云等核心业务,或者蚂蚁金服、钉钉等有单独期权的部门。

一般的构成是:

现金部分50-60万,每月工资在30-40K之间,因为阿里的现金部门是16薪,按照月薪中位数35K计算,35K*16个月=56万现金;

期权部分:现在,阿里新P7一般是700股RSU(限制性股票,满2年归属50%,后两年每年归属25%),杭州总部的某些重要部门或者比较优秀的候选人有可能给到1000股RSU。简单计算下:700股×7×224美元=110万左右,平均到每一年就是28万左右。

所以,一个阿里P7的平均年收入是现金56万+股票28万=84万左右,当然这个收入还是税前,税后我也不知道是多少。

三、为什么P7这么香?

根据前文《一个阿里P8,一年到底能挣多少钱》的估算,阿里P7的数量大约在4万人左右,是阿里大集团中数量最多的人群之一。而阿里P7升P8又是内部升级的第一个坎,很多P7因为所在业务增长不够快,跟领导关系不好,以及阿里内部各种大领导轮岗,部门调整整合的原因而无法升到P8,当他在P7的岗位上待满4年或者已经到了33岁这个危险期的时候,即便他不想离职,他也很难继续混下去。

既然不能在阿里待着,那就只能看其他机会了,在市面上,很多竞争对手都在虎视眈眈的盯着阿里P7这个群体,毕竟他们年轻(一般这个年龄段的人要么没结婚,要么结婚还没孩子,不用分心照顾家里,同时体力还成,能加班)、背景好(统招本科以上)、能力强,(能经过阿里HRG(既大政委)考核的人,肯定不会差),钱不是很多(80万这个价格已经非常划算了,涨个30%也就100万左右,而阿里P8很多超过200万,一般的大厂都给不起,更不用说创业公司),又对管理没有太多的要求(阿里P7技术专家一般不承担管理职责,产品运营可能带人,但一般也不多),正是各大企业需要的一线骨干人才。

同时阿里不同业务线的人也有很多地方可以去,平级跳,可以去众多一二线互联网公司,天猫淘宝新零售去京东美团拼多多,大文娱UC可以去腾讯头条百度快手,阿里云可以去腾讯百度华为,蚂蚁金服可以去京东数科,美团金融,滴滴金融或者传统金融公司,钉钉可以去腾讯会议,头条飞书,以及各种企业服务的创业公司,大中台业务可以去任何想做中台的公司;升级跳槽,可以去B轮之后的公司的做技术产品总监,如果想创业,还能去个A轮之前的公司做合伙人(不过现在坑太多,不建议去)。

除了外边喜欢阿里P7,阿里自己的的社招也很大比例留给了P7(P6以下的职位主要通过校招和实习转正来完成),毕竟,对阿里这样一个拥有10万人以上员工,又完全靠人才做到5000亿美元的互联网公司来说,能找到各个领域和行业的专家,并挖掘出他们最大的个人价值,才是最关键的。

如何才能更好地做到阿里p7

Android初级工程师技术要求:

  • 基本知识点 比如四大组件如何使用、如何创建Service、如何进行布局、简单的自定义View、动画等常见技术

Android中级工程师技术要求:

AIDL:熟悉AIDL,理解其工作原理,懂transact和onTransact的区别;

  • Binder:从Java层大概理解Binder的工作原理,懂Parcel对象的使用;* 多进程:熟练掌握多进程的运行机制,懂Messenger、Socket等;* 事件分发:弹性滑动、滑动冲突等;* 玩转View:View的绘制原理、各种自定义View;* 动画系列:熟悉View动画和属性动画的不同点,懂属性动画的工作原理;* 懂性能优化、熟悉mat等工具* 懂点常见的设计模式

学习方法:

阅读进阶书籍,阅读Android源码,阅读官方文档并尝试自己写相关的技术文章,需要有一定技术深度和自我思考。在这个阶段的学习过程中,有2个点是比较困扰大家的,一个是阅读源码,另一个是自定义View以及滑动冲突。

如何阅读源码呢?这是个头疼的问题,但是源码必须要读。阅读源码的时候不要深入代码细节不可自拔,要关注代码的流程并尽量挖掘出对应用层开发有用的结论。另外仔细阅读源码中对一个类或者方法的注释,在看不懂源码时,源码中的注释可以帮你更好地了解源码中的工作原理,这个过程虽然艰苦,但是别无他法。

如何玩转自定义View呢?我的建议是不要通过学习自定义view而学习自定义view。为什么这么说呢?因为自定义view的种类太多了,各式各样的绚丽的自定义效果,如何学的玩呢!我们要透过现象看本质,更多地去关注自定义view所需的知识点,这里做如下总结:

  • 搞懂view的滑动原理
  • 搞懂如何实现弹性滑动
  • 搞懂view的滑动冲突
  • 搞懂view的measure、layout和draw
  • 然后再学习几个已有的自定义view的例子
  • 最后就可以搞定自定义view了,所谓万变不离其宗

**Android高级工程师技术要求:**继续加深理解”稍微深入的知识点“中所定义的内容

  • 了解系统核心机制:
  1. 了解SystemServer的启动过程
  2. 了解主线程的消息循环模型
  3. 了解AMS和PMS的工作原理
  4. 能够回答问题”一个应用存在多少个Window?“
  5. 了解四大组件的大概工作流程
  • 基本知识点的细节
  1. Activity的启动模式以及异常情况下不同Activity的表现
  2. Service的onBind和onReBind的关联
  3. onServiceDisconnected(ComponentName className)和binderDied()的区别
  4. AsyncTask在不同版本上的表现细节
  5. 线程池的细节和参数配置
  • 熟悉设计模式,有架构意识学习方法

这个时候已经没有太具体的学习方法了,无非就是看书、看源码和做项目,平时多种总结,尽量将知识融会贯通从而形成一种体系化的感觉。

同时这个阶段对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习。

阿里p7学习路线总结(Android版):

小编2010年java转到Android开发,在小厂待过,也去过华为,OPPO等大厂待过,之后进了阿里一直到现在。被人面试过,也面试过很多人。更是有着十年的开发经验,整理了一份阿里P7级别的Android架构师全套学习资料,特别适合有3-5年以上经验的小伙伴深入学习提升。

阿里P7级全套高级学习知识点:(七大专题)

1.高级UI,自定义View:

2.NDK开发:

3.数据结构与算法:

4.Java内核原理:

5.Flutter:

6.性能优化

7.移动架构实战项目

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X8CpNpwR-1604499916758)(https://upload-images.jianshu.io/upload_images/24596414-d4ac9697527ce6a2?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

1.高级UI,自定义View

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。

不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

image

2.NDK开发

音视频,人工智能,这些是未来没办法阻挡的发展大趋势。我们可以在猎聘网上看那些招聘岗位,要求精通NDK的薪资都在30-60K+。追求高薪岗位的小伙伴别错过

image

3.数据结构与算法:

字节跳动面试,算法不过关被拒。就想换一家算法要求不高的大厂不就行了?

结果去阿里,去腾讯,去华为,小米等公司面试,不料也都被拒绝了!

image

4.Java内核原理

百分之百,大大小小所有公司,面试必问

image

5.Flutter

火了一年多了,你工作不一定要用到。但是你出去面试(初级很少要求会),肯定会问到的。

关于Flutter是不是未来,我没法确定告诉你,我能确定的就是你要去面试高薪岗位,你得掌握这种主流的新技术(大厂最看重的除了基础,技术水平外,就是你的学习能力。)

image

6.性能优化

听说大公司的末位淘汰制专为代码质量差性能低的员工准备的。怎么样写一手高性能的代码?怎样进行性能调优呢?

image

7.移动架构实战项目

架构师不是天生的,是在项目中磨练起来的,所以,我们学了技术就需要结合项目进行实战训练,那么在Android里面最常用的架构无外乎 MVC,MVP,MVVM,但是这些思想如果和模块化,层次化,组件化混和在一起,那就不是一件那么简单的事了。

image

非常感谢你能把文章阅读完,以上这份Android阿里p7学习路线,文中所提及资料,都是免费分享给大家的,只需你动动手指点此处即可免费领取

另外小编还整理了部分大厂的经典面试题:

Android核心高级技术PDF文档,BAT大厂面试真题解析

这些题目是群友去阿里面试,以及字节跳动,腾讯、百度、小米、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。并且大多数都整理了答案,熟悉这些知识点会大大增加通过前两轮技术面试的几率

image

image

文中所提及资料,都是免费分享给大家的,只需你动动手指点此处即可免费领取。

多多支持,即可免费获取资料——三连之后(承诺:100%免费)

(点这里)下载!诚意满满!!!

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

你的支持,我的动力;祝各位前程似锦,offer不断!!!

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值