楼主投简历的时间是2017-01-25日,其实对于春招来说算是比较早了,但是当时看着牛客网上已经有许多招聘信息了,而且队友都已经腾讯二面的,就有点慌,想着先投几份吧,反正也不会这么早开始面试(一般来说校招实习生是在年后开始面试),还有一个月时间开始准备。第一发投了今日头条(因为牛客上头条的招聘信息最多。。。。。。)刚投出去就发现简历上有两个错别字。。GG。过了两天在群里听说有人的简历被刷了,我就摆脱学长帮忙问了下,学长说还不清楚,结果刚回复,头条就打电话来约面了。。。时间约在了2月1号。。。啥我啥都还没开始准备。。
一面面试官比较年轻帅气,大概是个24岁的小哥,说话挺温柔的,由于是第一次面试,本来很紧张的,然而气氛不那么严肃,
紧张感就没那么强烈了。上来显示自我介绍(上午临时编了一段。。)
一面可以说是面试的非常好,面试官友好,问的问题我前不久正好研究了下。
(1)、DNS的话,计算机网络上面讲的比较详细了。我对这个记得比较熟,多级DNS服务器,每一级DNS服务器如何去缓
存,缓存刷新时长。详细就看下书上。
(2)、HTTPDNS,当他问到这个的时候,(笑)到我装逼的时候了。
(3)、加快网络连接,对于tcp来说当然是长链接呀,最最基本的。当然上面的HTTPDNS也是一种优化方法,还有就是
http2,以及http2支持的长链接的缺点,具体怎么回答的记不清了,不过基本回答的很详细了,包括几种新协议(非标准)
的对比,
(4)、维持tcp长链接就是客户端每隔一定时间向服务端发送心跳包,表面连接还活着。
(5)、怎么发送心跳包。。我不知道。因为没实际写过。
(6)、当然是手动布局效率高,因为自动布局其实每一个约束条件相当于一个方程,最后系统来解多元一次方程组从而计
算出frame
一面的面试官对我还是非常满意的,问我在项目中使用自动布局还是手动布局,我说我使用自动布局,他就说,他们以前
也是使用自动布局,但是自动布局有很多坑(我没踩到过。。。),同时考虑到效率,他们现在项目都是手动布局。
一面面完面试官就让我等半小时接着二面,他去叫他同事过来。二面面试官看起来比一面面试官还要年轻。。。感觉和我差不
多大。。当时就有点轻敌了。。。
(1)、用户产生一个下拉刷新动作,请详细描述网络如何传输
(2)、简述tcp连接时的握手过程,不要第三次握手行不行?
(3)、讲讲拥塞避免算法
(4)、GCD同步与异步
(5)、GCD的使用场景
(6)、NSArray、NSSet、NSDictionary的效率
(7)、只用栈实现一个队列
(8)、内存中堆与栈的区别
(9)、什么时候在栈中什么时候在堆中
(10)、为什么OC不能像下面这样实例一个对象
class A;
A a;
(11)、请简述操作系统内存管理
(12)、一个iOS app,在内存中除了会使用到堆区和栈区,还会使用到什么区
(13)、一个算法题,给定一个字符串(只有小写字母)和m步操作,每一步操作可以把相邻
两个字符交换位置,问最多执行m步操作后,字符串中最长连续相同字符的长度是多少
二面我感觉自己面的非常糟糕,后来整个面试过程非常紧凑,后来听他们说有可能是压力面。
总的来说,每一个问题都有回答一点,然而回答的也不完全。二面结束,也没有有通知我下一次
了,然后面试官好像还很赶时间似的结束了面试。我当时觉得肯定GG了。
三面真的是个惊喜,因为二面结束我都已经放弃了,自我觉得紧张且回答的很烂(后来想想其实也没想象那么烂,压力是扛住了的,只是说网络方面的基础还是不够而已)。吃过饭早早的躺在床上吹逼,突然一个电话,让我打开电脑面试。。
三面面试官大概35岁以上了。态度和蔼,给人感觉是个leader。
三面面试过程主要在谈项目,怎么去解决项目中遇到的问题。
三面面试结束,面试官让我等hr面,托学长问了下,hr说后面和我聊下就没问题了,一周内联系我,但是考虑到我要6月份才能入职,可能提前半个月到一个月才能发offer(也就是5月中以后了)。。。还想着还没开始的春招就提前结束的(后来才知道,我投的不是校招实习生,,是社招实习生,这样,校招还能内推一波吧,再加上网申,感觉还有两次机会的样子)