网易腾讯今日头条社招iOS面经

谨以此文回馈牛客

作者去年毕业于北京某不知名211,去年春招至秋招都在牛客上看了大量的面经。今年三月份由于个人原因打算换工作,前后通过社招共面试了:网易云音乐,腾讯在线教育,腾讯视频,今日头条四家公司,岗位均为iOS开发,除开网易云以外,其他均走到总监面(腾讯在线教育)及拿到offer(腾讯视频,头条)由于我本人本来也毕业不太久,面试与校招差距不大,对学弟学妹们应该有一定的参考意义,随撰写此篇面试记录用于参考。

网易云音乐 iOS高级开发工程师 一面跪

个人是网易云粉丝,这个岗位base杭州也算不错,遂在boss直聘上投递,当天就约了晚上电面。说实话面试体验不太好,面试官应该是只做native开发,我个人在上家公司业务开发更多是weex,面试失利也较为正常。

以下为问题:

  • 简单介绍下自己
  • 看你写的都是js,oc基础还ok吗?
  • oc里的消息转发?
  • oc怎么实现多继承?怎么面向切面?
  • 怎么给系统对象如UIView增加属性?
  • Load方法与Initialize方法有什么区别?
  • autoreleasepool怎么用?原理是什么?
  • weak与assign有什么区别?
  • NSNotificationCenter接受消息和发送消息是在一个线程立吗?发送消息是同步还是异步的?接受消息呢?
  • 有什么要问我的

面了大概一小时,我自己录音做了一次复盘,感觉答上来大概80%吧,消息转发那里答得不太好,理解错面试官意思了,我回答成了整个消息流程。第二天一早就收到hr消息挂了,估计是岗位不太符合,那边估计是要纯原生且经验比较丰富的人。GG

今日头条 iOS高级开发工程师 拿到offer

效率奇高,下午两点半开始面试,不到6点和hr谈完薪资。

一面:

  • 介绍自己
  • 写了个旋转数组找最小数字的题
  • category复写元类方法原理
  • 消息转发
  • weex原理,怎么优化的
  • http三次握手流程,为什么要三次握手?
  • http长连接了解吗?
  • runloop用过吗?

一面面了蛮久,但大部分还是基础。

二面

  • 写了一个查找某路径是否存在于某二叉树内题
  • autoreleasepool原理,底层数据结构,pop,push方法是否会对对象的引用计数产生作用?
  • https握手流程?
  • weex和native如何通讯的?
  • weex渲染原理
  • runloop用过吗?
  • runtime用过么?kvo原理了解么?
  • 在上家公司做的最具有技术含量的事情是什么?

还有一些记不***了。。。囧 面试官很严肃,答完并不会给任何反馈,不知道他是否满意,搞得我越来越紧张。

三面

  • autolayout原理
  • fmdb用的什么数据库?支持事务吗?
  • nodejs协程是怎么一回事?
  • 如何在iOS项目里设计一个页面跳转路由器?

三面剩余技术方面都问的比较宽泛,更多的聊天。

hr面就不放了,没啥参考意义。

腾讯视频 iOS高级开发工程师 拿到offer

一面:

突然接到电话,面试官声音非常好听,刚开始我还以为是hr。。。

  • 简历上基本都是js啊,oc基础还记得吗?
  • oc消息流程
  • weak关键字原理
  • runtime
  • 异步绘制原理
  • oc怎么实现private,public等关键字
  • 大概讲讲weex
  • iOS渲染图片怎么优化
  • 怎么记录app启动速度
  • Load方法
  • autoreleasepool与arc原理
  • 快排原理,如何优化
  • https原理
  • 两个玻璃球,100层楼。某层楼扔下玻璃球刚好会碎,此层楼以上抛下玻璃球都会碎,此层楼下抛下都不会碎。最少抛几次玻璃球找的出来这层楼?

最后那个智力题真是无力吐槽。

二面:

  • weex最近迭代了什么?
  • 看过weex源码么?
  • 认识天施么?(我:?????)
  • weex和rn区别是什么?阿里为什么要开发weex?

感觉是个亲切的大叔,和我随便聊了聊。。。

三面:(北京现场面试)

  • 手写一个根据网络请求响应码本地快速查找对应范围内的msg的题。
  • weex和rn区别是什么?
  • 做过最有成就感的事情是什么?
  • 你觉得weex的难点在哪里?
  • weex布局引擎怎么实现?

答得一般感觉,不过最后还是给过了。

四面:(北京现场)

基本都是聊天,介绍腾讯视频业务,就不放了。

hr:

