正文
自我介绍
我本身本科阶段和硕士阶段都是自动化专业,和计算机专业有一点相关,但是差别还是挺大的。我学习计算机方面的知识主要是从研究生阶段开始,大约是从研一下学期开始自学。没有参加实习。准备找工作的时间大约是研二下学期结束的时候,也就是16年7月份。
面试的岗位是Java后台开发,面的公司不多,主要有
美团点评-网易-网易有道-携程-华为-中兴-科大讯飞-烽火通信
这些公司。从前到后简单记录了自己面试时候遇到的问题,以及对面试给了一点点小的建议,给明年甚至以后的师弟师妹们一些参考。欢迎各位朋友一起交流。
科大讯飞(1
面后挂了)
讯飞一面(电话面 1对2)
2016年8月23日 时间 40分钟左右
Ø 自我介绍
Ø 说说项目
Ø 数据库内外网交换怎么做的,如果交换给你做,你怎么做
Ø 你知不知道一些第三方的组件能够完成数据库的交换
Ø Web service的介绍,是怎么编写的
Ø Linux修改权限的命令是什么,你对Shell编程了解多少,通常用来做什么
Ø 说说你了解的设计模式
Ø 假设一个a类变到b类,那么你用适配器模式怎么完成
Ø 数据库你通常是怎么优化的,使用过什么其他的工具优化没有,怎么用的
Ø 现在有一个很多个表进行关联查询的sql,子表的数据非常的多,那么请问你仅仅从sql的角度去进行sql语句的优化,不需要考虑索引、谓词
Ø 你没有Java项目是吧
Ø 你专业是控制方向,为什么搞现在的方向
Ø 你有什么问题要问问我的
分析:这次被挂的原因主要是我选择电话面试的地点有问题,在楼梯道里面,信号不好,加上回声,通话质量非常低下。建议参加电面的同学找一个通话还不错的地方参加电面比较好。
中兴(2
面后拿到offer
)
中兴一面(现场面 1对2)
2016年7月18日 时间 20分钟左右
Ø 自我介绍
Ø 说说自己做过的项目
Ø Java虚拟机运行时内存分配和内存释放
Ø 聊聊常用的设计模式
Ø 存储过程的参数是如何传递的
Ø 存储过程的异常怎么分类的,你所写的存储过程中,是如何使用异常的
Ø 存储过程你通常在在何处编写
Ø 你们数据库使用的是什么字符集,你觉得和其他的字符集相比,有什么区别
Ø Oracle数据库中分别使用什么函数查看字符串的字符数和字节数
Ø 开发中如何解决SQL注入的问题、是否了解其他数据库
Ø Linux中如何查看cpu的使用率
Ø 是否通过英语六级、计算机等级、首选工作地点,为什么,家里几个小孩
中兴二面(现场面 1对2)
2016年10月8日 时间 20分钟左右
Ø 自我介绍
Ø 聊一聊java里面的多态
Ø 说说你的项目里面触发器是如何使用的,触发器有什么优点和缺点,通常有什么作用
Ø 谈一谈数据库里面的视图
Ø 你通常是通过什么样的方式和途径来学习的
Ø 说说英语口语,就简单的用英语介绍一下自己
Ø 目前的应聘进展怎么样,期望的工作地点是哪里
Ø 你奖学金非常的多,那么在你本科或者研究生的阶段,你做过的最失败的一件事是什么
分析:总体上来说中兴面试的难度不大,拿到offer也相对容易,面的好的有机会拿sp。
华为(2
面后等待结果,估计是备胎了)
华为一面(现场面 1对1)
2016年9月21日 时间 40 分钟左右
Ø 自我介绍
Ø 介绍项目
Ø 数据库的触发器你通常是怎么编写的,有什么作用
Ø 触发器和函数的区别是什么
Ø 数据库除了oracle还了解过什么其他的数据库,各自有什么特点,你觉得阿里巴巴使用的是什么数据库
Ø Dbutils是哪个公司的产品,数据库连接池有哪些,如果让你自己实现一个数据库连接池,你怎么设计
Ø 说一说java里面单例模式通常是怎么实现的,各自有哪些特点
Ø 说说java里面的集合框架,各自是如何使用,有哪些区别和缺点,怎么
Ø 聊一聊java里面的多线程编程,详细说说java里面的并发包,线程池的实现原理是什么样子的
Ø Java反射有没有过学习,java的注解有没有过了解
Ø 讲讲tcp和ip协议有什么区别,如果我们华为这边要和其他公司进行数据通信,请你设计一个通信方案
Ø 有没有什么问题要问我的
华为二面(现场面 1对1)
2016年9月21日 时间 20 分钟左右
Ø 自我介绍
Ø 你是不是党员,你在学校的成绩怎么样,拿过哪些奖学金,参加过什么比赛
Ø 你的成绩可以保研,你为什么选择考研,你考研的成绩怎么样
Ø 有没有发表什么论文,有没有什么专利
Ø 你毕业课题的方向是什么
Ø 有没有什么要问我的
分析:华为今年非常看重学校,专业,论文,专利,成绩,竞赛,感觉面试只是作为一个参考,没有作为比较高的应聘评价标准。至今本人仍然是录用审核中,估计是备胎了。
网易有道(2
面通过后放弃后续面试)
有道一面(电话面 1对1)
2016年9月8日 时间 50 分钟左右
Ø 自我介绍
Ø Java的内存布局以及堆内存是如何管理的
Ø 了不了解GIT和SVN
Ø 有两个链表,如何判断它们是否相交
Ø 有两个单链表(不存在环),不借用任何其他数据结构,怎么遍历一次就判断是否相交
Ø TCP是如何来保证可靠的传输的
Ø 如何你和你的同事同时在开发项目,但是你们的代码冲突了,并且生成了日志信息,那么请问你怎么进行处理
Ø Linux中查看服务的命令
Ø 你这个命令会出现很多服务,那么怎么找到我要搜索的服务名称
Ø 数据库是如何进行优化的
Ø 项目里面有没有使用到缓存
Ø Lucene的实现原理
Ø 倒排索引的介绍
Ø 百度的查询框中,假设你打了一个“中”,那么下面的一串的提示字符,类似“中国/中间”这些是如何出现的
Ø 如何管理这些常用词汇的索引
Ø 与面试官的交流
有道二面(电话面 1对1)
2016年10月12日 时间 60 分钟左右
Ø 自我介绍
Ø 项目简单介绍
Ø 现在有一个按照升序排序的数据,那么将数组后面的0个或者多个数组移动到数组的前面,那么再给你一个整数,那么请使用最快的方法找到这个x出现的索引(如果出现的话,可能不出现)
Ø 现在有一个字符串流数据,在这里面含有邮箱,已知邮箱的最大的长度为50字节,那么请教字符流中的所有的邮箱提取出来
Ø 现在有一个n*n的方格,里面每个格子都有大于等于0的数值大小,那么现在需要从左上角走到右下角(只能有两个方向可以走),请问怎么走才能使得走过的格子的和最大
Ø 如果要求从左上角走到右下角,经过的格子的值大小置为0,再从右下角走到左上角,怎么样才能使得两次走过的和最大
Ø 如果要求从左上角到右下角,再从右下角走到左上角,再从左上角走到右下角,经过的格子的值大小置为0,怎么样才能使得两次走过的和最大
Ø 在一个平面中有两个矩形,现在知道两个矩形的坐标,那么请判断这两个矩形是否有重叠。
Ø 现在要设计一个类似于word一样的工具,但是要求可以远程的多个人一起对同一个文档进行操作(编辑,删除等),同时要求一个人的修改能够立刻让另一个人看到,并且可以动态的添加人员进入,而且需要保证数据的唯一性、一致性和高效性,不要出现锁住等情况,那么让你设计,请问你如何设计。
Ø 有没有什么问题需要问我的
分析:直到10月26号有道的hr才给我打电话,问我27号是不是可以去杭州参加终面(北京的面试官过去面,一轮技术一轮hr),因为和其他公司签约的原因,我的时间和条件已经不允许了,也就委婉的拒绝了。总体上对有道的印象还是很不错的。
美团点评(4
面后拿到offer
)
美团点评一面(现场面 1对1)
2016年10月20日 时间 50 分钟左右
Ø 自我介绍
Ø 项目介绍
Ø 自己在项目里面主要完成了哪些的工作
Ø 说说项目的数据库的设计
Ø 项目中数据库之间的同步是如何完成的
Ø 项目中的模板消息推送是采用什么机制的
Ø 通过业务将所有的表以及表和表之间的关系复现出来
Ø 既然数据库使用的比较多,那就谈谈数据库的事务,举例说明
Ø 事务的隔离性详细的说说
Ø Jvm运行时内存区域的分配
Ø Java垃圾回收机制
Ø 手写一个算法题,对字符串的处理,分别统计出任意一个字符串中所出现的字符的个数
美团点评二面(现场面 1对1)
2016年10月20日 时间 50 分钟左右
Ø 自我介绍
Ø 项目详细介绍
Ø 项目里面的数据库是如何设计的,有哪些表
Ø 数据库在使用的时候是如何进行优化的
Ø 外网和内网的数据交换是什么完成的
Ø 画一下你们这个项目的通信结构图,给我分析分析
Ø 模板消息推送是如何完成的,你们对于没有完成的推送有没有做出什么补偿机制
Ø 为什么考虑这种方式进行推送,有没有其他的方法
Ø 你们有没有考虑过web service本身就挂了的问题
Ø http tcp ip你最擅长哪一个
Ø 画一下tcp三次握手的过程,写出来状态和发送的信息
Ø 写一下tcp主动关闭的一方的几个状态,并且解释一下这些状态
Ø 你们项目中上传图片是采用post的哪种方式
Ø http的常用的状态有哪些,301和302的区别是什么,503是什么意思
Ø 说说lucene的索引的原理,你项目中是如何使用的,你使用的分词方式是什么,有哪些分词方式
Ø 为什么不使用数据库提供的全文索引,它是如何更新索引的
Ø 有没有什么问题要问我的
美团点评三面(现场面 1对1)
2016年10月21日 时间 50 分钟左右
Ø 自我介绍
Ø 项目详细介绍
Ø 针对项目的几个小问题
Ø 手写一个算法题:求解一颗二叉树的深度,并分析
Ø 手写一个算法题:求解一个旋转数组中出现的最小的数字,要求效率高,并分析
Ø 你自己在以后想从事什么方向的工作
Ø 有没有什么问题要问我的
美团点评四面(现场面 1对1)
2016年10月21日 时间 30 分钟左右
Ø 自我介绍
Ø 平时是如何学习的,通过哪些方式,学到了什么
Ø 你本科硕士并不是计算机专业,为什么想从事互联网方向
Ø 你看过哪些书,详细的说说
Ø 在项目里面你是如何和你的同学进行分工协调,高效工作的
Ø 如果出现了不一致的意见,你们是怎么解决的
Ø 你对我们新美大的产品有过哪些接触,感觉如何
Ø 我们新美大工作地点有北京和上海,你会选择哪一个城市,为什么
Ø 你还有没有收到其他公司的offer,那你会在这些里面如何的选择
Ø 有没有什么问题需要问我的
分析:很幸运通过了美团点评的四场面试,拿到offer,最终也是放弃了其他的机会,和美团点评正式签署三方协议,具体的部门是基础架构中心,做Java后台开发方向。
网易(3
面后拿到offer
)
网易一面(现场面 1对1)
2016年10月12日 时间 50分钟左右
Ø 自我介绍
Ø 项目简单介绍
Ø 数据库优化的策略通常是什么样子的
Ø 数据库同步你做过哪些方案,各有什么优缺点
Ø 现在有两张表(记不太清楚了),问怎么查询才能保证查询效率最高
Ø Jvm运行时内存区域的分配是什么样子的
Ø 假设出现了内存溢出或者栈溢出的话,怎么去解决这些问题
Ø 内存泄漏通常有哪些可能的原因引起
Ø Jvm中的常用的参数有哪些
Ø Jvm中的垃圾回收机制
Ø Linux你学习的深度是什么样子的,了解过哪些
Ø 面试官打开他的mac敲了一个命令,出现了很多数据,指着里面的一列,问我是什么意思
Ø 后面就是他在和我说岗位通常做一些什么,介绍了他们的那边的环境等等
网易二面(现场面 1对1)
2016年10月12日 时间 50分钟左右
Ø 自我介绍
Ø 介绍项目
Ø 说说数据库的索引在你项目里面是怎么使用的
Ø 有哪些索引,它们底层是采用什么数据结构去实现的
Ø B树和B+树的区别在哪里
Ø 现场画了一个数据结构(类似于循环队列),然后现场写代码对这个数据结构进行封装和操作,要保证多线程操作没问题,同时还需要考虑到数据结构的空和满等条件下成员变量的变化
Ø 你觉得数据库运维这个岗位日常的工作有哪些,你怎么看待这份工作
Ø 有没有什么问题要问我的
网易三面(现场面 1对1)