年前在 V2EX 遇到阿里中间件的哥们,内推面试。从 2018.02.01 开始到今天 2018.03.20 ,一场浩浩荡荡,跨年,持续了 1 个半月时间的残酷面试终于尘埃落定。遗憾的未能加入阿里中间件部门这个大家庭,让我深感痛惜。
最终未能如愿的原因是“名额有限,有更适合的同学”。这也可能是内推大哥为了顾及我的感受的说辞,可能是最后一面面的不好。
这里凭借隐约的记忆,总结下面试经过。让我自己引以为戒,奋发自强,继续前行
主要问一些 java 基础。包括集合、多线程、ClassLoader、锁、juc 类库等都要知道大致的原理、使用规范、约定等
根据项目,深入探讨。你需要清楚你所做项目的关键细节、优化、特点、原理。所用第三方库&中间件等的原理,即使不知道,也要有自己的想法能够说出如何代替实现!而且需要一定的技术知识的广度,对于如何选型,为何这么选型能够说出自己的理由
个人感觉着重技术深度。
从 ConcurrentHashMap 一路问到锁&锁优化->LongAdder->伪共享->缓存行填充->cas 等诸多技术细节;
从 hystrix 一路问到原理->自己如何实现->如何优化->响应流编程(reactive streams);
从简单的生产者消费者模式设计到如何高效健壮实现;
等等。
纯 coding。
如何倒序输出单向链表?
个人直接想法是用栈先进后出的特点,把链表数据读到栈里然后输出。
有更好的实现方式吗?
仔细一想,确实不够优雅,还好之前刷过一阵子的 leetcode,一般能用栈解决的都能用递归搞定。换了一种递归实现:
具体看本人的github 传送门
hr 面,唯一一次现场面,一直以为是最后一面呢。
给大家抛出几大深坑问题:
这几个问题,大家深思啊,不多说。
大概晚上 20:00 的时候接的电面。那会刚刚游泳游了大概 2,300 百米,然后又没有吃饭,肚子咕咕叫。忍着接听。
主要问项目情况,然后根据一个项目,问如果量级扩大 1000 倍,你会怎么做?有哪些优化措施?高性能&高可用措施?
后面有点饿的眩晕,不知道怎么结束的。。。
感觉阿里更偏重扎实的基础和解决问题的创意与能力。个人感觉自己缺乏大并发、大流量下面对各种复杂问题的处理经验与解决方案,继续沉淀学习吧。
另外,烦请各位大神指点在下写的博客
101
Jacklee 2018-03-21 21:03:05 +08:00
请问下楼主,走内推,从提交简历到一面,中间等了多久
|
103
x7395759 2018-03-21 21:45:55 +08:00
膜拜大佬
|
106
lance6716276 2018-03-22 00:16:28 +08:00 via Android
@zacard 有啥副作用…就地操作遍历一遍就行了…
|
107
zacard OP @lance6716276 方法副作用。就是说你修改了方法入参。
|
108
lance6716276 2018-03-22 09:08:18 +08:00 via Android
@zacard 噢噢
|
110
wenniuwuren 2018-03-22 11:00:07 +08:00
楼主是有用过 hystrix,面试才问题的吧
|
111
zacard OP @wenniuwuren 是的
|
112
TimCheng 2018-03-27 10:08:48 +08:00 via iPhone
@callmexiaobo #48 这个大佬能联系到吗?大佬的文章和你的文章都挺不错的,所以我想邀请你参加这个活动啊😂。
|
113
jinxiaoyan44 2018-03-29 16:08:32 +08:00
来远景能源吧,有你的职位,待遇不会比阿里低,工作强度更小,中间件有 HC. 具体请看我的招聘贴。
|
114
Rorysky 2018-04-22 18:24:51 +08:00
@jinxiaoyan44 ……你们不是搞风机机械之类的么……
|
115
v5mark 2018-08-29 17:24:45 +08:00
谢谢分享
|