小米支付实习面试经历
小米支付一开始是春节左右,我在清水河畔闲逛看到的帖子,发现在招实习生,然后我就投了一份简历过去。
很感谢 陈大哥 给我推荐了一个网站 http://www.500d.me/ ,我在上面随便改了改,写了一个感觉能看的简历,然后就好了。我简历还是比较水的,全是废话,唯一能看的就是区域赛破银= =。
好吧,感觉简历啥都不能看。
没过几天,小米支付的leader就给我打了个电话,通知我一面电话面试。很开心的简历关过了,然后开心的去一个人去吃了顿肯德基庆祝。
一面
小米一面通知的下午两点,我十二点就坐在电脑面前无所事事,等着电话打过来。
一面面试官挺好的,知道我是非计算机专业的,就没问一些操作系统、也没问计算机网络的问题,就问了下简单的东西:
问题一:栈和链表的区别。
问题二:快排原理是什么,说快排n^2的情况是什么情况,如何避免。以及让我手写一下快排。
问题三:你会DP吗?给我讲讲你平时怎么做DP的。
问题四:给你一个链表,让你不开额外空间的情况下,如何找到其中的环。
问题五:说说你做过哪些项目,你有啥优点。
这些问题好像看起来都挺傻逼的?= =
对了,中途面试官看到了我简历上写的blog,然后就跑到我blog逛了一圈,看到了个java项目,发现我好像还是会一点java的= =
答完了之后,我问了下面试官,怎么样。面试官说还行,比他当年强一点。
然后又开心的去龙湖吃了顿饭……
二面
过了一天,leader打电话给我通知,一面过了,然后准备二面的电话面试。
二面是在一个网站上写的,那个网站是共享屏幕的,就是面试官可以看到我在写啥,我也能看到面试官在写啥。
二面面试官知道我是acmer之后,也知道我是经管的,就也没问操作系统和计算机网络这块的东西,着重问我算法。
出了两道leetcode的算法题。
一道题让我写一个文件的处理,让我从N个M行已经排好序的文件,整理成一个大文件,要求大文件也排好序。要求排序的过程中,空间复杂度O(n),时间复杂度O(nmlogn)。
一开始我写的暴力,然后面试官提示了我复杂度,然后我才写出来。
我们先把每一个文件的第一行取出来,然后logn的找到最小的,然后把这个最小的扔出来,然后让最小的那个文件放出第二行,每次取最小的就好了。
中途让我手写了排序,手写了堆……
另外一道是让我在一个01矩阵找到最大的全1矩阵。
这道题就是经典老题了,但是阿西吧,我忘了= =,忘了咋做了。
然后我写了个N^3的傻逼暴力,写完我就发现正解了,然后就给面试官改成正解。
对了,中途面试官问了我一个问题:
面试官:你会数据库吗?
我:我会啊,我会mysql。
面试官:那你给我讲讲mysql的底层实现。
我:???不应该问了我mysql的语法吗
尴尬极了= =
然后问了我一些简单问题,面试就结束了。
我还是问了下面试官我面的怎么样,面试官说,你还是挺好的,有学习能力,知道不断的去修改程序的复杂度(卧槽,吓傻了),建议让我还是去看看一些基础的东西,看一些工程的东西,以后还是有用的。
然后开心的就去龙湖了,准备找家店happy
拿到offer
刚刚走到樱花食堂,leader就打电话给我,给我了个口头offer,让我去看看小米pay。
他说:你用过小米手机吗?
我说:我用过,我手上就是小米手机。
他说:可以哦,那你可以体验我们做的东西了。你手机什么型号?
我说:小米MAX。
他说:那没有这应用。
尴尬……
过了N天,HR给我打了个电话,通知了一下薪资,然后就挂了。
评价
个人觉得,小米还是挺赞的,至少面试给我的感觉是挺好的。