废话不多说,以下笔面经:
感觉腾讯的笔试没阿里的难,阿里的太多逻辑数学题了,四十分钟20道选择题,完全没有足够的时间思考(脑子不够使呀)。还好,腾讯的笔试有几道题是 比较眼熟的,做题过程中心里总算有点底,还有最后的附加题,有一道app的内存和性能优化相关的,幸好之前有看一本Android的优化技术方面的书籍, 所以感觉回答得还可以。部分题目如下:(摘自:http://blog.sciencenet.cn/blog-711035-830244.html)(另外,很多道有代码的题目,不是C/C++的代码,好像是苹果的Object C或Swift语法的)
- 二叉树遍历:已知中序遍历顺序以及前序遍历顺序,求后序遍历顺序
- SQL语句: 找出QQset中最小的QQ号码
- encodeURI&URL传播的转义结果
- 36辆车,6条跑道,无计时器,最少几次比赛可以选出前三(答案:6+1+1)
- Windows/Linux下判断远程地址为某主机监听的某端口是都开放的命令是?
- html 网站cookie
- cookie功能
- 哈希冲突
- 哪些http方法对于服务端和用户是安全的
- 二维数组内存地址计算
- (附加题)网站安全方面的...
- (附加题)app的内存和性能优化相关的...(我扯了下内存出问题的原因是可能内存泄露或溢出...,然后举了几个例子;接着解决方法分别从布局优化、系统优化、代码优化,还有使用一些工具监测等方面扯了一大堆)
- (附加题)定长内存池...
整体来说,笔试题还是有好些是有把握的,这得益于之前看别人的笔经和做完ctci的150道题,不过还是有很多是猜的,因为腾讯考的知识面很广,而自己很多东西学得也不是很系统,所以也没办法。
kl好像是在22号下午6点多收到面试通知的,然后我刷了下小腾的状态,还是“笔试”状态,那时也没报什么希望或失望的感觉,然后在晚上10点左 右,在我看着猫眼的科技的视频,然后突然来了一条来自腾讯的信息:23号下午15:50,到林和中路海航威斯汀酒店参加面试......瞬息小窃喜了下, 机会来了!
第一次参加面试难免紧张,2点钟就提前出发了,但是想不到公交居然在靠近林和西几个站的地方塞车了,塞了大概半个钟,那时紧张死了,不知道该不该下
车搭车过去,路段有不熟悉……最后踩点到达那里签到面试,也遇见了gt他们。然后拿着面试的房间号上到20楼2012,发现里面还有人面试,外面等待了十
多分钟,想着该如何自我介绍,尽量放松自己的心态,消除紧张感,感觉那时其实还好,不是特别紧张了。
面试基本内容:
- 递简历给面试官时,他问我是被约在几点的,然后说了前面面试的时间长了点,所以延迟了(当时就感觉这位面试官比较和善,所以之后的面试压力不是很大),然后他在我的简历上停留了好几秒种(我的简历只有一页纸,当时估计他对我的简历有点兴趣),之后叫我自我介绍;
- 自我介绍(我扯了下姓名、学校、专业,然后什么时候开始做项目,在项目中学到什么,平时比较关注互联网资讯技术等的,和点了下业余爱好等,不到一分多钟,简单一点就好)
- 然后在纸上写程序,a.给一个64位的整型和二进制特定位编号,判断该特定位是1还是0(这显然就是用位操作,用几行代码就完成了,面试官看了下没说什么);
- b.找出一个字符串中只出现一次且是第一个的字符(唉,当时怎么就没问他是26个字符集呢还是所有的,显得太不专业了o(╯□╰)o……当然 直接遍历然后存储各字符出现的次数返回第一个为1的即可,但效率太低了;当时首先就想了下有没有更高效率的方法,想了几分钟,没想到好的方法,算法实在是 太差了o(╯□╰)o,然后直接和他扯了,然后他问我能不能优化,我就说我再想想,然后就试探性回答了其他方法……)
- 还问了线程进程、绘图、异常等相关的……
- 还有扯了下项目方面的,在聊到自定义View方面,本来想拿之前那个TimeTrack的锁屏给他看的,但弄了很久都没进入锁屏界面,当时好 紧张呀,面试官都靠近过来了,居然出问题了,唉,坑爹的……然后我扯了下里面的一些绘图方面的,后来终于可以进入锁屏了,然后说了下写技术实现和产品细节 方面的……
- 其他不记得了……
最后面试官问我想在广州深圳哪里工作?我当时就奇怪了,怎么就问这个啦,唉,可惜不是在复试的时候遇到这个面试官>_<……想不想学ios方面的,因为他们主要招ios开发的;最后问我有没有什么问题,我当时没想到什么,走的时候他说面试结果会在周三之前出来……
整个面试,虽然有很多回答得不是很好,但面试官实在太nice了,没回答好的也没说什么。所以说面试有好运也是挺不错的,但如果实力真的很强,对运气的依赖就不会很高,可惜我只是个菜鸟o(╯□╰)o,记得网上的一位牛人面经上说过:面试 = 运气(50-n)% + 实力(50+n)%,至于n,我想说n的意思n = f(x),x即实力,n与x成正比关系,这就意味着,你实力越强,对运气的依赖性越低
当天晚上回去的时候就开始不断刷小腾的状态,看讨论区,有些人好快就收到通知了,当时我就担心过不了,几乎每半个钟就刷一次,但状态还是“初试”, 持续到第二天下午,然后整天都没心情看书了。后来,kl收到复试通知了,大神就是快!我的还是“初试”,感觉没戏了。然后晚上10点多准备投多益的简历, 突然邮件来了:25号下午2:00参加复试,欣喜了一下。希望还是要有的,万一哪个时刻突然来了呢?
复试前天晚上就和kl一直讨论该怎样准备,然后问了师姐,我当晚就准备了下项目方面的,其他知识点却没怎么看了。
这次搭地铁过去,弄得时间还是有点紧,kl在等候厅等hr面了。等了十多分钟,拿了房间号上到1313,在外面也等了十多分钟,然后进去,面试官微胖,说
话风格像足了弄技术出身的。递交简历给他,他说已经有了,然后又做了一次简短的自我介绍,这次可以看得出面试官对我的简历不怎么感冒了,而且脸色显然不是
很好。
面试内容:
- 写出一次快排后的具体变化情况(当时没听清楚,以为要写快排程序,然后写着写着,他说不是,表情就有点不爽了,说举例分析出一次快排的变化即可)
- 写出并分析Android的activity的生命周期(然后当时居然不记得了,这是Android的基本内容,只写了生命周期的四个方法,简单分析什么时候调用,然后他很鄙视地说还差很多呢,分析得又不够详细呀)
- android的布局页面为什么一定要用activity,直接用view不行吗?(mb,我怎么知道,Google就是这样设置的呀……扯 了下是为了统一开发的模式,view要用activity承载才行,他说不是不是,然后说了什么不记得了,mbd,那你又不告诉我,当时真想问他,但又不 敢问,……我应该往Android的其他组件扯一下的,但被他搞得太紧张了,都不懂得将他的问题转移到自己懂的区域上了)
- 然后问了下项目,打算讲那个app比赛的,然后说到服务器端,用ksoap连接webservice,他就打断了,不是自己写的连接方法的 吗?我们都不用第三方的,自己开发,有没有熟悉其他网络编程的,如tcp、http等,还有你移动端的说道服务器那边干嘛……坑爹,这个没注意到了。被他 这样一说,又忘记转移到自己懂的知识点了,其实可以说下Android的网络开发框架volley,Async-Http等的
- 见刚才那个项目没什么好讲了,又扯了下自定义view, 于是又发生了初面的尴尬,唉……给他看了下绘图的一些,感觉没什么好讲了,然后他冒出了一句,那就是比较熟悉页面布局方面的咯,不过这个不是很简单的么。。。md,没戏了>_<,之后也什么都问了,我问他什么时候会有结果,他说今晚或明晚
- 哦,还有tcp的,其他不记得了……
面完之后就感觉很大可能没戏了,回到等候厅和kl扯了下,刷了下状态,聊了下面经,如何巧妙回答面试官的提问之类的,然后一两个钟后,边聊变刷状 态,发现已变成“未通过该次面试”,唉,只能叹息了……最后,kl差不多5点40多去hr面,回来后说了下状况,不过听他说的二面情况,感觉他已经表现很 好了,有很大几率拿到offer,果不其然,今天(28号)他收到offer的通知了,祝贺他!:)
唉,一下子扯了那么多废话,个中辛酸也只有自己知道,总结一番,当做回忆和经验吧。
给几点可能有用的建议参考下吧:
- 简历:如果有技术博客的可以写上,csdn、博客园、github等,不过上面要有料;简历上每个点都要突出与你的职位有关,而且都能自圆其说,不要有任何多余的地方;侧重的内容放在前面;
- 整体性针对性去准备面试的岗位相关的技术,和面试官聊的时候,不要显得你学的技术都是皮毛的,如果他这样认为,可以将话题转移到一些看似高大上的技术(但自己要把握住,能圆场),让他感觉你不是停留在皮毛技术上;
- 还有,就是面试时,如果是问到你不擅长的内容,可以将话题引申到你擅长的知识,让面试官觉得你还是有点料的……(这个是技巧活)!
最后,梦想还是要有的,说不定哪天就实现了呢? 好好加油吧!祝大家,校招都能如愿找到份好工作!
by ifanr
2014.9.28