阿里中间件一面:
(在校招正式开始前走的非正式渠道,一面通过了 ,二面校招开始要录入系统,我拒绝了。)
40多分钟,以下顺序可能是乱的:
-
自我介绍
-
本科和研究生期间成绩
-
散列表什么实现
-
冲突了怎么解决
-
HashMap中扩容和缩容怎么做
-
dfs和bfs区别
-
TCP怎么保证连接的唯一性(答案: TCP的源端口、目的端口、以及IP层的源IP地址、目的IP地址四元组唯一的标识了一一个TCP连接)
-
TCP怎么断开连接(四次挥手)
-
什么是进程上下文
-
上下文中要保存哪些信息(憋住了不知道说啥,让我大胆猜,然而也没猜出什么)
-
什么是物理地址、什么是逻辑地址
-
逻辑地址怎么转换为物理地址
-
什么是用户态、什么是内核态
-
怎么找到链表中倒数第三个节点
-
两个线程,怎么保证A线程对- -个变星写了之后B线程可以立即看到,有哪几种实现方式
-
实现一下生产者和消费者模式
-
ArrayList和LinkedList区 别
-
怎么判断对象可回收
-
什么是根节点
-
怼项目,问了好多问题
-
看我写的有国防专利和国防科技报告,让我讲一-讲
-
还有部分忘记了
-
你有什么要问我的吗
总结:简历里写了熟悉操作系统和网络等计算机基础,然后他就问了挺多操作系统和网络的,可惜好几个都没答上来。我问你觉得我哪部分需要再提升,他说基础。
总结2 :为自己简历上写的每句话负责,否则被问出来了, 很尴尬。
远算现场一面:
在一间小屋子里,虽说是一-面但是有两轮,没有让自我介绍,很直接。
第一个面试官小哥:
-
项目中的一个问题让解释一下;
-
手撕LRU ,不让用现成的方法(比如LinkedHashMap) ;
-
撕完算法小哥一看还有时间,就问了一下TCP中CLOSEWAIT和TIMEWAIT两种状态;
-
TIME_ WAIT等两倍时间,为什么要这么设计。
第二个面试官:
(貌似是简历面还是项目面的,技术栈不匹配,一直看 我简历感觉问的不多)
-
介绍各个项目;
-
微服务架构讲- -下;
-
页表讲一下;
-
HTTP把知道的讲一下。
总结:
对于一一个问题,可以不问啥答啥,能多扯点就多扯点吧,尤其是面试官不知道问啥的时候,很尴尬。比如问页表,甚至可以扯到页式内存管理、段式内存管理,可以扯到为什么要用段式和页式等等。
有赞一面(电话面)
32分钟,对方信号不太好,说的我总是听不太清,体验不咋地。
-
自我介绍;
-
大型网站架构常用的方法以及用到的组件;
-
什么是横向拆分、什么是竖向拆分;
-
了解过哪些微服务的框架;
-
使用微服务架构会带来哪些新的挑战;
-
Redis热点问题怎么解决(这里没听太清,他给我解释也没太懂,在这个问题上尬了很久) ;
-
java内存模型; (实际他想问的是运行时数据区,无语.. )
-
垃圾回收算法,新生代老年代具体运作方式、为什么新生代用复制算法;
-
InnoDB数据模型, B+树具体说说都保存了什么,叶子节点保存了什么;
-
讲讲java类加载方式;
-
java同步的几种方式;
-
有没有具体了解过实现的原理(讲了一下synchronized的原理:偏向锁、轻量级锁、自旋锁、重量级锁等)
-
项目中遇到的困难或一些奇怪的问题;
-
至今为止是不是没有实习(实验室不让啊没办法) ;
-
有没有用过GitHub。
-
居然不让我问问题。
华为一二面
一面
-
一分钟自我介绍;
-
进程与线程区别;
-
多线程要注意什么;
-
死锁的发生场景;
-
从打开一台电脑,到浏览某个网页,经历了哪些流程,用到了哪些协议;
-
说一下判断字符串是否是回文串的几种方法,或效率最高的方法;
-
无规律的二叉树,每个节点有一一个权值,找到权值和最大的一条路径;
-
为什么要用jvm ;
-
垃圾回收算法;
-
值传递,引用传递;
-
String能不能修改,为什么;
-
数据库调优;
-
介绍cloudbu部门&有什么要问我的吗。
-
-
二面:
-
成绩,获得几次奖学金,几等,年级获得二等的比例是多少;
-
比赛成绩,复赛为什么成绩下去了,初赛分数高的原因你觉得是什么;
-
讲一下写的一个专利,有哪些创新;
-
大型网站架构大概画一下;
-
微服务和大型网站架构有什么联系;
-
项目做的挺久的,有多少人在做,现在能不能看到; ;
-
计算机网络是不是也有了解;平常有没有用过。
-
什么是tcp粘包,什么是大端序小端序、为什么要有大小端序? (最后说其实没有为什么)。
大疆一面二面
一面(电话面)
-
约的16:20电面面试官有事迟迟没有没打来后来跟同学一起出去吃饭刚走 到操场电话来了我说你们先去吃吧然后我就开始了。
-
自我介绍;
-
项目介绍;
-
web service怎么设置调用权限(因为我项目里提到web service了) ;
-
知道哪些数据结构,分别说一下特点 ;
-
树你平常在哪里用到; ( 我想去摘香蕉的时候? )
-
数据库水平怎么样,简单的增删查改还是大数据星的调优、视图等(显然只会最简单的==);
-
b/s系统登录怎么实现;
-
cookie , session怎么配合使用, cookie里存的是什么;
-
对面向对象的理解; (尬聊,面试官听不下去了把我打断了)
-
有什么问题问我吗(你觉得我哪方面需要提升?我一面能过不? )。
二面(视频面)
-
介绍最熟悉的一-个项目;
-
仍然问项目,遇到了什么困难等;
-
职业规划、业余爱好、最近看了哪些技术书等;
-
算法题:假如电信需要判断一个号码是不是空号,怎么实现 ( -开始说的hashmap ,面试官说时间复杂度可以,空间复杂度超了,假如只有几兆怎么办?答的布隆过滤器,简单介绍了一下) ;
-
java内存泄露怎么排查,有没有输出过堆信息查看过(没...) ;
-
有什么问题问我。
总结:
在介绍项目的时候,可能自己比较熟悉,但是对方对此是毫无了解的,因此要换位思考,总结一下怎么介绍给完全不懂的人听,还能让他听懂。
阿里健康
(最大的遗憾晚上在西湖边上面的阿里健康,凉凉)
面试之前的下午提前约了时间,约的晚上8点,但当时在外边最后还是没能赶回去,在西湖面的,发挥比较差。26分钟。
-
自我介绍;
-
你说自己不甘心平庸,平常做了哪些可以体现出是不甘平庸的;
-
研究生期间主要学了哪些课程;
-
项目介绍,华为比赛介绍,以后想做算法方向的还是业务和工程方向的,为什么;
-
说一下排序算法,他们的时间空间复杂度,哪些是稳定的(身边没有条件可以找张写一下,稳定性之类的也没有刻意背过,答得特别烂) ;
-
说一下你知道的线程安全的类,(又没答好,说了没几个卡住了,主要是不知道
-
countdownlatch这些算不算,感觉应该不算,说道还有好几种阻塞队列,忘记完整的类名。。) ;
-
concurrenthashmap为什么效率高; (每说出一处就问我还有没有, 我甚至把移位代替除法操作都说了, 问我还有没有, 答不上来了)
-
TCP中滑动窗口的作用;
-
滑动窗口是在发送方还是接收方、如果发送方不维护窗口, 直接根据接收方返回的消息来发送,会出现什么问题;
-
项目中遇到什么困难,怎么解决的;
-
项目给你带来了哪些帮助;
-
有什么要问的。
阿里健康的面试体验非常好,提前预约,问题卡住时说没关系你可以多想一会,没答出来也安慰说没关系,每次都用”您"来称呼我,唉可惜发挥不太好,难受。
分享之前有师兄分享给我的Java面试题与答案
领取方式:需要资料的小伙伴一键三联(点赞+收藏+关注)后直接添加微信:mxh5261 即可免费获取!
领取方式:需要资料的小伙伴一键三联(点赞+收藏+关注)后直接添加微信:mxh5261 即可免费获取!