《Java架构师的第一性原理》99总结实战之晋升体系、面试辅导

1 一些有意思的图

 

 

2 技术能力树 P5 -> P6 -> P7 -> P8

 

 

3 阿里巴巴面试流程

3.1 流程、题目、细节

1. 流程

1)录入招聘系统

2)HR筛选简历

3)技术面试官简历评估

4)电话面试

(1)不方便或没准备好,可以约个时间点;

(2)候选人基础知识面的积累;

(3)技术深度;

5)现场面试

(1)1-2个人,两个人可能一起,也可能分开聊

以之前的项目为主导,考察技术基础能力,技术原理性问题,列举你之前的项目进行探讨,时间约1小时,列举常见问题:

会聊一些技术深度的东西,从候选人会的技术进行深挖,一直问到你回答不出来。

(2)简历上的项目经理,面试前要好好梳理下自己之前做过的项目,面试官会围绕项目涉及到的技术要点深挖。

考察候选人技术深度,看候选人遇到问题总结学习及解决能力。

自己用过的技术,一定要深入。如果连自己做的东西涉及的技术点都一知半解的话,或者被问住,一般不会通过。

要对技术有热情,喜欢总结,复盘,经常泡技术论坛或者自己写技术blog,喜欢看技术方面的书籍。

(3)主语言本身以及它的高级特性;

(4)讲述自己的项目,并在中间穿插着问题(学会引导性的回答问题,抓住自己项目的亮点,引导面试官和自己聊比较擅长的技术,不擅长的技术可委婉表示不太熟悉,以免面试官问太多自己却答不上来反而不好);

(5)额外加分项:著名的开源项目源码,自己独有的很棒的开源项目,个人博客等;

(6)与你职位相关的内容,在面试前准备的时候,尽量朝着职位的需求方向靠拢,成功可能性更大;

6)HRG

(1)是否有对技术的热情

(2)爱学习

(3)关注所面试部门业务的发展及动态

3.2 蚂蚁金服财富线介绍及亮点:

关于人才最重要的特质:技术扎实,聪明,持续的学习力,技术热情,抗压性

3.3 阿里价值观和用人风格:

软性方面: 阿里喜欢聪明,思维活跃,学习能力强,善于总结,自我反思,能够遇到问题举一反三,

在和面试官的沟通过程中,注意项目经历的互动,表现出来对技术的热情和滔滔不绝的善于表达、讨论,

主动的去表达自己的观点,有问题一定当场去提问。

场景举例:

1、每个候选人都会说自己喜欢看书,那么看书的过程有什么收获,看书有没有持续性,看书后是否结合自己的工作去应用,去反思和总结是他们关注的点,不喜欢三分钟热度的候选人。

比如看三体,三体里有一个方式叫做维度,维度在做数据库设计的时候,是最直观的体现。

2、项目中遇到的问题,你当时是如何解决的?如果当时没有解决,事后你是否自己去思考过这个问题(这个点是阿里看重的)他们关注的是你主动寻求解决方法的这个点,是你要有这种想法。

阿里很注重的是候选人的落地,不要太空的东西,也可以主动的去和他们探讨他们的产品在应用的过程中,有没有觉得出现的问题有什么好的建议等。

4 面试辅导

4.1 简历

简约清晰、突出重点。

可量化:

(1)访问量大:可以写项目的QPS、PV、UV

(2)访问量小流程复杂度:模块化开发、流程灵活性配置、效率提升

(3)JVM 内存调优你可以写新生代/老年代内存回收时间提升了 ** ms

(4)写到并发,你可以写程序调优压测可支持TPS 从1000涨到5000等等

(5)产品经理提了什么奇葩的需求,你怎么解决了,你能巧妙的形容出来都是亮点。

可以辅助一些图或表在简历中,直观来说一图二表三文字,当然前提是你图表确实有亮点。

4.2 准备面试

一般而言你简历上写的都必须会,而且必须有一些是你的亮点,你得有一些深入的了解,回答让面试官觉得你这个小伙子不简单,有点东西。

(1)Java基础

Java集合:HashMap和ConcurrentHashMap

JUC包:aba,cas,aqs,unsafe,volatile,sync,常见的各种lock,死锁,线程池参数;自旋,阻塞,死锁和它如何去定位;oom如何定位问题,cpu过高如何定位;

生产调试经验:top,jps,jstack,jmap这些可能会问的东西。以及可能衍生的jmm模型和mesi协议

JVM:垃圾回收算法,垃圾收集器,jvm内存模型,每个区域用途,各种oom的种类,jvm调优经验;类加载过程,双亲委派,什么时候young gc,full gc,各种情况进入老年代的方式,你知道的越多越好,因为吹起来就越自信,举个例子,逃逸分析是什么?markword里面有什么?

Spring:bean的生命周期,如何解决循环依赖,父子容器,还有boot的启动流程,事务实现原理,动态代理原理;

(2)SOA分布式

Dubbo:设计框架,负载均衡,spi机制,一般顺势会提到zk,选举算法,分布式锁

SpringCloud:eureka,hystrix,ribbon,feign,zuul

MQ:重复消费,顺序消息,事务消息,高可用,消息丢失,挤压场景,整个消息发送消费的流程,读过源码更佳,更好吹

Netty:零拷贝,bio,nio,aio,架构设计怎么样子的?用过看过更好

分布式事务:

(3)存储

Redis:单线程模型,aof,rdb,rewrite,主从,cluster,哪些类型;击穿、穿透、雪崩、数据一致性;一致性hash,布隆过滤器的原理;geohash的原理以及google s2的原理,底层数据结构sds和跳表等;你多学点,准没错。

MySQL:事务,锁,索引,b+树,主从

(4)算法

简单:快排,堆排,二叉树相关的,链表反转,成环,环节点,跳楼梯

中等:双指针,dp,递归,大数据内存有限的场景的统计,有时间一些middle可以去试试,手写红黑树你要是可以,那我估计算法你稳了。

(5)计算机基础

网络:http,tcp,https,udp,7层网络协议等,最好结合自己理解,背,你都要背下来。

4.3 复习方法

1. 找到第一性原理(一句话点醒)

2. 疯狂输入 -> 疯狂背诵 -> 疯狂练习 -> 疯狂反馈

3. 做项目输出、写博客输出

4.4 面试原则

总结回顾 -> 自我反省 -> 自我迭代

99 直接读这些牛人的原文

阿里内部面试、晋升、层级、培训体系是怎么做的?

来吧,简历就应该这样写

 

posted @ 2021-07-09 11:28  沙漏哟  阅读(82)  评论(0编辑  收藏  举报