腾讯后台一面挂掉——菜鸟的一次惨痛面试经验

本来感觉面试发挥一般,后来仔细想想发挥简直屎到爆!

自我介绍

唯一吸引面试官注意的部分是说自己有个人博客,但面试官看了博客后也没有什么反应,说明博客并不突出,不是加分项。

个人介绍中没有突出自己技术优势,过于注重于一些无关的经历了,面试官兴趣不大!

项目部分

项目中遇到的难点?

重新设计 E-R 模型 —— 问了数据库一个简单的查询例子(找出姓张的用户,like 查询,挂掉),还有 DB 的第二范式、第三范式,挂掉。

有一些小问题,比如添加翻译文件,编译不成功,不断去 Google 的痛苦过程(给人感觉错误太low,无脑Google类型)。

项目有什么改进的地方?

说是添加一个缓存机制,加快访问速度。但又不知道有什么缓存解决方案,只是想法,没有价值。(中规中矩,没有价值的思考)

算法部分

100 亿个数字中找出最大的 1000 个,提醒数据非常多,放不进内存。(算是比较老的一个题目)

简单思考了一下,考虑用 BitMap,可以将数据放进内存。面试官提示,里面数字可能非常大,BitMap 会很稀疏,仍然放不进内存。然后又提示用哪种数据结构,可以实现每次插入一个数字,取出最大的。想到用堆,接着被问到用什么堆实现,我说用最大堆,然后面试官让我再仔细想想。(面试官不是很满意)

用小顶堆,首先读入前1000个数字,调整好堆。然后每次读入一个数,和堆顶比较,如果堆顶大,那么丢弃该数字,否则,弹出堆顶,将新的数入堆,调整堆结构。

最喜欢哪一个排序算法,为什么?算法实现的时间复杂度?

回答说是快排,然后时间复杂度平均 O(nlogn),最差O(n2 )。实现的话就是一个 partition 和递归快速排序。

C++ 语言部分

你觉得 C++ 语言怎么样?

没有系统的回答,只是浅显地说了自己的感觉,面试官没有继续交流下去。

你最喜欢 C++ 哪部分?

说是指针,然后简单说了下指针的好处,同时又说自己怕使用指针,怕内存泄漏。面试官笑而不语!

C++ 如果要改进,有什么改进地方?

回答增加内存自动回收机制,感觉回答太过浅显,不够深入。接着面试官问了解过C++ 11中的智能指针(实现了智能内存回收)了没?回答没有,然后就问对 C++ 11标准了解多少,回答了解的不多,就用过简单的类似 auto类型推导关键字。面试官即兴问了一下,auto 的实现是在编译期还是运行期,思考了一下猜测说是运行期(挂掉)。面试官耐心地给我说运行期间内存里面全部只是地址值,没法判断类型的,编译期就会明确对象的类型。

C++ STL 了解多少?

看过部分源码,知道容器的实现。然后要我介绍一个最熟悉的容器,我选了 vector,但是介绍的有点乱(面试官估计也没怎么听)。问到为什么地址是以 2 倍增加,而不是 1.5 倍增加,或者 3 倍增减,我回答2倍便于操作,因为可以用移位实现 * 2(其实不是很对,面试官没有点评)。

这部分问我看了 STL 的哪部分源码,自己回答地太缺乏自信了,没有加分,反而给人不自信的感觉!

如果程序中遇到错误,一般怎么做?

回答说遇见错误就 Google 和在 cplusplus.com 上查看函数说明,后来又补充说逻辑错误一般慢慢改逻辑,其它函数错误就可以在 cplusplus.com 上面看函数使用。(挂掉挂掉挂掉) 回答前完全没有搞清楚面试官想问的是什么,后来想想应该问的是如何调试程序啊,至少可以扯 GDB 之类的调试方法!

网络部分

TCP、UDP 区别?

TCP 面相连接、可靠的字节流服务,UDP 无连接,不可靠;TCP 有拥塞控制、流量控制机制,UDP 没有,TCP 必须校验,UDP 可选。然后又问如何保证可靠,回答通过Seq和 Ack 来确认是否丢包,丢包的话重传。

