滴滴出行司机要求及面试流程 (滴滴出行视频面试具体问什么)

感谢CGQ同学的无私奉献,我在这帮他发一下滴滴出行的面试全纪录,岗位是软件研发。顺便提下,CQG同学是搞数据研发的,已经拿到了阿里,微店,滴滴等公司的offer,大家如果有啥问题想问他可以在评论区留言,他会给大家回复哒~

## 总体信息

时间:2016-09-26

地点:滴滴总部(数字山谷)

大概流程:2点50左右到面试地点,先签到领取表格,等面试,共4轮,一面开始时间4点15左右,二面开始时间5点40左右,二面结束后,滴滴为每个面试者定了盒饭,吃饭接着面试,三面开始时间7点15左右,四轮开始时间8点40左右.

面试内容大致如下,基本上按照顺序来展开

## 一面

面试官:地图研发

持续时间:4:15左右到5点半

* 话题1:面试官上来问的操作系统中进程和线程的区别;接着问进程和线程的关系,一个进程挂了,里面的线程会怎么处理这样的问题;然后是Linux中fork函数调用的执行过程,我说不是很了解,只知道功能,面试官接着问那如果是你自己来实现这个功能你会怎么来实现,我说了下我的想法,用树来维护子进程的关系,这个问题结束到下一个话题。

* 话题2:鉴于我的C++不怎么熟,面试官选择Java来问。Java中线程的实现,手写代码实现一个简单的线程并启动,这个线程可以手动关闭。完事之后,问Java中线程的实现方式以及区别,我主要比较了下Runnable和Thread的异同,后来面试官说还有第三种实现。基于线程的两种实现,在Java中,有继承和接口,面试官问什么时候用继承什么时候用接口以及原因。接着是面向对象三大特性,重点讨论了下对Java中单继承的看法,以及Java是如何表现多台和什么时候确定到底使用了那个类。

* 话题3:设计模式,也是基于上一个问题衍生来的,面向对象不可避免的会有内聚和耦合的问题,聊了下常用的方案,最后写一个单例。

* 话题4:Java的内存管理机制和垃圾回收。首先给出一个`String str = "abc"`,问`"abc"`和`str`都存在哪里,接着是栈中都存放哪些东西之类的,然后是垃圾回收机制,怎么回收的,什么时候回收,并让举例说一个OOM的问题,以及解决方案。

* 话题5: 数据结构,很简单的单链表,要求是有序的,只需要提供插入的接口即可。

* 话题6: linux shell命令 第一个问题,查找当前目录所有`.c`结尾的文件,并删除,第二个问题,查看某个端口是否被占用

##二面

面试官:基础平台部门

持续时间:5点35左右到6点50

* 话题1:算法。上来给了一道算法,走迷宫,时间是20分钟.时间到了,还有部分代码没写完,给面试官讲了一下思路。然后面试官一直问为什么不用递归,用递归的话,时间应该是够的,接着讨论在代码优美和完成任务之间应该如何选择,看得出没写出来,面试官不是很高兴。

* 话题2:简历上有一些实时计算的东西,面试官提出怎么样实时计算系统登录人数。这是一个UV的计算,比较简单,读取数据源,解析`userID`,使用HyperLogLog之类的算法来计算UV.

* 话题3:项目,一个实时监控平台的项目,基于Storm和OpenTSDB来实现。详细介绍整个流程,面试官本身不了解Storm,因此要用简单的方式来说,描述的时候面试官题出很多疑问,缓存模块的实现,计算规则的读取与更新等等,问得很详细。

* 话题4:JDK源码。有点记不清了,主要是问了下集合类的中内容,ArrayList和LinekdList的实现和使用场景等。

* 话题5:职业规划和个人优缺点

* 话题5:项目,阿里巴巴中间件性能大赛初赛项目。RocketMQ+JStorm+Tair ,首先介绍需求,然后是方案和实现,给出数据处理流程图,最后问有哪些优化点和优化方案。

##三面(Boss面)

面试官:不是很清楚,职位等级比较高,全程绷着脸

持续时间:7点20左右到8点半

* 话题1:项目,实时监控项目。首先介绍项目需求,然后是真个架构,接着分开逐个介绍每个模块和具体实现。介绍的过程中提出很多问题,怎么缓存,缓存的生命周期,节点挂了怎么办,怎么样保证数据一致性。最后还让优化。

* 话题2:数据结构和算法 开始聊二叉树,然后让给出平衡二叉树的定义和实现,我直接说实现比较难,做不到。他就问排序算法,文了解哪些,我说都了解,最后竟然是让写冒泡排序。写了三遍,第一遍有明显的bug,第二遍问还有没有优化的空间,第三遍是重写优化后的代码,面试官对代码质量考察很严格。

* 话题3:对滴滴的看法,先从消费者角度谈看法,然后是自己的一些见解,胡扯了一番互联网思维

* 话题4:对自己本次面试的评价以及收获。

* 总结:这轮面试其实很差,面试官虽然一直很严肃,但是面完后他立马找了HR,告知下一轮,效率很高

##四面(HR面)

面试官:HR

持续时间:8点半到9点20左右

* 话题1: 自我介绍和简历吐槽。简历过于简单,学历信息什么都没有,吐槽的气氛比较轻松

* 话题2:平常都喜欢做些什么,从大学一直聊到现在,都有聊,细节都问,很详细

* 话题3:最受打击的事情和原因

* 话题4:对滴滴的看法

* 话题5:对阿里月饼事件的看法