2020年已经接近尾声了,跳槽的季节又来了,刚好,最近有好几个读者拿到了腾讯、阿里大厂的offer,在我厚颜无耻的追问之下,他们终于给我透露出了面试题的细节,这份热乎乎、滚滚烫的面经分享给大家,希望对大家有所帮助。

bigo面试

第一位读者经过1个多月的刷题、看书,成功拿下bigo和腾讯的offer,这位读者之前也是985高材生,但是一直在小公司,之前和我聊了聊,透露出想去大厂的想法,这不,还是挺简单的嘛,一把就过了,成功斩获bigo、腾讯offer。

bigo一面

第一面的话,我觉得比较基础,都是针对Java、SQL基础的一些问题,然后扩展了一下对JVM对应到生产上的使用、调优经验,看是不是真的做过、解决过问题,要有思路。

内存泄露怎么分析?怎么知道整条内存泄露的链路?

一般方法,jmap dump出转储文件,然后通过MAT等一些工具来做具体的分析。

用的什么垃圾收集器?GC一次多久?线上多久一次Full GC?

垃圾收集器比较简单,背背书就可以了,然后GC的频率这个就是根据现在公司的场景举例子说明。

怎么进行JVM调优?

说了一点JVM调优的参数,使用之类,然后结合线上的一次问题回答了怎么发现问题,最终调整JVM参数解决问题的过程。

项目里有用过ConcurrentHashMap吗?ConcurrentHashMap底层结构有了解吗?

这个八股文看书就行了,分段锁到CAS+synchronized改变,get、put、resize过程。

你知道JDK7和8之间的区别吗

说了下Stream API使用、lambda表达式,HashMap头插尾插的改变,ConcurrentHashMap实现方式的变化。

用过Stream吗,讲讲

就根据平时使用说就好了,比较简单。

sql优化的经历

也比较简单,平时用到的一些慢SQL优化的经历说下就行了,但是平时要有总结,不然的话就会东一棒槌西一棒槌。

算法,链表相加

通用答案,用刷题大法。

bigo二面

二面会偏中间件一点,考察了项目的细节,会被问的很细,然后其他的问题都是看看书就知道了,虽然都不难,但是还是要多看书、多总结才行。

深挖项目

项目一定要准备好,每个细节的点,有问题的地方要自己多思考,不然被问到了回答不了就很尴尬。

讲讲ES,ES文档数据太多了怎么办?

基本上把ES的所有点都讲了一遍,就差不多OK了,因为我做的搜索业务,所以这块的问题比较多。

RocketMQ集群的原理,消息堆积怎么办,推拉模式优劣?

也是看书就行的,堆积的解决方案可以看我的MQ文章系列。

说下Raft协议?

也就说说主要工作原理,Leader选举、日志复制这些。

分布式ID的设计方案?

很多,雪花算法,国内美团、滴滴、百度开源的记得一两个就可以了,然后找一个说说实现的原理。

比较简单的一个算法题,印象不是很清晰了,但是依稀记得是考并发工具包的设计

bigo三面

三面一上来其实还是问项目,扣细节,这一面是技术的终面了,可能是老板面,所以没有很多的技术上的难题,针对的还是个人思维方式,平时解决问题的想法和思路。

Redis集群的特性,分布式锁的设计?

这个一般也没什么好说的,该背书就背书,分布式锁也是老生常谈的问题了。

问了项目架构,项目难点

再次被扣细节,平时要理解深刻。

算法是二分法的一个变形题,也不算难

bigo面试总结

面试难度总体来说一般,都是在网上能看得到的问题,但是必须都要会,比较顺利的拿下offer。

腾讯面试

因为读者已经先拿了bigo的offer,接下来腾讯的面试也算是更有信心了,至少有一个offer打底。不过腾讯一面问的非常广泛,提问速度也很快,如果讲的明白的话,立刻就开始下一个问题... ...

腾讯一面

HTTP/HTTPS,网络安全问题?

说了说他们的区别,Https通信的机制,证书、密钥保证安全一些东西。

volatile和synchronize的区别?

八股文,背!

JAVA内存模型?

JMM一套规则,工作内存、主内存,原子性、可见性、有序性,happens-before等等都说了。

Redis分布式锁?

这个挺简单的,大家都会的,另外还要说下和zookeeper实现方式的一些区别,实际应用的过程。

Innodb讲讲?

把知道的都说出来就好了,行锁啊,MVCC,外键,一致性读一些东西。

ZAB讲讲?

就说整个ZAB协议的过程,选举、发现、同步、广播的流程。

