22届春招暑期实习后端开发面经
[toc]
概况
三月初开始准备,一开始打算找Java方向的实习,所以准备了Java SE、容器、并发、JVM等Java基础,Spring相关知识,MYSQL、Redis,以及操作系统、计网的高频面经知识。但是因为腾讯前两次面试都没问java,所以自己又补了golang的知识。
三月中旬开始投简历
目前进度:
阿里(钉钉):3月5号找师兄内推,三月底笔试(最终简历评估没过,猜简历上项目Java比较少)
腾讯:3月9号,挂了两次,第三次过,4月16号oc
OPPO:3月中旬投,4月1号一面,4月16号hr面
虎牙:3月18号投,4月12号一面(过,尚未收到二面安排)
腾讯微保:3月25号投,4月11号笔试,4月15号一面(过,尚未收到二面安排)
金腾科技:3月25投,4月15号一面(过,尚未收到二面安排)
华为:4月初投,笔试时间冲突(拒笔试)
字节(教育):3月下旬找师兄内推,一面挂(算法题没做出来,面字节要多刷题!!!
两个小公司都收到了offer,但是拒了
面经部分
腾讯
一面(不知道什么部门)(凉
自我介绍
项目(k8s集群怎么搭建的,有多少个节点、节点之间通信)
go的基础知识
go channel底层实现(忘了
interface 能直接比较吗?(忘了
在大量并发请求的情况下,如何利用golang的特性设计解决方案(不会
什么时候能来实习,实习多久
一个小时后,流程变灰,然后立马收到另外一个部门的面试邀请
反问环节:
哪些方面需要提高:基础掌握的方面不够牢靠
(准备的Java知识一个都没问,go的知识又一点都没复习,凉透了;,之后开始恶补go的知识)
一面 (ieg 游戏数据库方向) (凉
自我介绍
项目(问了很多细节)
哈希表跟二叉树的比较
为什么用红黑树
什么情况下用哈希表,什么情况用红黑树
面试官:我不会Java 我直接问点c的知识哈(当场去世
c语言的底层知识.......(都没复习过,来一个不会一个。。。
算法题:给一个数组,实现随机抽取N个数据,一定要保证随机性,选出的数据不能重复
反问环节:
什么部门以及业务:ieg 游戏工作室,数据库方向
面试评价:项目做的不错,基础还有待提高
面完后(官网流程在初试静止了一个星期,之后过来几天又收到了面试邀请)
一面(ieg) (过
自我介绍
简单介绍了项目
问了一下技术栈
介绍一下GC(按照java的来说的,从如何判断需要gc一直说到gc回收器,面经关于gc的全部说一遍)
平时用c++吗 ?多态与虚函数表的关系
看你也学过go,了解过go这个关键字吗?介绍一下
协程与线程的区别(回答完之后,我又加了一句,我有了解过go的调度模型GMP)
用一分钟介绍一下GMP模型
介绍一下defer关键字
了解过sql注入攻击吗?gorm这个框架如何解决这个问题?
说说你知道的http的状态码
看你还写过前端,用过vue,说一下vue跟jquery的区别,vue的优点
docker的原理
docker的命令(我从一个项目的打包一直说到运行
k8s的一些命令
描述一下你理解的云原生
反问环节:
面试官介绍了部门技术栈
面试评价:知识很有广度
二面(过
自我介绍
挑一个项目讲一下(面试官针对项目的细节会问的很深,项目讲了半个小时
用过redis叭,介绍一下数据结构
在哪些场景用redis(这里我有提到微软开源的一个框架dapr,面试官没用过他就没细究)
redis做消息订阅发布需要注意哪些问题
如果消息队列满了,从发布方与订阅方两个方面思考如何解决
算法题:
一次遍历,找出单链表中间位置的节点(不能使用额外的数组空间
一次遍历,找出双向链表的中间位置节点
反问环节:
面试评价:总体还不错
学习建议:从基础讲到框架(这里面试官讲了很久,很用心,非常感谢!
hr面(过
核对个人信息
挑一个项目讲一下,难点与解决方案
哪里人
兴趣爱好
base在深圳没问题叭?
平时如何学习
最后又再次向我确认信息
OPPO
Java方向
一面:
Java 基本数据结构
int跟Integer区别
从文件读取字符串的流程
Java多线程
进程与线程的区别
Java 线程启动的函数
JVM相关
Springboot的一些知识
Mysql的索引
口述mysql的建库、建表语句
Mysql性能调优
平时如何学习
反问环节:
面试评价:基础都ok
hr面:
跟面试官聊天,说面试内容要保密
字节跳动
一面:
算法题:
给定一个数 转 3进制并逆序输出斐波那契数列位数(当时太紧张了,有个bug没改好)
sql题:设计两个表--学生与成绩,查出每个学生选课的数量
go 的defer关键字
go的GMP模型
go的channel
进程、线程、协程区别
进程通信方式
TCP如何保证可靠传输
反问环节:
面试评价:编码能力还需要加强
虎牙
一面:
自我介绍
介绍项目
微服务的服务发现怎么做的
有哪些服务发现的组件
http请求的流程
mysql索引相关
说说你了解的mysql知识内容
.....其他的忘了
反问环节:
面试评价:基础知识掌握的比较牢靠
腾讯微保
一面:
自我介绍
项目介绍
integer与AtomicInteger的区别
面向对象与面向过程的区别
进程与线程的区别
JVM相关
为什么要分新生代与老年代
新生代什么时候转老年代,为什么是15
Mysql的索引
B树与B+树的区别以及应用场景
浏览器跨域的问题
如何解决跨域
浏览器资源隔离的原理
https的请求过程
TCP释放连接过程
释放连接的一方在最后进入什么状态
为什么需要这个状态(TIME_WAIT)
智力题:36匹马,6个赛道,找出前三名需要多少次比赛
怎么学习docker的
时间到了,没有反问环节
金腾科技
科普一下:这个公司是中金跟腾讯的合资公司,主要产品有理财通等跟金融、基金有关的产品,在微信支付页面可以找到。(面试结束面试官跟我介绍了好久他们公司
一面:
自我介绍
介绍项目
简单挑一个项目讲难点解决方案
输入一个字符串,从一亿个字符串集中找出是否有匹配的,如何设计
如果一亿个字符串存入哈希表中,需要多少内存,计算一下内存大小(多少GB)
问了很多Java的知识(有点忘记了)
平时怎么学习新技术的
哪里人
有没有女朋友(黑人问号)
反问环节:
面试评价:表现得不错,希望以后在企业工作也能继续保持对新技术学习的热情
总结
面试的时候各个公司对基础的要求会比较高,腾讯比较喜欢问计网跟数据结构。对基础的学习还是比较重要的,然后在这基础上再学一些新技术将会是一个加分项。在此要感谢帮助过的师兄,感谢分享的经验!!!