一面(电话(杭州),4.22)
1、自我介绍,学校、项目
2、项目中有一个深度学习的,然后问为什么不做算法,要搞工程,然后问为什么不搞前端
3、两个项目,一个涉及到数据库索引,一个涉及到Redis
4、数据库怎么设计
5、索引设计思路,查询时候如何高效实用
6、MVCC,捎带提了一下隔离级别中的读已提交、不可重复读(然后这个时候他说我拓展的好多呀)
7、主键怎么设计,分库分表怎么办,提了雪花算法
8、Redis的应用场景,为什么,之前说了我的项目其实可以不用,但是还是用了,然后闲聊了一下
9、ThreadLocal这个类用过吗?这个真没有用过
10、synchronized底层,特别问了里面的偏向锁、轻量锁、重量锁怎么加锁解锁、怎么转化
11、线程池,提了newSingleThreadExector(),他就说这些就不用说了,就问如何设计一个线程池,设计线程池要关注哪些点
12、设计模式了解的怎么样,有用过吗?项目简单,实际中没有用过
13、操作系统中的线程和Java中的线程区别
14、最后真的问的差不多了,面试官:我再问你点什么呢?问点网络吧,然后问了HTTP
15、HTTP都了解什么,讲了协议码、HTTPS,讲了HTTPS将非对称加密用到了极值,扯了HTTPS如何好
16、非对称加密和对称加密哪个效率高,回答当然是对称加密,然后反问,为什么HTTPS还好呢,安全啊,但是得花钱、效率低
18、看你简历,都是Java的是吧,咱们聊点数据结构,说说你的理解,我反问,要我说HashMap吗,现在都喜欢问这个,然后听到对面笑声,说也不是,就谈谈你对数据结构的理解
19、提了一下数组和链表的优缺点
20、最终还是回到HashMap怎么实现,红黑树、链表这些,因为先说的红黑树,面试官问都是红黑树吗?回答说刚开始时链表,后面才是红黑树
21、hashmap是线程安全吗,那怎么办,用ConcurrentHashMap
22、ConcurrentHashMap怎么实现线程安全,直接说JDK1.8的吧,然后提了CAS和Synchronized,然后由重复说了一下HashMap,然后他就说提到CAS和Synchronized
后面和面试官瞎聊,说之前面了一次阿里了,这次是几面,然后他说应该是集团面试的,然后推荐过来的;
然后问我这表现还行吗?面试官:我会如实跟HR说的,你看我主要是看你解决问题的思路,题目也不是很难(其实对于菜鸡来说有点难了好吧)
整体感觉确实还是问思路,不会细致的纠结Java内部的实现,而是看你的思路,让你自己设计怎么办。
二面(电话(北京),5.18,30min)
5.18在官网催了一下,下午就来电话面试了
一、OS
1、进程和线程
二、Java
1、HashMap数据结构、源码
2、HashMap中链表节点都存什么数据,为什么要存哈希值
3、JVM中那些是线程共享,那些不是
4、栈帧中的数据结构都有哪些
5、栈帧局部变量表中的方法返回地址是什么
6、悲观锁和乐观锁定义,如何实现
三、数据库
1、MySql联合索引,abc,使用b能直接查吗
2、MySql数据结构,和红黑树的区别
四、其他
1、做过的项目的难点,技术上的和业务上的
2、学习成绩怎么样
3、参加过的一个比赛
4、研究生阶段项目(深度学习,目标检测)
5、本科为什么去一个非互联网企业实习
全部评论
(2) 回帖