前言
六月份,身边朋友跟我分享面试字节跳动和腾讯的经历,抽空整理成博文与大家分享一下。
个人背景介绍
双非本科,之前有幸内推通过之后去了百度实习了一段时间,面试前一定记得多刷面试题、面经!!!
腾讯
一面(支付)
1.jqc的介绍
2.如何确保多台机器不会重复消费
3.如何确保消费了反馈失效问题(用事务管理,先储存再消费,失败就回滚)
4.如何防止数据库单点问题
8.paxos算法
9.raft算法
10.spring的aop实现
11.三种操作,a:++,b:--,c:/2(只能偶数),求i变1的最少次数
12.人才培养(轮流尝试,提出任务,鼓励实现)
13.没有深度的广度没有意义,由广变宅,由浅入深
14.设计时需要经验但堤防经验主义
15.百度技术氛围比腾讯好
二面
1.手写多线程买票代码
2.手写ServerSocket使用代码
3.java有多少种线程池,固定线程池是怎样的
4.Collection的子接口
5.Map的接口,HashMap应用场景
6.Queue的父接口,使用场景
7.数据库主从复制配置
8.Spring的IOC优点,解决了什么问题(解耦)
9.Bean的生命周期
10.Bean的范围,gobal session的作用
11.手写SpringMVC流程
12.如何平衡生活和工作
13.职业发展规划
14.为何不考研
15.redirect和forward区别
16.大学中最大的挑战
17.加密算法
HR面
1.喜欢做什么
2.喜欢看什么电影,带着什么心态去看
3.会再回百度吗
4.还有什么面试
5.腾讯阿里选什么,为什么选腾讯
6.是否独生
7.家里人希望做什么
总结
腾讯很少有算法题,主要考察知识的广度和深度,如果没有实践过,靠背书是很难混过去的。架构理解要求比较有深度,注重原理的考察。
京东
一面
1.快排原理
2.HashMap底层结构
3.ConcurrentHashMap线程安全原理
4.类加载机制
5.左连接和右连接区别
6.tcp建立连接的方式
7.close wait和time wait在什么情况下出现
8.http组成
9.http头部,keepalive的意义
10.https流程
11.如何确保密钥安全,是否非对称加密
12.线程池的实现原理
二面 1.在百度学习到什么
2.对java的了解哪些方面
3.还了解过其他语言吗,不同语言只是不同偏好
4.aqs的具体实现
5.并发包用到那些
HR面 1.在百度学习到什么
2.为什么从百度离职
3.有什么优点和缺点
4.遇到问题是偏向解决问题,还是抱怨问题
5.能实习多久
网易邮箱
一面
1.java公司
2.dfs和bfs实现原理和应用场景
3.ArrayList的底层实现
4.Elastisearch的索引如何储存
5.JVM内存模型
6.java堆分代,对象分配
7.在项目中遇到什么问题,如和解决
8.对自己这个项目打几分,为何转项目
9.HashMao底层实现,介绍红黑树
10.String a="abc" String b="a"+"bc" a==b?
11.遇到紧急的需求该如何完成
12.手写ArrayList添加11个元素
13.n个0~9的数,找和为7的数对
14.MySQL的引擎,所使用索引的结构
15.B树和B+树的区别
16.代码优化地方
17.平时看什么论坛
18.自研JQC的实现原理,和kafka的区别
19.抢红包实现
20.如何传输密码(非对称加密,https)
21.https的证书在哪颁发
终面(HR+主管)
1.如何找到两个实习
2.学校允许实习吗
3.项目中的挑战
4.通过学习解决的最大一个困难
5.如何处理项目,学习,实习的时间
6.为什么离职百度
7.为什么得不到上司的信任,当时有更好的选择吗
网易游戏
1.如何保证项目扩展性,依赖问题
2.消息队列同时消费问题
3.进程的通讯方式?哪种最高效
4.本机socket需要经过协议栈解包吗
5.linux文件管理,文件类型
6.一致性哈希实现
7.统计海量词频最高10个单词,所用的数据结构
8.强类型/弱类型和静态类型/动态类型
9.JVM类加载器
10.查看机器性能
11.查看cpu负载,一般为多少,过高怎么解决
12.机器性能是如何读取的
总结
二面技术面之后,就是HR,这个就不多说了。整体的面试感受,面试官都很专业,要求基础知识很熟悉,面试之前一定要准备后再去面试。LeetCode题目也要刷。
切记面试前一定要刷题和准备,简历上的项目不熟悉的千万不要写上去,写上去的项目备好2-3个技术方案。
网友评论