NiceOffer

面试面经 · 微信事业群WXG

【微信事业群】【后端开发】【一面】Go协程+网络编程+C++基础三连问

腾讯微信后端开发校招面经一面

【微信事业群】【后端开发】【一面】

基本信息

项目内容
公司腾讯微信事业群(WXG)
岗位后端开发
轮次技术一面
时间2025年秋招
面试时长约50分钟
面型体感基础拷问全面,Go和C++都会问,节奏适中
结果通过

面试题目(按提问顺序)

  1. 自我介绍
  2. 项目介绍,重点讲一个你觉得最有挑战的项目
  3. 项目中用了什么技术栈?为什么选 Go 而不是 Java?
  4. Go 的 goroutine 和线程有什么区别?goroutine 调度模型(GMP)了解吗?
  5. Go 的 channel 底层是怎么实现的?有缓冲和无缓冲有什么区别?
  6. Go 的 sync.Mutexsync.RWMutex 的区别?什么场景用哪个?
  7. C++ 智能指针 shared_ptrunique_ptrweak_ptr 的区别?循环引用怎么解决?
  8. C++ 的 new/deletemalloc/free 有什么区别?
  9. TCP 三次握手过程?为什么需要三次而不是两次?
  10. TCP 拥塞控制算法有哪些?慢启动、拥塞避免、快重传、快恢复分别是什么?
  11. epoll 的工作原理?ET 和 LT 模式区别?为什么 ET 模式性能更高?
  12. 进程间通信有哪些方式?各自适用什么场景?
  13. 手撕代码:实现一个生产者-消费者模型(用 Go 或 C++)

面试感受 / 反馈

  • 微信面试对语言基础要求很高,Go 和 C++ 都会深入问
  • GMP 调度模型是必考题,要能讲清楚 G、M、P 各自是什么以及调度流程
  • 网络编程(TCP、epoll)是微信的强项方向,务必准备扎实
  • 手撕代码难度不大,但要求代码规范、考虑边界

准备建议

  • Go 方向:GMP 模型、channel 实现、GC 机制(三色标记法)、sync 包源码
  • C++ 方向:智能指针、RAII、虚函数、STL 容器底层
  • 网络编程:TCP/IP 协议栈、epoll、select/poll 对比
  • 手撕:生产者-消费者模型、LRU Cache、单例模式(线程安全)

反问示例

  • 团队负责微信哪个模块的后台?
  • 微信后台主要用什么语言?(答:C++ 为主,部分服务用 Go)
  • 新人培养机制是怎样的?