Back End Daily Internship First Round
深信服-后端开发日常实习一面面经
问题
-
自我介绍
-
介绍一下简历上的几个项目
先拷打了一下分布式缓存这个项目,顺带问了一些八股
-
做项目时有遇到哪些难点吗,以及你是如何解决的
-
你做的这个轻量级分布式缓存系统支持批量查询吗?
-
那如果这个缓存系统断电了,你有考虑过一些保障机制吗,还是说重启之后数据什么的就都丢掉了
-
假如说现在给你一些时间去优化这个缓存系统的话,你觉得还有哪些可以优化的地方
-
讲讲你是怎么理解项目里用到的 SingleFlight(单飞)
-
你这个程序有捕捉 panic 吗,就是避免程序异常崩溃
-
假设现在有一个函数,它内部写了一个子协程,子 goroutine,这个 goroutine 内部 panic 掉了,那你觉得外层的程序它能捕捉到内层的 panic 吗?
-
go 里面捕捉 panic 的函数是什么
-
如果现在你编写了一段程序,运行时会造成切片的越界,进而导致程序崩溃,但在开发时你并没有办法显式地捕捉到这个错误,那你会怎么从最顶层去防止这种情况导致程序崩溃
-
你在项目里有用到过 channel 吗
-
有缓冲和无缓冲的 channel 的区别是什么
然后简单问了一下另外一个 IM 项目
-
可以讲一下你在项目里是怎么用到 DDD 架构的吗,以及微服务架构
-
你觉得使用微服务这种方式来部署的优点是什么,当时为什么要用这种方式来部署你的服务
最后问了几个算法的问题
-
讲一下快速排序的思想
-
快排的时间复杂度是多少
-
在什么情况下快排的时间复杂度最差
反问
-
部门主要业务是什么
-
自己的表现怎么样,有哪里可以提升
反思总结
好久没更新!
因为感觉记自己的回答有点太花时间了,并且好像意义也不是特别大,最终的目的还是看问题比较多,毕竟 ai 能回答得更好,所以就换成这种比较简洁的模式啦
面试体验其实非常好,能感觉出来面试官很多问题都是现场想到的,然后即使我一些问题完全答不上来或者是答得有些不太对不完整什么的,面试官也会引导、让我思考以及给我讲一遍正确的是什么样的,引导性和鼓励性非常强,氛围是类似于探讨和聊天,或者说请教,不太是压力面
然后问题方面的话我也只记录了技术相关的问题,因为感觉非技术的任何问题都挺好回答的,只有技术问题不会是真的不会
深信服是昨晚面的,持续了大概四十分钟,还有一篇虾皮的面经也会发,今天下午面的,不过是运维岗的,明天会说原因
本来下周还要面腾讯,最开始约的 9.2,那天觉得时间太赶就改到 9.9,结果今天面完虾皮看到直接被鸽了,只好等下次邀面
我的技术水平还是不太够啊啊,不够扎实,算法也是一直刷了忘忘了刷的,还是需要探索一下学习方式,还好九月份才刚开始,选在这个时间找日常实习也是因为金九银十提前模拟一下
继续加油