船岛科技Golang后端一面
一、开场与自我介绍环节
1. 请做一下自我介绍。
二、网络与协议相关
2. TCP的三次握手和四次挥手是什么?
3. 三次握手两次行不行?四次挥手三次行不行?
4. WebSocket和HTTP有什么区别?
三、Go语言相关
5. Go语言里的map是并发安全的吗?
6. sync.Map的实现原理?它解决了什么问题?
7. Go语言里的协程泄露是什么?什么情况下会发生?
8. 怎么判断Go程序有没有协程泄露?
9. 数组和切片有什么区别?
四、Redis相关
10. Redis的常见数据类型有哪些?
11. Redis的持久化方式有哪些?RDB和AOF有什么区别?
12. Redis雪崩是什么?怎么解决?
五、项目架构与中间件
13. 你做的实时通讯平台的架构是怎么设计的?
14. 为什么项目里要用Redis和Kafka?它们分别承担什么作用?
15. 数据库索引一般加在哪里?加索引的目的是什么?
16. 数据库事务的隔离级别有哪几种?(你提到了读未提交、读已提交、可重复读、串行化)
六、业务场景与系统设计
17. 设计一个游戏商城的购买API,你会怎么设计?
18. 如果扣了玩家金币但发货失败/无反馈,怎么解决?(你提到了事务、原子性)
七、个人工具与行业认知
19. 平时开发会用到AI生成代码吗?
20. 如果AI生成的代码大部分能用、小部分有问题,你会让它全部重写还是手动修改?
21. 你怎么看待AI写代码?
22. 为什么选择游戏行业?
23. 平时喜欢玩什么游戏?
24. 简单谈一款吸引你的游戏,它的吸引点在哪里?
八、面试收尾环节
25. 你对本次面试的表现怎么看?(你反问面试官)
26. 入职后初期会承担什么样的角色/工作?
27. 公司的入职时间/到岗要求?
(5.29约二面)
查看11道真题和解析