北京回西安面经
背景
楼主 腾讯 go语言运营开发,5年经验,回西安找开发工作。
目前面了6家公司,包括西安字节,西安腾讯云,tw,华为od,联通研究院,移动研究院。
战况是3个offer,字节移动目测挂了,联通等二面。
前期准备
八股文就是背诵go、网络、redis、mysql、操作系统八股文
算法就是leetcode hot100和剑指offer100的简单、中等难度的题,hard题不做,考了我可以认为就是不想要我。目前剑指offer 100没有刷完,只刷了一点。还有二叉树前中后非递归遍历,选择插入冒泡归并快速排序。
面经
西安字节
一面
自我介绍
聊项目,包括项目背景、项目架构等
go程序优化经验,我回答是pprof监控cpu、内存分配、协程数目,一般泄露都是协程的泄露
算法题,leetcode原题,寻找二叉树路径,是否存在一条路径的数字和,等于所给的target值
二面
自我介绍
聊项目,包括项目背景、项目架构等
项目最难的地方
什么是SLI\SLO\SLA
算法题,leetcode原题2道,1、sql题,超过5名学术的课程;2、编程题,括号是否合法,例如{[]}括号合法,}{[]括号不合法
三面
自我介绍
项目中最难的一件事是什么
自旋锁是什么
docker文件系统 aufs和overlay2的区别
go的内存分配原理
什么是堆和栈
什么是SLI\SLO\SLA
线程和协程的区别,为什么协程不能代替线程
docker的隔离原理
TW
HR面
自我介绍
过往经历
为什么回西安
能否接受出差
期望薪资
在线编程
提前几天给你github地址,然后面试1个半小时,和面试官一起现场写一个需求。
主要考察需求理解能力、沟通能力、代码能力(业务理解、编码、可读性、单测等等)
一面
自我介绍
过往经历
八股文忘记了,进程线程区别、redis等等,记不住了。 项目最难的地方
二面
类似性格三观测试,和总负责人聊天,总体很愉快,也很向往。
西安腾讯云
内部直接找的总监,重点是聊项目
一面
自我介绍
项目
算法题,翻转链表,水都放太平洋了,第一次还写的有问题。。。
shell题,从nginx日志中过滤出top 5次数的IP,很简单,less file | awk '{print $2}' | sort | uniq -c | sort -nr | head 5
二面
和总监重点是聊项目
HR面
了解下回西安的原因
期望薪资
华为OD
机考
3道算法题,分别为100、100、200分,总分400,200分通过,我只有前两道题AC,飘过
性格测试
选乐观、爱加班、爱工作,善于创新
不选焦虑、拖拉、喜欢陪伴
会有多个类似的题,前后保持一致,即最终一致性
一面
自我介绍
项目
go make、new的区别
线程和协程区别
go程序优化经验,我回答是pprof监控cpu、内存分配、协程数目,一般泄露都是协程的泄露
简述kafka consumer group
算法题,有一堆学生id和各科成绩,例如[1, 80]、[1, 72]、[1, 90]、[1, 88]、[2, 100]、[1, 75]、[1、65],括号里面第一个元素是学生id,后一个是成绩,求每个学生的最高5门学科的平均成绩,不足5门的直接求平均值。
二面
自我介绍
项目
线程和协程区别
go channel相关,给一个nil chanel、空channel、关闭channel分别读写会发生什么
linux操作系统上某个文件641是什么含义
如果这个文件是000,root用户会读写可执行吗
MYSQL和ES这两个数据库,分别是为了解决什么问题而设计的?
beego框架的某个东西,我回答不知道,几年前只用过
算法题,leetcode原题,爱吃香蕉的珂珂,二分查找。
HR面
自我介绍
项目
回西安原因 期望薪资
主管面
自我介绍
个人优点
回西安原因
个人的成长
工作的动力
移动研究院
一面
自我介绍
聊最近的项目
redis相关八股,延迟队列、redis主从同步原理、redis 键淘汰策略、redis 键淘汰内部算法?(这个不太懂)、redis两种持久化方式、redis分布式锁
最后和我说,go转java成本高。。。。
联通研究院
一面
主要聊项目,因为做的项目和研究院很相似
项目redis延迟队列怎么搞的,为什么不用mq