腾讯云智 - 后台开发 - 一面 4.8
1. 自我介绍(实习,开源,项目)
2. 介绍个人项目(分布式kv)
3. 异步写怎么实现的(channel延迟写时机)
4. 做这个项目的动机是什么
5. 你这里一致性哈希怎么做的?(目前是所有节点存相同数据,暂时不需要一致性哈希,然后讲了目前想到的后续重构思路)
6. 讲讲实习参与的工作里印象最深的内容?(交易生命周期优化,共识层优化,一点跨链相关,讲了优化的做法和优化前后的区别;单方面输出快十分钟)
7. 你们那边开发语言是什么?(rust + 少量go)
8. 我看你参与了一个kv的开源项目,cpp熟悉吗?(不太熟)
9. (开源相关)你apache seata go这个开源里重构锁键构造怎么做的?(利用项目支持的列 cache 做预处理,然后构造)
10. 我看你们这个开源项目有1.6k的star,你能讲讲这个项目的一些使用场景吗?什么时候我需要你们这个框架
11. 你是以一个什么样的身份参与这个开源(说了参与开源的原因还是一些历程)
12. 哦,那你另外一个项目也是这么参与进来的吗?(差不多是)
13. 我看你项目还挺丰富的,学习动力也比较强,我们回到技能本身问一些基础问题好吧,goroutine和线程有什么区别
14. 他这个用户态和线程的内核态主要体现在哪
15. go的gc是怎么做的
16. 我看你用Valgrind做过内存泄漏排查的工作对吧,能讲讲相关经验和用法吗?(讲整个流程)
17. ok,那现在让你去设计一个LRU缓存你会怎么来设计,讲一下(说结构 双向链表 + map,然后说 lru每个操作对应在这个结构上怎么实现)
18. 一个go程序因为channel相关的死锁了,怎么排查?(分情况说了原因,然后工具的话可以使用pprof)
19. 闲聊(面试官说我需要加强的地方 + 为什么需要改进 + 介绍部门 + 问能实习多久 + 在现在这家实习了多久 + 为什么想换)
20. 反问:
- 您提到的需要加强的地方有什么推荐的书或者资料吗
- 后面还有几轮面试(可能没有后续面试直接oc,也可能还有一轮二面)
- 然后又闲聊一会((
---
30分钟问 + 15分钟闲聊,面完秒变复试,今天早上约二面,还以为真一轮oc了,哎哎