[北美] Perception in Self-Driving Car面试经验

楼主: wWindaZz (Ryan WindaZ)   2017-10-07 13:19:35
网志好读版
https://goo.gl/iSwj5Z
https://ryanwindaz.blogspot.com/2017/10/umich-robotics-06-perception-in-self
.html
今年2017暑假的时候,我去了Q公司实习,实习内容与无人车无关,但是我的兴趣在
computer vision和perception,所以我一直有在看公司里面有什么我有兴趣的部门,结
果幸运的获得了面试无人车部门的机会,所以想记录一下面试过程。我面试的部门在
research lab下,所以面试内容可能会跟一般部门稍有不同,然后职称是system
engineer,不是software也不是hardware,其实同部门下还有software engineer,但是
做得事情不一样,system engineer是着重在算法部分,可能写python或是matlab就好
。Software engineer是负责把system engineer决定要用的算法用C++ implement出来
,所以software engineer在面试时问的问题会偏向coding(不过这里仅供参考,因为我没
有面试software engineer)。System engineer的问题则会偏向你做过的project,
project里面用到的数学公式可能会叫你推导。
Phone Interview
当初我以为会直接onsite interview,毕竟我人都在公司了XD,但没想到还是先有一关
phone interview,我想可能是想先过滤一次,如果不适合就也不用浪费时间onsite
interview了,其实phone interview是直接打公司内部分机过来面试,面试时间大约
45min~60min,一开始先叫我稍微自我介绍一下,还有讲一下目前Intern在做什么?但我实
习的部门其实跟无人车一点关系都没有哈哈,所以就只有简单带过。我履历上列了4个
projects,都是和computer vision或是perception相关的,面试官就叫我一个一个讲一
下project内容,这时候他还不会问太多技术上的问题,主要问题都是就他不清楚的地方
提问,然后最后问我有没有问题要问,到这边就结束了。其实算是蛮轻松的,只要把自己
的履历讲清楚就可以了。
Onsite Interview
因为intern快结束了,所以很有效率的隔一星期马上就onsite interview了,面试时间是
我离职前一天和离职当天XD,我离职当天识别证都缴回去了还跑回公司去面试。Onsite
interview原本要面试4个人,但是有一个人好像出差了所以变成面试3个人。
1st Run (~60min)
第一天面试了两个人,第一位面试官一样叫我简单自我介绍一下后就直接进入主题,因为
他看我履历上有用deep learning做image segmentation,就问我如果他现在有一个简单
的场景要辨识,只要区分街道跟不是街道就好(classification problem),我会怎么设计
neural network,我就开始在白板上画出neural network,并讲解每一层分别用什么还有
每一层的output number,不过这边有被他纠正说我用的output number太大了,后来发现
他说的没错,因为他要辨别的场景很简单,不需要用到这么大的output number。他接下
来就针对deep learning的很多观念提问,这部分我觉得我回答得还可以,最后他问我用
什么tool写,我说Caffe,他说他都用Tensorflow,很想知道PyCaffe怎么写的,就叫我在
白板上用PyCaffe写出怎么train neural network,我一听到就囧了,一方面是过了有点
久,一方面是谁会记得PyCaffe这么多function的名称......,我就只有写pseudo code,
然后跟他说我真的忘记那些function名称了,最后他也因为还有meeting,所以就到这边
结束了,出来后很懊悔没有去复习PyCaffe......。
2nd Run (~70min)
隔了一个小时左右又接着第二位面试官,原来他和上一位面试官是同个team,所以他们有
分工好分别要问的部分,一样先简单自我介绍后,他先问了我如何从两张不同角度拍的照
片中算出depth,我之前没做过这个,但我尝试讲一些我的想法,最后他说没关系可以回
去再想想这个问题XD。由于我project有做visual odometry,所以他叫我解释一下流程,
然后在白板推导公式,还好我知道这里可能会考(因为前几次经验发现大家很爱问这个),
所以我事先有准备。接着他就抛出一个题目:要如何判断一个点在rectangular bounding
box里?一开始我以为是正的bounding box,我就说可以用座标判断是否在中间,但他说这
个bounding box是可以任意旋转的,我现场想了一下后,提出可以用那个点到bounding
box四点所围出面积来判断,接着就这个问题一直延伸,这真的是考临场反应,因为我之
前没在做detection的问题,还好现场有想出来。最后闲聊了一下还发现他知道我mentor
lol。
3rd Run (~75min)
隔了一天终于来到最后一轮,他其实就是一开始跟我电面的人,一样简单自我介绍后,又
问了我visual odometry的东西,哈哈昨天才刚推导过记忆犹新。接着看到我之前做3D
voxel semantic segmentation,叫我在白板上画一下流程,把neural network大概画出
来,然后跟我讨论了一下3D环境会遇到的问题,例如voxel表示法会有大部分区域都是空
的问题,其实花了很多computation在算一些没意义的区域。结束前他说要考一题coding
problem,听到时我内心大惊!如果有看我上一篇文章就知道我根本没准备刷题
......,不过还好题目蛮简单的:output all of the prime numbers from 1 to 100,他
问我平常用什么语言,我说python,于是就在白板上边讲解思路边写,其实我的code应该
不是100% bug free,但是他理解后就说可以了。之后就边聊天边送我出去,到这边终于
解脱了XD
最后
因为在准备面试前,常常上网都找不到相关领域的面经,所以想把自己的经验分享出去,
希望在这个大CS时代下,能帮助到一些跟我一样对computer vision和perception有兴趣
的人。
作者: wixter (hmm)   2017-10-07 13:31:00
push 你有推其他间吗? 现在超多相关公司
作者: goroundround (走圈圈)   2017-10-07 13:32:00
感谢无私分享
作者: smallmac (洨麦克)   2017-10-07 13:33:00
作者: wixter (hmm)   2017-10-07 13:37:00
另外depth感觉想考epipolar :p
作者: j19951102 (j19951102)   2017-10-07 13:48:00
谢谢分享!对CV这方面的工作有兴趣,想请问你的背景是master还是PhD吗?
作者: ohmygodd (MBPR GG )   2017-10-07 14:53:00
推强者rob学长
作者: Junneo (偏激异端天秤混合体)   2017-10-07 16:10:00
赞赞赞,好文
作者: ladygaga168 (Malkovich)   2017-10-07 18:56:00
作者: bluebluelan (新阴流大目录免许皆传)   2017-10-08 02:35:00
应该是过去就有做过不少CV的东西了吧?
作者: bowin (尽其在我)   2017-10-08 07:08:00
推详细分享!
作者: lunashining (asdfgh)   2017-10-08 09:13:00
等等你是在美国念MS还是有身分在台湾念@@阿没事看脸书其实我有一些好友跟你重复XD

Links booklink

Contact Us: admin [ a t ] ucptt.com