2021秋招CVTE面经

电话面

时间:30min
早上接到百度一面电话之后,刚出实验室们,就收到了CVTE的电话面。最近一直在忙数学建模的事情,笔试和面试都是抽空进行的,卑微的渣硕。现在只能回忆一下。

C++方面

  1. C++11的特性知道哪些?说一下
  2. C++中的内存布局?静态变量的作用,为什么要有静态变量?当时答的时候静态变量这块没有回答好,BSS段和数据段有些混淆
  3. C++中的struct和class之间的区别有啥?
  4. 知道哪些智能指针?简单说下原理和应用场景,尽量能够多说些
  5. C++中多态是怎么实现的?以及实现的原理
  6. 虚表指针的内存布局?

网络方面

  1. TCP为什么三次握手?这块我答得不好就说是为了应付复杂的网络情况。
  2. 对HTTP了解多少?常用的方法有些啥?
  3. 能讲出HTPPS实现的细节吗?这块确实忘记了
  4. 说说什么是对称加密?什么是非对称加密?对称加密和非对称加密的区别是啥?
  5. TCP和UDP的区别?

数据库

问了数据库,不会哦,面试官就没有再往下问了

项目

我的项目是miniftp,用C语言写的,用到了linux下的一些API。问项目基本就是和操作系统一起问的。

  1. 简单介绍下项目?
  2. 多进程和多线程的区别?你为什么使用多进程模型来做项目
  3. 服务器要是主动断开的话,你的程序是怎么设计的
  4. 采用多进程模型?如果系统资源耗尽怎么办?

总结:自己答得不好的地方,都加粗了。数据库这块短板得补起来,项目这块还是得继续深挖。

一面

电话面试三天之后,约了视频面。面试官提前和我沟通了时间,感觉还是蛮不错的。
时间:50分钟
一面真就全程都是项目,大概聊了45分钟的项目吧,然后最后的五六分钟写了个atoi,感谢面试官手下留情。可能是之前聊天聊得比较嗨吧,给我挑了个简单的题。还有如果能够会一些设计模式方面的东西就更好了,还有就是会问一些项目的规划的一些问题。

  1. 简单的自我介绍
  2. 介绍一下自己做的项目,你为什么要做这个项目
  3. 项目中的鉴权登录是怎么实现的?
  4. 为什么采用多进程模型
  5. 文件传输限速的功能具体是怎么实现的?
  6. 用户鉴权登录的时候,加密是怎么实现的,用了什么加密的方式?
  7. 多进程和多线程的区别?
  8. 用的什么编译工具?你自己还了解什么可以用来编译的工具
  9. 介绍一下自己在开发的时候?流程是怎么样的,项目主要都有哪些模块组成?各部分的功能都有哪些?开发的时候具体是怎么测试的?
  10. 介绍一下自己项目的亮点有哪些?
  11. 这个续载和续传的功能是怎么实现的?
  12. 为什么要做权限提升?因为ftp有主被动模式的区别,具体是怎么实现权限提升的?

项目方面还是问的挺细的,只要你简历上写的东西都会问到?有一点需要提醒的是cvte的面试是在mindlinker上进行的,建议提前注册调试好设备。我就是注册的时候,扫码扫不出来,还是有些慌的。
项目问完之后面试官比较满意吧,笑着说找个题让我做一下,然后就给了个atoi。估计后面的面试就要来真的啦。

最后的面试官还提出了一些建议,让我去多了解一下软件工程的东西,比如设计模式什么的?还建议我可以不要和C++绑定的那么死,可以试着了解下其他语言,不要拘泥于语言方面。问我还会些啥?
matlab,单片机,FPGA都会一些,建议把自己的优势都展现出来吧。还有就是作为非科班出身,一个项目真的不够啊,奈何其他项目都是拿不出手的项目。建议还是准备两个项目为宜,一定要搞的透透的。

面试完了之后就来了二面的约面试邮件,继续努力吧。希望最后会有好的结果。

猜你喜欢

转载自blog.csdn.net/qq_35353824/article/details/108320508