TCP 三次握手,流量控制,拥塞控制?

三次握手画了一个图,看了没问题,然后问到流量控制,拥塞控制,说了一下大致的目的以及原理(这一块自己搞的很清楚,但面试时只是浅尝辄止,没有说详细),面试官也没有什么问题。

Socket 编程搞过吗?

以前搞过,忘的差不多了。然后就问 socket 写一个服务器的简单流程,回答首先创建 socket 套接字,然后 listen ,面试官提醒有没有少了什么,一时没有想起来,最后提醒 bind。(跪掉)接着自己又少掉了 accept(跪掉),后面说 read 和 write,面试官根本就不感兴趣,这一块能力已经被否定了!(跪掉)

select,epoll 区别?

回答自己没有用过,不过了解过一点点,然后就简单说了 select 基于轮训,epoll 基于回调机制。面试官不满意!

经验教训

  1. 自己真的很菜,基础不牢固,犯了很多致命错误,能过面试才怪呢!
  2. 回答的时候没有想清楚面试官到底要问什么,过于急地给出一个欠思考的答案!
  3. 整个面试中没有给出一个让面试官感到耳目一新,眼前一亮的答案。也就是说,没有自己的核心竞争力!
  4. 项目部分准备不充分,面试官问了几个简单的 DB 问题,都没有得到满意的答案。
  5. 个人介绍部分没有突出自己的特点,面试官兴趣不大!
  6. 面试官不断换问题,就说明自己危险了,很可能是觉得你上面的回答很差,想换个领域看看你还有没有救!所以,不断听到ok,下一个问题,那么很可能会挂掉。
  7. 面试挂了也没什么,能认清自己就好,找到薄弱点,思考对策,争取校招时不再犯同样的错误!
全部评论
是的 你总结的很好 尤其是 “回答的时候没有想清楚面试官到底要问什么,过于急地给出一个欠思考的答案!” 其实说到底就是想着自己发挥,没有考虑对方需求,这也是我这次的问题所在。
点赞 回复 分享
发布于 2016-04-11 12:26
菜不可怕,可怕的是不敢直面。继续准备,加油
2 回复 分享
发布于 2016-04-11 15:03
事后感觉没发挥好的事情:面试
点赞 回复 分享
发布于 2016-04-11 12:59
楼主心态很棒,共勉,加油!!!
点赞 回复 分享
发布于 2016-04-11 14:42
确实面试官问的问题不难,楼主继续加油吧^_^
点赞 回复 分享
发布于 2016-04-11 12:21
请问怎么知道自己面试挂了没有哇?
点赞 回复 分享
发布于 2018-03-23 01:07
楼主是第一次现场面吗?感觉有点紧张
点赞 回复 分享
发布于 2016-04-11 17:17
继续加油~总结很好,感谢分享
点赞 回复 分享
发布于 2016-04-11 16:07
活捉赵老师
点赞 回复 分享
发布于 2016-04-11 15:57
我擦,活抓赵老师
点赞 回复 分享
发布于 2016-04-11 14:15
感觉楼主遇到的问题和我好像。。 不会是同一个面试官吧,哈。
点赞 回复 分享
发布于 2016-04-11 14:11
我也是,每次卡住了,面试官就说我问你另一个问题吧,然后就挂了,还是太渣,自己项目都好多不明白,或者做的不好
点赞 回复 分享
发布于 2016-04-11 14:10
能过笔试已经很了不起了
点赞 回复 分享
发布于 2016-04-11 13:58
结合其他 两个面经,我猜楼主是小本
点赞 回复 分享
发布于 2016-04-11 12:59
楼主硕士吗?
点赞 回复 分享
发布于 2016-04-11 12:56

相关推荐