问了个很有意思的问题:我看你毕业不到一年,为什么面试官觉得你能hold住这个岗位?你自己有信心吗?

腾讯在线教育 iOS高级开发工程师 总监面后由于和腾讯视频冲突放弃流程

一面:

  • iOS渲染图片怎么优化
  • Load方法
  • 快排原理
  • app启动过程
  • oc消息流程
  • 讲讲runloop
  • 讲讲runtime
  • weak关键字原理
  • block原理
  • arc
  • 在线oj:大数相乘

腾讯在线oj体验好差,果然还是现场面试占优势。

二面:

随便聊了聊,然后又约晚上在线oj,题目又是大数相乘。。。

三面:

  • 你的项目很杂啊,nodejs你觉得你掌握的怎么样?
  • nodejs协程?
  • 介绍一下typescript
  • 为什么喜欢golang
  • golang中的goroutine怎么实现的?
  • vuejs和reactjs有什么区别?
  • 现在你可以等概率随机获得1~5个数字,怎么在此基础上等概率获得1~7?
  • 某班30%的人喜欢足球,40%的人喜欢篮球,50%的人喜欢排球,问多少人(比例)既喜欢排球,又喜欢篮球?
  • 如何快速的统计某篇文章中出现频率最高的几个单词?

果然是大佬的问题,不拘一格,最后的智力题无力吐槽。

面了一圈下来感觉和当时校招区别不算特别大,基本还是一面二面问基础,同时在基础ok的情况下深入某个项目挖掘候选者亮点。比如我简历上写了掌握weex,基本每家公司都问weex原理。。。有趣的是有的面试官还会关注除了iOS方面别的技术掌握程度,比如我无意间提到自己写过一个go的小项目,就go语言本身,面试官也和我聊了很多。

要说面试心得,我觉得我还蛮有积累的。从去年校招到今年3月社招,大大小小的公司面了不下20家。大部分都拿到了offer。一路面过来,我觉得候选者应该做好这么几件事:

  • 基础绝对牢靠,比如算法要ok,计网如tcp/ip,https,http,基本操作系统知识如线程进程,内存显存,虚拟内存,多线程调度,锁等要掌握。
  • 对应岗位的基本技术能力要具备,比如上述面试中多次提到的iOS相关问题。
  • 某个方面要有绝对的亮点,比如我做过蛮多weex,面试官可能就比较关注是否了解weex原理,同时是否做过优化?
  • 沟通能力要好,在面试中能理解面试官的问题,表述清楚自己的想法。
  • 思维能力要好,遇到自己没见过的问题,要有解决思路。

最后推荐几本校招必备的书籍,不限技术方向: 《现代操作系统》、《程序员的自我修养》、《自顶向下的计算机网路》、《C和指针》以及《剑指offer》

同时放一片自己总结的iOS方面的常见面试考点:https://github.com/Rabbbbbbit/iOSReview。个人觉得如果全部掌握,足以hold住80%以上的iOS面试官。

其中一小部分还在完善,可能也有些纰漏,欢迎大家star或者提issue。

#面经##腾讯##iOS工程师##网易##字节跳动##iOS#
全部评论
6
点赞 回复
分享
发布于 2018-04-05 12:52
点赞 回复
分享
发布于 2018-04-05 13:41
阅文集团
校招火热招聘中
官网直投
敢问大佬是在面的深圳的岗位吗?  
点赞 回复
分享
发布于 2018-04-07 17:42
敢问大佬可以透露下之前是在什么公司就职的?
点赞 回复
分享
发布于 2018-04-08 00:09
大佬还看不看机会呀~看的话加我微信聊一聊呀~我的微信是17319234624
点赞 回复
分享
发布于 2018-08-09 16:18
应届毕业不到一年就开始参加社招,在项目经历方面会不会不占优势
点赞 回复
分享
发布于 2018-09-26 19:10
大佬是广东人吗?
点赞 回复
分享
发布于 2018-10-05 18:23
我渣交的大佬。。。
点赞 回复
分享
发布于 2018-10-06 15:31
看了这个帖子,我可以确定的是,我的校招是社招难度了。工作后读研。。。
点赞 回复
分享
发布于 2019-09-14 02:33
感觉楼主面的还好,今年我面腾讯的时候,问我iOS底层常用的汇编指令有哪些,如果优化。instrument中time profile的实现原理(当时说用aop,面试官说太慢,后来反应过线,监听线程的函数调用栈?)。这两个问的我有点晕,其他的都答出来了。
点赞 回复
分享
发布于 2019-12-02 19:06

相关推荐

15 103 评论
分享
牛客网
牛客企业服务