百度提前批 golang研发工程师 一二三面面经 已凉
先说一下时间流程吧:
7.14官网投的简历 然后 7.19日上午收到面试官电话约当天19.00-21.00的一面面试 ,一面大概持续了1h20m,面完面试官当场告知面试通过了,约了20号上午的面试(当时面试官说会发邮件,结果没法,20号10.30的时候,我还在看视频结果面试官打电话过来问为啥没有进会议室😂)二面大约持续了一个小时,也是面完面试官当场说约三面,然后就约了今天(21号)14.00的面试,三面持续了大概一个小时
一面:
***************,一面面试官没有开视频,听声音是个年轻的小哥哥
先是一段简单的自我介绍,然后面试官根据简历问了一些项目问题,在问项目过程中穿插着基础知识考察(项目主要使用golang(gin) + mysql + redis)
基础知识主要有:
1、进程和线程的区别
2、Redis的应用
3、Redis数据类型有哪些
4、Redis的持久化策略
5、Redis缓存击穿
6、MySQL索引(说一下聚集索引和非聚集索引)
7、事务的ACID特性
8、数据库事务隔离级别
然后是两道算法题:
LeetCode 1390 四因数
第二道题应该也是LeetCode上的题,计算两个整数相除的结果,用字符串表示,如果结果是无限循环小数比如(4/333),表示成0.(012)的形式 (没做上来,但是做的过程中面试官也一直在讨论,我说出我的想法后面试官也有引导)
二面
***************,二面面试官开了视频,看起来是个很有经验的大佬
还是简单的自我介绍,然后让我说了一下项目相关的内容
基础知识问的主要有:
进程和线程
进程间通信方式
具体说一下管道、Linux管道文件
golang slice扩容机制
mysql B+树的高度(没答上来)
mysql索引相关知识
怎么判断查询是否命中了索引(只记得用explain,具体怎么看忘了)
然后就是一道算法题:
LeetCode 991 坏了的计算器(做了大概20分钟没做上来,做的过程中面试官闭麦也没交流😂)
三面
三面使用的是牛客,面试官感觉也是个大佬,三面的时候主要是我在说
先是自我介绍加介绍实习工作项目经历
然后看我研究方向问了一些研究方向相关的知识(我研究方向是区块链,所以扯了半天区块链概念)
然后问我有没有研究方向相关的经历(介绍了之前做的论文的相关工作)
问了一些简单的基础知识内容
go的协程与进程线程的区别
一个go协程在运行过程中是否可以用到CPU多核能力(这个没有了解过,只讲了GMP模型)
HTTPS加密流程
然后是做题,是面试官自己出的题,求两个数组的交集(要求不能用语言提供的现成的数据结构和算法)我开始用来go的map 然后他说map也不能用,我就没想出其他的了
最后面试官说没有问题了,让我说说自己有没有他没问到的擅长的知识(突然不会回答了😂然后就随便扯了一点东西)
最后反问
PS.百度的流程是真快啊,面试三天三场,但是体验还是很好地,面试官人也都挺nice的,二面的时候本来以为凉了,结果面试官还是给约了三面,不过我看一面二面我的面评都挺一般的(三面时候偶然看到的,因为是新系统,面试官也不熟悉,让我看到了😂)发个面经攒人品,希望能过


