前情回顾

本来学校就是双非,如果再没有些亮点,是很难进大厂的。

我比较幸运,曾在网易实习过一段时间,很感谢这段经历,让我有幸通过腾讯HR们的简历筛选。

对于腾讯春招,其实我是没有参加网申(2.28-3.31)、提前批(2.28-4.1)以及在线笔试(4.5-4.7),我属于常规批(4.13)中的晚期,我记得是4月18日投的简历,一直没动静,等到了5月14日更新了简历后,5月15日安排了当天晚上7点的面试。

腾讯一面

面试官是最守时的,说7点就7点来电。一面刚开始就说明所在部门是微信支付,而且没有用Java,后台全是C++,询问我能不能接受转语言,我表示完全没问题,且不说语言只是工具,C/C++我也是上过专业课的,虽说到现在已经几年没写过C++代码。

还问我打算如何去学习C++语言,我的回答是看书学语法、基本类库,最后学习流行框架。然后继续聊了聊在校期间做过的一些事,包括比赛经历,创办工作室的经历等,又问了问与语言无关的基础知识,最后让我在线做3道题,发给我一个链接,题目包含以面向对象的思想模拟编写签到机程序,UTF-8编码的校验,64匹马8个赛道跑几次能选出前5名。

我做到9点后,面试官给我打来了电话进行一些题目上的询问,就这样,一面终于结束。腾讯一面给我的感受是严谨、认真和细致,涉及的面非常广,基本能把你的情况全部摸个底。

腾讯二面

5月17日,也就是一面结束后的第二天,腾讯发来了二面。二面问了我很多很多的基础知识,包括计算机网络(TCP、HTTP等),操作系统(Linux),尤其是在进程、线程的问题上问了我好久。

最后问了我,你觉得单进程好还是多进程好,说句实话,这个问题把我问懵了,不过幸好我看过一些Redis方面的书籍,想起来Redis的RDB快照是通过fork出一个子进程来进行保存的,如果不这样的话,RDB操作将阻塞主进程,就这样回答了这个提问。

然后面试官又提问了我,你觉得单线程好还是多线程好?我的回答依旧是借用的Redis的例子,单线程如何如何好,多线程如何如何好,究竟用哪个?要看具体的业务需求。问到这里,面试官意识到你小子挺懂Redis的呀,因为我的一个分布式限流项目用到了Redis,于是面试官开始对我进行狂轰滥炸,说一说,Redis如何保证高可用?集群、主从复制,我记得还有个哨兵。回答了这几个关键词面试官并不太满意,我只能硬着头皮解释了下主从复制的流程。

最后面试官问了我一道算法题,典型的海量数据TopK问题,这里就不再叙述。二面结束,面完后感觉差强人意。

腾讯三面

5月19日,微信收到了三面面试官的好友申请,询问得知是复试加面,看到这里我深吸一口气,嗯,好吧,二面表现的确实不算太好。

当时正在坐高铁返校,就礼貌的推迟到下午5点。我是4点多到济南的高铁,下午5点微信面试官打来电话时,我刚从学校附近下了地铁,没办法,就在大马路边面吧,虽然来来往往的都是大学生。

这次面试,重点是聊做的分布式限流项目,这个项目毫无疑问被面试官揪着分布式场景下的一系列问题问,我先是解释了该项目前期的方案是基于Redis做分布式令牌桶,这样不存在令牌数量在多个实例中的不一致问题,但是后来我舍弃了,因为这种做法在主线程中涉及网络请求,网络请求起码是毫秒级吧,对业务的影响太大,于是为了不影响业务,我将分布式限流最大限度的做到本地化。虽然请求不均衡会造成令牌数量的误差,但在实际的系统流控中,是完全可以实行的,并且,做架构本身就是一个取舍的过程。

