【个人总结】2020腾讯后台开发面试经历

前几天看到有学姐提供鹅厂的内推机会,正好我很希望有机会暑假能感受一下大厂的氛围以及学点东西,帮助自己以后更好地规划便投了简历。
拿到内推在官网确认后的第二天上午接到了面试时间预约,本来想再推迟一下给自己多点准备的时间,因为这次确实是第一次正式的实习面试,经验也不怎么丰富。但是看了看系统提示推迟可能会因为招满人而不一定有面试机会,想了想还是算了,感觉复习多个半天一天的可能也不会有太大变化。便接受了邀请开始用最后的几个小时复习。
在网上看了很多相关的面经,加上咨询学长,感觉鹅厂C++确实问的比较多,然后这个岗位对计网、操作系统、数据结构与算法、数据库、并行计算这些内容也会有涉及。便在网上看了很多面试题,但是因为确实太多了,没法每个都吃透,最后都记得非常浅显。
准备好自我介绍后研究了一下自己的简历,想了想可能的问题快到了时间便去面试了。
一面是视频面试,牛客网的平台还能够现场做编程题。到了时间面试官邀请我开启视频面试,并让我直接做自我介绍。后来想想确实多少有点紧张,介绍的很快生怕说的时间长了被打断,而且感觉自己自我介绍也组织的不怎么好,面试官也没有针对自我介绍问一些问题。然后就是笔记本麦克风据他说回声很大,让我用耳机了,幸好提前有准备。
自我介绍后面试官也介绍了一下他所在的部门。我发现问虽然意向是北京CSIG事业群但是简历被深圳总部IEG事业群的天美工作室捞起来了,也是有点意外,莫非是我王者荣耀打的太多被发现了?当然面试官也提前问了我能否接受。面试官一上来就问了问我以后有没有读研打算,本来以为会最后问这类问题。让我给自己熟悉的编程语言排个序,Java虽然更熟一些但最近没怎么用,而且在用C++刷点LeetCode,所以就说Java和C++都差不多,Python相对写的少一点,其实Python上学期因为专业课用的也不少,选择恐惧症就有点犯了。说实话还是没有特别精通的语言吧,都半斤八两的。
了解了基本情况后面试官先让我做了一道编程题。果然,鹅厂还是喜欢C++。题目是让我写一个void memcpy(const void* pSrc, void * pDest, size_t length),本来以为是LeetCode上那种用个STL就能做的,没想到是这种类型的。说实话malloc都很久没用的我马上就慌了。而且面试官还让我尽快写一下并且保证安全性勉强写了写发现各种问题,首先网页写代码代码提示就不怎么有,好几个变量名写错了各种报错,然后指针发现也不会用了,也是各种报错。面试官好像去做别的了,让我写好了通知他一下。我开始自信的找他说写好了时候他让我跑一下,结果我发现出了很多问题,就让我先解决编译问题再找他。然后花了很久,各种编译错误,提交了得十几次。尝试了各种方法,但总是有问题,花了很久很久的时间。这个时候我就意识到自己基本要凉了。C++水平确实垃圾,感觉也不是特别复杂的问题。
最后勉强跑起来但是也有错误,面试官除此之外又在安全性上提出了很多问题,比如两块内存可能会有交叉,我发现自己写的就是屎。这个时候我的心已经基本凉了,觉得面试应该快结束了。
然后面试官开始问问题,问的确实比较多,总共感觉十几个问题应该有了,感觉是在快速的摸底,看你基础知识是否扎实。但是并没有从简历上提问,准备的很多东西也没有用上。问的题目说实话多看点网上的面经大多数都见过或者是类似的,没有特别怪,要怪就怪我准备的不好吧。
问题集中在C++机制比如函数调用与一些底层实现比如多态性的底层实现,而不是问用法,还有STL的底层实现等等,总的来说对于面试鹅厂C++就要做到能熟练地写出代码无论是LeetCode那种感觉还是自己去实现一些简单的轮子,指针啥的肯定要数熟练了。然后就是基本的数据结构与算法,尤其是排序算法,必须熟练,很快的写出来还不能错,这算是基础吧。至于网络编程对于这个岗位我觉得也会有,可惜我前面几关都没过面试官估计也不屑于问了。select和epoll也问了,这个很多面经都有,但我记的不怎么具体,感觉也废了。我好几次尝试把话题引到我的一个项目上,用Java写的后台,但是面试官一点也不想问相关的问题,无论是Java设计模式还是Spring MVC,不过这些我准备的也不咋样。阿里用Java比较多,这方面的问题就很多,去年面过一个阿里的电话面试,当时一点也没准备,直接被问懵了。
然后就是计网的问题,TCP的各种机制,包括连接、断开、拥塞控制,流量控制倒是没问。我印象很深的一个问题,三次握手中的ACK和Seq能否拆成两个发,我真的说不上来,交流了半天我也没弄明白。总的来说大部分还是在《计算机网络》课程内的,极少的问题比较有挑战性,所以说基础还是很重要啊。而且面经里很多问题都能对上,看来一般也都会这些问题。
然后数据库也想问,但是我提到这学期刚开这门课但项目里用过MySQL,不提他也没提问题。前两天还在看redis,但是没敢说了解,因为感觉很容易被问住。
操作系统方面应该也问了几个问题,好多我都不记得了,应该是有线程和进程的区别,问的比重没有计网大。其实这时候我觉得面试早该结束了,因为我答的实在太差了,很多不会的就直接说了,确实编也编的语无伦次的,但是面试官还是很好的,感觉还是把准备的问题基本都问了一遍。记得去年阿里的电话面试,一个也是听说我次年不毕业,然后就是一问三不知啥也不会,但是确实没准备电话也很突然,问了几个就让我等结果了,果不其然官网显示失败了。
数据结构与算法上的问题是有的,比如问我排序了解哪些,包括排序的复杂度以及稳定性,都是比较基础的东西。然后让我写了个快排,怪我当时学的确实不深入,只是记住了基本流程。写的过程出了很多错,让我用短时间写完但我又写了很久,之前那个内存拷贝的让我两分钟写完,我得写了20分钟。最后勉强弄出来了快排,这个确实有准备但真的不熟,面试官让我讲一下原理,我只是把代码翻译了一遍,真想找个洞钻进去。以后再面试,这种东西一定要准备的特别熟练,都是基础,不存在项目与实践方面的问题。
并发和负载均衡我特意准备了一下,不过也没问。问了我平常读哪些书以及有github吗,github上有什么项目。
后来问了问我学习成绩以及在班中的排名,我基本就如是说了。再就是我的职业规划,这个我也没准备答的也不咋样,心里慌说话真的很难控制,但也没办法。还有问了我个问题,井盖为什么是圆的不是方的,真没想到会有这种问题,我仍然很懵啊,瞎答了一通,最后也没法自圆其说了,现在想想角度就多了很多,当时也是不自觉的有点紧张。
最后问了问我想问他什么,我就说怎么提高自己的水平从只会用到得知原理。他讲了一下并且提到工业级应用对安全性要求是很高的,等等,后来再让我问问题我就说没问题了,想想自己也是傻,过不了有机会能和腾讯工程师聊聊也不错啊。主要是当时自己不会的太多实在有些尴尬,想尽快结束面试了,因为结果自己心里也有数了。
面试然后就结束了,总结一下自我介绍,然后职业规划和以后的打算,学习成绩,两道编程题,十几道专业知识的题和一道类似脑筋急转弯的题。问了其实也没有特别专业特别难的,可能对作为本科生的我也有所照顾。总的来说这次面试虽然体验很差,但也是第一次缺少经验,加上基础知识准备的不好。被拒也很正常了,人家要的是能帮他们挣钱的技术专家,又不是连个快排都写不利索的菜鸡,还是没有达到人家的标准吧。不过至少了解了面试一般的流程和常见的问题,包括需要具备什么样的能力,以后再去准备也有方向了。收获还是不小的,就是有点尴尬。面试官还是很有耐心的,也没有因为答的不好缩减问题。最后一共得面了一个多小时,主要是我写代码浪费时间太长,很感谢面试官抽出这么长时间面我。总结下经验过一阵再针对性准备一下,鹅厂挂了再投别的厂哈哈哈。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值