怎么分库分表?

这个其实还是需要点经验的,没有对应到数量级的项目的话可能还是靠背书了,参考我的分库分表文章。

怎么自己实现IOC?

如果自己看过实现,这个就比较简单。

用过哪些设计模式,讲讲?

举例一些常见的模式,平时怎么使用的说说就行了。

怎么判断一个链表是不是有环?

刷题就好了。

一面的内容非常多,后面Kafka,Redis,Zookeeper,ES,计算机网络都有被问到,有一些回答的不是很好,不过还是过了。

腾讯二面

这一面比上一面还是好一点吧,没有那么多问题,感觉上比一面还稍微容易一点,还有一些简单的问题有点回忆不上了,项目的问题,我已经很熟了。

自我介绍?

自我介绍要准备好,不要太长也不要太短,几句话说明自己的职业生涯的情况,重点的项目,用到的技能点概括进去就行。

深挖项目,问了下商品表的设计,项目有什么亮点,或者认为有什么缺陷,怎么改进,并发有多少等等?

还是项目,深挖,没什么好说的了。

ES讲了个遍,包括基础原理和优化?

又重新说了一遍。

分布式ID的生成方式?

还是老问题。

再次聊了下项目,还有分布式事务相关知识,保证数据一致性?

也是老生常谈题,面试必问。两阶段、三阶段提交,TCC方案,还有强一致性、最终一致性等等。

为什么要用框架做分布式,没有行不行?

这种开放性的问题,说自己的思路就行了。举例子说明比如Dubbo这种框架解决了什么问题,如服务治理、服务编排、降级等。

腾讯总结

腾讯的面试相比bigo更加全面,更多的考察的是中间件的原理和使用,还有就是分布式系统下的一些常规的解决方案,平时这些知识点都碰到过,但是要多总结。感觉下来,整体难度也是一般。

附赠快手

读者非常优秀,临到采访结束之际,还要附送我一轮快手面试,只能勉为其难收入囊中。

数据库连接不上了,怎么排查?

还是看思路的问题,思考比如网络是否正常,数据库服务是否正常、权限等因素。

双亲委派模型,有什么好处?

说下原理,好处说了下安全、避免重复加载之类。

ThreadLocal讲讲?

看过知道就能说上来。

一次接口调用,在日志文件里打印”kuaishou ”+耗时,比如“kuaishou 20ms”,"kuaishou 50ms", "kuaishou 100ms",有十万条,用linux的命令怎么查出来耗时最短的十条?

这个不知道,然后面试官还一直硬要我手写出来... ...

安装了一个软件,怎么在linux找到他的路径?

我说了whereis。

怎么查看jvm里线程状态?

jstack进程ID就可以了。

CountDownLatch和CyclicBarrier有什么区别?

这个看过就知道了,具体可以看我的文章有写道。

jps -m ,jps -l 用过吗?

-m可以输出主函数的传参,-l可以输出完整包名。

讲一下Spring事务底层是怎么实现的?

这个问题也要看过源码,AOP动态代理实现。

算法题:树的镜像,不能用递归写。

还是那句话,刷题完事儿。

快手总结

快手的问题,嗯... 比较奇怪,然后没有什么太大问题...一轮游了。

总结

总结下来,也基本都是常考的知识点,知道的话基本都没有太大的问题,还要有生产中实际解决的经验,考虑解决问题的思路,这位读者bigo和腾讯的基本都全部回答上了,就是最后快手的这个fail-fast了。

如果快手一面你来,会不会挂?

特别推荐一个分享架构+算法的优质内容,还没关注的小伙伴,可以长按关注一下:

长按订阅更多精彩▼如有收获,点个在看,诚挚感谢

