东方海外货柜
这是我面的第一家公司,面试形式是电话面试,技术面和 hr 面交替进行,现在想想这样的面试方式还真是别具一格,大概面了40分钟左右。主要问题如下:
说一下 java 的垃圾回收机制?
我还没说完,技术人员就说,这样吧,你说一下
什么时候会触发 full gc?
垃圾收集时间很长,而正常程序的运行时间很短是因为什么?
问项目
项目问的蛮仔细的,问了跟项目有关的一些实际问题,例如,万一出现这样的问题怎么解决?如果我想这样你会怎么做?具体项目自行脑补。
项目中你遇到问题,是如何解决的,如何交流的?
你有什么问题要问我的?
我问了一下,你们公司主要用什么技术?他说了服务端主要用 java,数据库是 oracle, 前端技术有很多,说了一些,有的不太了解。然后我又问了,你们公司产品的用户量大概有多少?他说目前主要还是做国内市场,大概在百量级。然后还问我,你问这个问题是因为你有什么创新的想法吗?
HR 面
HR 问了为什么选择去上海?然后问了一些杂七杂八的,感觉 hr 很精明,不是很好对付。
环胜电商(算 offer 吧)
hands on 设计
简历通过后,会收到邮件,要求使用 Spring+MyBatis+CXF 设计一个查询学生信息的 Restful 服务,时间大概在5天左右,根据设计速度和质量进行筛选。
hands on 设计通过后,会收到技术面试电话,这个电话是在晚上8点左右收到的。主要问题如下:
一上来就问你对 Spring 的理解?
我大概说了一下,面试官一直说,没啦?就这样没啦?
数据库的4个隔离级别?
我表示忘记了。这个问题面试时问的还蛮多的,后来准备了一下。
单例模式?Spring 的单例模式?
面试官很喜欢问对 Spring 的理解,面试官态度不好,最后挂电话的时候态度也很差。
面完之后,很长时间没联系我,我就想肯定挂了。搞笑的是,大概隔了一个月,这个电话面试我的技术人员,又在晚上8点左右给我打电话,说我能不能提前一个月入职,我接到电话的时候有点懵,回忆了好久才想起是哪个公司。我说不行,学校不让走,他说能不能远程工作,我说我很忙,没时间远程工作,态度一如当年他对我的态度。
估计他们公司后来比较忙,急需实习生。
今日头条
面试形式,电话面试。今日头条的面试官我非常喜欢,态度和蔼,而且问问题很有水平,我回答错的问题,他不会立马否定我,而是再提出另外一个问题,让我自己发现我的问题。发现我有不少不会的问题时,就会问一些简单的问题,缓解一下我的小忧伤,很 nice 啊。主要问题总结如下:
Object 类下有哪些方法?
这个问题问的很多,后来爱奇艺面试官也问了这个问题。
数据库的索引有什么作用?有什么优缺点?
这个问题也经常问,星环科技 爱奇艺 都问了这个问题。
除了树,还有哪些数据结构能够达到 O(lgn)?
HashMap 重写 hashcode 方法, equals 方法,重写了hashcode 方法一定要重写 equals 吗?反过来呢?
这个也是很经典的问题。
说一下 HashMap, 为什么java7不用红黑树?
Spring怎么实现设计模式的,单例模式有什么好处?
说一下你对 Dijskra 算法的理解?
最后是一个算法题目:抖音上有很多明星,每个明星有很多粉丝,现在考虑两个明星 A, B,这个两个有很多粉丝,设计一个算法,重新分配粉丝使得这两个明星的粉丝数相差最小。
最后面试官提示是0-1背包问题变体。
最后面试官还很善良地安慰我,别灰心,没面上也没事,你还可以面我们公司其他的岗位啊。
6月份:
普元信息技术股份有限公司(offer)
第一轮:在线笔试 (1h 4道题)
1.将字符串“name:tiger;age:21;birthday:1995/11/11;”转换成 Student对象。
2.将第一道题的Student对象使用jdbc保存到mysql数据库,要求写出数据库建表脚本以及写出使用jdbc插入数据库的java代码。
说明:mysql数据库连接信息如下:
driverclass: com.mysql.jdbc.Driver
connection URL: jdbc:mysql://127.0.0.1:3306/test
username:root
password:000000
3.冒泡排序
4.基于 springBoot 提供一个 /hello?name={name}的RESTful接口(HttpMethod=GET), 返回结果为 “Hello ${name}”.
第二轮:视频面试,全程几乎问的都是项目,面试我的是我的校友,很 nice. 主要问题如下:
大概介绍一下你的项目,你主要做了什么?
我介绍完之后,根据我的介绍,问了几个实际问题。
在哪部署项目的?
项目中遇到问题是怎么解决的?
用什么版本控制工具?git 如何查看两个不同的版本?
linux 变更文件和目录权限的命令是什么?
你有了解过 Mybatis 为什么可以不写实现类吗?
开发过程中,不同的模块之间是如何整合衔接的?你们是怎样安排模块开发的?
你有什么问题要问我的?
第三轮:HR 面
你除了对 Java 开发感兴趣,还有自学过其他什么技术吗?
我说了一下了解 神经网络 和 区块链……
你平时除了学习之外,还喜欢做什么?
我说我办了一张健身卡……
你最痛苦但是觉得很有意义的事情是什么?
你能发现生活中的哪些现象?
下面是一道情景题,请注意听,如果。。。。
还有一些问题,记得不太清了,表示这个 HR 面 比技术面累人啊,面了大概40分钟左右。然而这并没有结束,HR 面后,进行心理测试,200题。做完题目后,3天后才收到 HR 的电话,说面试通过了,我一直以为我的心理测试挂了……
星环科技(offer)
一面是电话面试,面试官是个女的,很 nice, 我说的不好的地方,会很礼貌地反馈给我,在我没有思路时,会给点提示。主要问题如下:
说一下HashMap
equals() 和 hascode()
介绍一下项目。项目中你最大的收获是什么?
与项目有关的 一致性hash 算法。
说一说你对数据库索引的理解?二分查找也蛮快的,为什么数据库索引要用 B+ 树等数据结构?
算法:怎么样判断两个链表有没有公共节点,只遍历一次。
前端的技术你大概了解多少?
二面也是电话面试,面试官是个男的,年纪不大的样子,南大毕业的,也很 nice, 面试官希望你把你会的都展现出来。主要问题如下:
说一下你对 Java 多态的理解
我举了个猫叫狗叫的例子,面试官很可爱,说我说的很形象。
说一下对 Java 关键字 static final 的理解
说一下重载和重写的区别
关于 Java 并发,把你会的都说出来
我先说了一下多线程,线程的创建,线程间通信,线程同步,隐式锁,显示锁,Executor 框架,线程池等。基本上就是把自己能想到的都说了一下。对于我说的东西,面试官问了一些细节问题,记得不太清楚了。例如,notify() 和 notifyAll() 的区别。
HashMap 有了解吗?
Java8 原子类型有了解吗?
这个我不会,还没用过。
网络知识了解吗?5层模型?TCP UDP 的区别?
你常用的 linux 命令有哪些?
你有什么要问我的?
聊了一些公司主要做什么,实习生去了会直接上手项目,边做边学。
HR 面:很简单,说一些工作氛围,工资,入职相关的事项,希望我尽快给回复,他们要安排一下。
爱奇艺(offer)
爱奇艺是现场面试的,一共只有一面。面试我的是个蛮好看的小姐姐,人也很好,自己准备了一些笔试题,先问理论,问完一个知识点,做一两道读程序题/写代码。主要问题如下:
Java 基本数据类型有哪些?你能说说 int 和 Integer 的区别吗?
equals 和 == 的区别?
这里有编程题,小姐姐自己出的题目,各种情况都有,我做的有点晕。
cookie 和 session 的区别?如果访问量很大,用 cookie 还是 session?
GET 和 POST 的区别? 登陆时用 GET 还是 POST?
你了解些设计模式?写一个单例模式。
Java 值传递 引用传递问题
这里做了好几个编程题
有了解 redis 吗?
写一个 折半查找算法
写一个 冒泡排序
建立索引时需要注意哪些问题?如何使用索引?
然后小姐姐写了一个例子,问我她写的对不对,我说对呀,小姐姐说不对呀,索引要遵循最左原则。我表示数据库的知识忘得有点多。
HTTP 状态码你知道哪些?
3天后收到 HR 电话,也很简单,大概说了一下工资,入职什么的。