接着,面试官又给了我一次freestyle的机会,如果让你设计俄罗斯方块,你会怎么做,要具体到详细的每一步。面试官问完这个问题,我的脑海中立马浮现出我弟弟小时候经常抱着5块一个黑白屏游戏机玩俄罗斯方块的场景。我回答说,我会先用面向对象的思想建立实体类,每一种方块一个类型,这里可以考虑是否使用抽象类,其次需要游戏布局,可以考虑二维数组,不断的往下掉方块,当方块到顶后,游戏结束,这时候统计二维数组中的0-1分布情况,得出游戏结果。这个问题真的是想到啥回答啥了,emmmm。还有一些其它的,都是老生常谈的问题,这里不再叙述。三面结束,面完后的感觉,随缘吧。

腾讯HR面

三面结束后,我当天就看到我的面试进度是等待HR面试,开心到爆了。这一等,就等了3天,到5月22号下午4点,我收到了腾讯HR面的通知。腾讯HR面迟到了十分钟,解释是在面其它候选人,让我感觉竞争者还是蛮多的。

HR面问的问题非常多,刚开始就问,拿了不少offer吧,都有哪些。我说拿了百度,不过只能走外包流程就不去了,还有新浪微博,面的是业务部门,一是做的不感兴趣,二是转正希望也不大就没去。为什么不面阿里,我耿直的说我挂了。然后继续问大学的经历,团队比赛,参加工作室,最后还问我的家庭对我的影响。你觉得你的三个优势是什么?体现在哪里等。HR面结束后,我的面试进度是已完成所有面试。

HR面结束后的第二天上午,我就收到了腾讯HR小姐姐的电话,首先告知我已经通过面试拿到offer,然后向我核对我的个人信息。没多久,就收到了offer邮件。

最后的话

说一下自己阿里三连败和腾讯面试的感想。阿里面试我经历了三个部,每一次都是一面二面容易过,可惜每次交叉面都挂掉。阿里交叉面给我的面试感受是“我非常忙,咱们尽快结束”,我的交叉面基本都是不超过20分钟的。

吐槽归吐槽,从客观事实上说,被挂的确是面试官的问题我没有回答上来,这也是可以接受的,你不能指望人家面试官给你降低门槛吧。再说一说腾讯,从上面的面试过程中,相信大家都可以感受到,腾讯面试官是多么的无微不至,每次面试的时间都是在1个小时及以上,HR面也是20-30分钟,这种对候选人进行全面了解再互相对比得出结论的操作我觉得非常对面试者以及对所在公司负责。

其实思考一下也不难想到原因,阿里招聘号称无学历门槛,这就导致出现大量求职者的面试安排,面试官着急结束似乎也无话可说。

如果你想要继续了解我,欢迎关注我的微信公众号“codekn”。