苦修月余,斩获bigo、腾讯offer,面经奉上!相关推荐

  1. 拿到腾讯 offer 的第二天,我从字节跳动离职了

    最近认识了一位后浪,尽管是双非本科却依然拿到了腾讯.字节的高评级offer,人称菜饼,今天给大家带来他的成长经历,文末有二维码,读完觉得文章质量不错的话,可以关注下哦~ "我觉得问题不在于字 ...

  2. 32岁坚持裸辞背负房贷1w4,被阿里面试官狂虐,沉淀3个月拿到腾讯offer年薪40w+!

    我的情况 是的,我工作五年了,在互联网某血汗厂. 上周和组长提了裸辞,组长拉着我聊了两个小时,希望我还是考虑考虑,建议我不要裸辞,多想想工作的意义之类的.现在的情况就是,那次谈话之后的一周,组长没给我 ...

  3. 送你一个励志故事—掌握这些你也可能拿到腾讯offer

    作者:守望者1028来源:牛客网 终于有时间来回馈牛客了,接下来将继续我的学习历程(keep learning).我的秋招故事很长很长,期间无穷多的心酸与苦难,当然也不乏兴奋与惊喜. 写在这里,是对自 ...

  4. 普通人的2022春招总结(阿里、腾讯offer)

    推荐语 : 牛客网热帖,写的很全面!暑期实习,投了阿里.腾讯.字节,拿到了阿里和腾讯的 offer. 原文地址: https://www.nowcoder.com/discuss/640519 下篇 ...

  5. 2021工资翻倍指南:Android面经,历时一个半月,斩获3个大厂offer

    历时一个半月,斩获3个大厂offer(京东.新浪.滴滴),这里进行下简单的总结,希望能帮助到大家. 总体来说,面试一般都是基于你的简历来进行的,一般先考察你的基础,然后考察你知识体系的完备程度,接着会 ...

  6. 万字篇:2020Android面经,历时一个半月,斩获3个大厂offer(京东、新浪、滴滴)

    原文链接:https://juejin.cn/post/6905226221357891592#heading-14 作者:tinyvampirepudge 好文推荐:文章看完很有感触,希望大家能多多 ...

  7. 2021Android面经,历时一个半月,斩获3个大厂offer

    历时一个半月,斩获3个大厂offer(京东.新浪.滴滴),这里进行下简单的总结,希望能帮助到大家. 总体来说,面试一般都是基于你的简历来进行的,一般先考察你的基础,然后考察你知识体系的完备程度,接着会 ...

  8. 2020Android面经,历时一个半月,斩获3个大厂offer

    历时一个半月,斩获3个大厂offer(京东.新浪.滴滴),这里进行下简单的总结,希望能帮助到大家. 总体来说,面试一般都是基于你的简历来进行的,一般先考察你的基础,然后考察你知识体系的完备程度,接着会 ...

  9. 4 轮拿下腾讯 Offer (附真题)

    要说前端老码农们挤破头也要进大厂,你可能见怪不怪. 但看到未毕业的大学生都已经在"备考"大厂,老码农们,该醒醒了! 竞争激烈,但动不动就 16薪,18薪的年终奖,更别说股票,期权和 ...

最新文章

  1. java程序实现按并发数收费_java-实战java高并发程序设计-ch3JDK并发包
  2. 内存泄露调试工具visualleakdetector使用方法
  3. 【译】表变量和临时表的比较
  4. 光辉之章事件有哪些常规操作?天谕手游事后的补偿真的很安慰?
  5. SpringBoot整合分布式消息平台Pulsar
  6. CSS3中的动画效果记录
  7. socket 客户端-服务器的创建--day28
  8. 树莓派raspberrypi系统安装docker以及编译nginx和php镜像
  9. LCD/LED驱动芯片(IC)/触摸IC资料汇总,仅供大家选型参考
  10. LINUX下载安装CUDA
  11. codeforces每日5题(均1500)-第二十二天
  12. 【推】如果看了这篇文章你还不懂傅里叶变换,那就过来掐死我吧
  13. linux 怎么格式化u盘写保护,u盘写保护怎么去掉
  14. base64加密后字符串自动换行问题
  15. js、Java的url参数转码(url里中文、特殊符号参数转码)
  16. 搜狗收录提交入口之搜狗泛目录实现
  17. 让孩子更快乐地学编程,一套积木就够了,长毛象AI百变编程积木套件体验
  18. 浅谈微信AI在通用图像搜索领域的探索
  19. windows批处理学习
  20. [转]Windows Shell 编程 第七章

热门文章

  1. 单片机一个月能入门么?单片机工程师能干到多少岁?
  2. oracle rac应急_Support for Oracle RAC 框架资源组故障
  3. SQLAlchemy实现插入数据(使用前端页面)
  4. PTA团体程序设计天梯赛-L2-010 排座位
  5. P4113 [HEOI2012]采花 树状数组离线
  6. android dump 完整so,Android dump .so 文件crash log
  7. python格式化字符串_Python的3种字符串格式化方法,哪种你最喜欢?
  8. 山西计算机软考知识点,计算机软考考试必备知识点:数据标准化
  9. mysql8.0_grant改变-You are not allowed to create a user with GRANT
  10. 波士顿大学计算机科学硕士申请要求,波士顿大学计算机信息系统理学硕士研究生申请要求及申请材料要求清单...