爱吃肉的伊登在写日记:好棒,27届简历能做成这个样子,但是第一个项目感觉cover住难度还是不小的,特别是二面的时候肯定要对分布式系统设计这一块儿有高出正常面试者的水平才行
点赞 评论 收藏
分享
04-11 00:51
已编辑
门头沟学院 Java
先说一下楼主的情况:双非本大三,两段实习,javaer,想要找一个暑期大厂offer,努力了两个月,三月份每天的状态就是算法,八股,项目,四月份更是一个面试没有,最终还是没有结果,心碎了一地。期间面了一些中小厂,大厂只有腾讯约面,其他大厂都投了一遍,但是还是石沉大海。再看一下楼主的面试结果吧,就不说ttl了腾讯s3:三面挂csig:一面挂teg:三面挂wxg:一面挂没错,面了八次腾讯,两次三面挂,当时真的心都碎了。其他中小厂都有面,有的没过,有的oc,但是都没有去。其他大厂投了简历,但是不是简历挂,就是测评挂,都说今年行情好很多,各大厂都扩招,可是问题出在那里呢?学历背景吗?实习经历吗?还是简历不够好看?依稀记得,从年初七就离开了家里,回到学校,早早准备面试,当时自己认为凭借着自己的两段实习经历,以及大二就开始准备的八股算法,拿大厂offer不是问题,但是还是不敢放松,回校的状态每天就是算法,八股,还有查看各种招聘信息,想着尽早投机会多,但是事实证明,投的早,不如投的刚刚好。当时想着,先投一些中小厂开始面试,找找面试感觉,从2.10就开始有面试了,基本都是线下面试,面试的感觉都很不错,觉得自己的状态慢慢回来了,期间也有oc一些中小厂,但是自己的目标并不在此,只是想练一下手,遂拒。后面投了腾讯的暑期实习基地,不久就约面了,第一次面这么大的厂,多少有点紧张,好在运气还不错,遇到的面试官也比较好,一直干到了三面,期间看牛客有不少说一面就挂了的,感觉自己还是比较幸运的,但是没想到倒在了三面,一周后就挂了,伤心是有的,但是想到这才刚刚开始,还有很多机会,便继续准备下一次面试了,很快,被另外一个部门捞了,一进会议,面试官没开摄像头,看网上说没开摄像头很多都是kpi,但是自己给自己打气,认为面试官只是不方便开摄像头罢了,面完,感觉良好,没问什么很难得问题,基本都答出来了,算法两道也a了一道,感觉实习不会这么严格吧?还是过了一会挂了,因为这个?还是技术不太匹配?面试过程中说搞C++的,心想,搞c++的你面我干啥?唉,这时候有点气馁,然后就接下来半个月没有面试。这时已经是三月底了,看到牛客好多人都已经陆陆续续拿到了offer,看人家的面试准备也没那么早,有0实习的,有没刷算法的,有两个面的,,,唉,反正是一言难尽啊,感觉努力没有什么意义,面试多半是看面试官的感觉,主观性很大啊,只要你技术没有太大的问题。第三次面试腾讯,面试来的比较突然,期间已经有几天没看八股什么的了,临时看了一下之前自己做的面试笔记,但是面试却异常顺利,三天闯到了三面,自己也不敢相信,三面玩感觉也良好,脑子里不得不想着一些“offer结算画面”,但是过了一会查看流程显示“流程终止”,我?哎,当时真的有苦说不出啊,也是一晚没睡。后面就逐渐开始褪去大厂梦了,看着曾经跟自己交流的牛油,朋友,认识的人,觉得他们技术不太如你,算法刷的没你多,进了大厂,但是这又如何呢?能力强不强不是你了说了,面试官说了算。也逐渐知道,不是你能力好就可以了,还得有运气,运气,运气。这个过程太累了,和自己和解吧,不用非得大厂,找个合适一点的就好,放轻松一点。今天有点心事睡不着,闲着想写一些自己的面试过程,勿喷。附上一张面试的情况,公司就不方便透露了。
怒卷的斯科特:八分运气两分实力
点赞 评论 收藏
分享
评论
15
101
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务