这个五月,我拿到了腾讯暑期offer的更多相关文章

  1. 拿到腾讯实习offer的前后小事

    一.前言 本文应该算不上是面经,仅仅是自己近期一路走过的些许琐碎小事,欢迎园友吐槽,但是不要太凶残哦. 二.旧年小事 去年11月底,从上海实习公司请假回校参加研究生毕业论文开题答辩,在校忙碌了一段时间 ...

  2. 2015腾讯暑期实习生 Web前端开发 面试经历

    [2015腾讯暑期实习生 Web前端开发 面试经历] 好吧,首先声明,我被刷了,应该是跪在二面 微信查到的面试状态一直呈现复试中 .. 整整四天了.. 看来是没希望了 不过也是一次经历,记录一下还是可 ...

  3. 杂记:腾讯暑期实习 Web 后端开发面试经历

    今天面试(一面)腾讯暑期实习 Web 后端开发,一言难尽. 第一部分,常规的自我介绍. 介绍完,面试官问我对人工智能有什么理解?深度学习和机器学习的区别?对调参有什么见解?语音识别中怎样运用了机器学习 ...

  4. 2019腾讯暑期实习面试(offer)前端

    最近在忙着准备找实习,所以没有更新之前的文章. 不过所幸功夫不负有心人,我拿到了腾讯的offer. 这里分享一下面试的经验. 简介 本人双非本科,普通学生一枚. 面的是腾讯的Web前端开发. 整个面试 ...

  5. 大学毕业时成都SAP和深圳腾讯的Offer,我是怎么选择的

    2006年校园招聘,我拿到了SAP成都研究院和深圳腾讯的offer,而我最后选择了前者. 当时我主要是基于以下四点考虑. SAP成都有最优秀的人才 2006年SAP成都研究院刚刚成立,对人才的挑选非常 ...

  6. 我的阿里、腾讯暑期实习Offer经历

    三四月份对我拿来说是个忙碌的两个月,实验室项目到了关键的时刻,自己又需要抽身去找暑期实习,总之过得很快.值得欣慰的是幸运的拿到了阿里和腾讯的暑期实习offer,也算是对三四月份的忙碌一些回报吧.阿里的 ...

  7. 腾讯暑期 前后七面 + hr(已拿offer面经)

    以下是时间线 魔方 魔术师工作室 3.19 一面(120mins) c++ struct和union区别? 指针和引用的区别? 左值和右值? 字节对齐的作用? 什么情况下需要自定义new? mallo ...

  8. 2015腾讯暑期实习生 Web前端开发 面试经历 --作者imwtr

    1.现在有100亿个数字大小为1到10亿的数字,在这100亿个数字里边只有一个数字出现的次数是奇数次的,你用什么方法,找出这个数字呢? 答:显然至少要全部过一遍,可以用位运算,遍历数组,最后剩下的数字 ...

  9. 二本学生拿到腾讯大厂offer的成长记录

    本人迈莫,是在20年以春招实习生的身份进入鹅厂,经过重重波折,最终成为鹅仔一份子.接下来我会以我亲生经历为例,分享一下普通大学的学生也是可以进去大厂,拭目以待!!! 初入大学 惨遭毒打 时间倒回到17 ...

随机推荐

  1. Spring Boot中使用RabbitMQ

    很久没有写Spring Boot的内容了,正好最近在写Spring Cloud Bus的内容,因为内容会有一些相关性,所以先补一篇关于AMQP的整合. Message Broker与AMQP简介 Me ...

  2. css中的特殊居中

    大图居中: 先看一下普通的居中: 代码为: <!DOCTYPE html> <html lang="en"> <head> <meta c ...

  3. vue 给嵌套的iframe子页面传数据 postMessage

    Vue组件下嵌套了一个不同域下的子页面,iframe子页面不能直接获取到父页面的数据,即使数据存在localStorage中,子页面一样是获取不到的,所以只好使用postMessage传数据: < ...

  4. 在VirtualBox中安装CentOS 7【转载】

    当初接触Linux的时候,因为条件限制,只能在VirtualBox虚拟机中安装Linux系统使用,由于是小白,爬了好多坑.于是决定写一篇关于在虚拟机中安装linux系统的文章.一是为了巩固自己的知识, ...

  5. Java探索之旅(14)——文本I/O与读写

    1文件类File    ❶封装文件或路径的属性.不包括创建和读写文件操作.File实例并不会实际创建文件.不论文件存在与否,可以创建任意文件名的实例.两种实例创建方式如下:               ...

  6. df查看分区使用情况

    Linux df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计.语法 df [选项]... [FILE]...     -a, --all 包含所有的具有 0 Blocks 的文件系统 ...

  7. tcpdump网络数据抓包

    tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中传送的数据包的“头”完全截获下来提供 ...

  8. Ganglia 安装 for centos6.5

    环境: centos6.5x64 ,cdh5.1.0 三个节点: c1:gmeta gmond(gmeta类似于namenode,gmond 相当于datanode)主节点 c2: gmond (相当 ...

  9. 卡特兰数&错排&一个一直记不住的公式

    卡特兰数 公式:f(x)=f(2)*f(x-1)+f(3)*f(x-2)+......+f(x-1)*f(2) #include<iostream>#include<cstdlib& ...

  10. redis系列:通过共同好友案例学习set命令

    前言 这一篇文章将讲述Redis中的set类型命令,同样也是通过demo来讲述,其他部分这里就不在赘述了. 项目Github地址:https://github.com/rainbowda/learnW ...