这三个Offer,你怎么选?

嵌入式Linux

共 1576字,需浏览 4分钟

 ·

2021-10-17 20:10

前几天,有读者给我发信息,让我帮他看一下offer的选择:

字节、腾讯天美、阿里云,随便一个都是羡煞旁人的offer,这家伙一下拿了三个,我都开始酸了起来。

于是我让他总结一下面试过程中考察的知识点,给大家分享一下,这不秋招快到了,给大家复习提供一些参考。这里非常感谢这位反斜杠号同学(没错,他的微信名就是反斜杠号\)的分享。

面试经历

拿到offer:

  • 字节跳动今日头条后端
  • 腾讯天美服务器后台开发
  • 阿里阿里云C++研发
  • Momenta Deep Learning
  • 大疆自动驾驶 测试开发

被调剂:

  • 微软苏州SDE

挂掉:

  • 网易雷火笔试

知识点总结

计算机网络

  • TCP相较于UDP的优点,为什么有这些优点
  • 设计一个FPS游戏联网服务器架构(分布式,同步方式,包的选择传输,主从模式容灾)
  • TCP头部组成,分别是干什么的
  • HTTP1.0、2.0、3.0的区别是什么
  • HTTP和HTTPS的区别
  • HTTPS的加密过程

操作系统

  • 操作系统一页的大小是多少
  • 为什么一页的大小是这么多
  • 类似内存页大小这些计算机中的常量,设计的时候考虑哪些因素
  • 进程间通信方式,详细介绍一下
  • 对linux有多了解

C++

  • 虚函数的实现方式
  • static关键字的多种用法
  • 智能指针的了解和实现(boost或者C++标准库,我答的C11标准库)
  • 多线程库
  • STL底层实现
  • map为什么用红黑树不是B+树
  • constructor和destructor是否使用virtual,为什么
  • 四大cast转换
  • struct和class的区别
  • C++的编译链接过程和实现原理
  • inline function
  • inline和define的比较
  • 函数默认值的实现
  • Name Mangling

数据库

  • MySQL为什么用B+树做索引而不是红黑树
  • MySQL的引擎,为什么要有这两种,主要有什么区别
  • 索引的实现原理
  • 事务ACID和隔离等级

算法与数据结构

(可能是因为我是搞ACM的,问的不是特别多

  • 大部分是思维题,难度不高,涉及到几个很基础的二叉树
  • 设计redo/undo功能使用什么数据结构
  • LIS,普通三维dp等基础的dp
  • 基础图论算法,最短路和最小生成树

项目经验

  • 大一写的一个Unity3D的FPS游戏
  • 一个CV+AI的项目

聊几句

总的看来,在校园招聘中,各个大厂都是非常看重大家的基础知识掌握情况的。

像计网、操作系统、数据结构与算法、数据库,这都是必考的东西,这几门课程建议要全面复习一遍。

除此之外,不同语言方向的同学,对各自所学的语言方面的知识点也要进行全面的梳理,像文中的同学是C++方向的,对C++方面的基础细节考察的还是非常细的。

很多同学戏称面试题是背诵八股文,不过我不建议大家像高中那样死记硬背这些知识点,我的建议是多动手,因为我的经验是只有自己动手去验证过的知识点,自己在面试遇到的时候就会立刻想起来,回答的时候有理有据,更加自信!

像计算机网络方面的知识点,就多抓包分析,在抓包软件下面学习数据包,理解协议的交互流程比看书更深刻有效。

像操作系统、C++相关的知识点,就写一些代码去验证,什么虚函数实现原理,inline函数原理,写个代码在调试器下看一下就知道了,这些都是不用去死记硬背的东西。

像算法与数据结构相关的知识点,就多刷一些题,比如牛客网、LeetCode都去刷一刷,刷的多了就摸准了套路,一看到题目就知道要考察什么了,专业面试的时候感觉自然就来了。

除了复习和刷题,还有个很重要的环节就是去看面经,多看看别人的经验,查漏补缺,看得多了,心里也就不虚了。

复习+编程+刷题+刷面经=Offer

最后问一句,这位同学遇到的题目,你能答出百分之多少?


浏览 31
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报