首先AI面试,稍微准备一下即可通过
后续是单面,会针对简历上写的项目来发散的问很多问题
主要讲单面问到的问题。简要介绍一下项目;linux底层懂多少;能否讲一下你设计的软件整体处理数据请求的框架;你的程序中为什么要使用条件变量,它的作用是什么;你知道linux系统的进程最大并发数限制吗,你是如何解决这个问题的;能否解释一下TCP粘包和拆包,以及你是如何解决的;能否解释一下什么是惊群效应,你使用什么方法来解决,为什么选这个方法;在另一个项目中,你使用UDP而不使用TCP的原因是;另外你提到UDP和TCP相结合,为什么这么做,理由是什么;最后,你认为你的项目还有哪些可以改进的点
一共两轮面试,都在线下。自己约时间去他们公司,是在一栋办公楼里租了一层。办公楼1楼跟前台说明面试后被告知去几楼几号。坐电梯到了CVTE所在层之后,会有专门前台接待,把准备好的简历两份给他,然后就是坐在等候厅等面试官空闲。第一轮技术面约40~60mins,第二轮面试是综面约30mins,当天就结束了两轮。HR人很好,面完已经很晚了还打车送我回去。
面试官问的面试题: 第一轮技术面,面试官着重问了项目相关经历,项目难点,如何克服难点;八股问了两道,都是从项目中引申来的,一个是I2C和SPI,一个是ADC,比较好回答。然后开始手撕,我手撕了两道题,一道是编写一个封装函数按字节处理字符串,一个是密码对称映射。手撕完后还问了兴趣爱好相关的,以及个人评价。最后是反问。
第二轮综面,面试官问了技术面体验如何,经历过的最有挑战是什么,最有意义是什么,公司的价值观是什么(在面试等候区会播放他们公司的宣传短片,我刚好速记了一些片段),十年后你希望自己过一段怎样的人生(建议往狼性上靠)。