腾讯云后台开发凉凉的一面
20号投的简历,没想到23号就被约了面试,机智的我约了24号,至少抱一天佛脚啊!
接下来直接进入主题:
面试用的腾讯会议,没有开摄像头,这挺好(害怕我丑陋的大脸吓跑了面试官)。
面试官先介绍了一下腾讯云的一些业务,然后,还没有说了两句,就说你还是先介绍一下你自己吧!
当我自我介绍刚说到三分之一的时候,突然听到面试官一声叹气,心想不妙,赶紧话锋一转,说到自己以前做过什么项目,有什么收获,吧啦吧啦~
自我介绍顺利结束,然后开始提问,问题基本上都是围绕简历拓展:
1、你刚刚说到你做的那个项目,你描述一下它有什么功能?
简单地说了一下我们做的小东西。(实在是没有什么高大上的技术,也没有什么可吹的。)
2、你这是自己做的吗?你是怎么向服务器传输数据的?
基本上就是建立TCP连接,然后采用HTTP协议,向服务器post数据。
3、POST和GET有什么区别吗?
4、你是用socket实现的吗?还是用其他的方式呢?
我说我这是在嵌入式硬件上面跑的,编程的话是在这个硬件的固件的基础上,通过调用固件的网络接口实现的,这个网络接口是对socket的封装。
5、那你传输数据到底用的是什么?又是socket又是HTTP的?
当时也没想明白面试官到底想要问什么,我就是用SOCKET建立TCP连接,然后把数据放在HTTP请求报文里面发送给服务器嘛(又这样解释了一遍,各位路过的大佬看看我这个回答是不是有问题)。
6、你们服务器端接收数据的流程是什么样的?怎么处理的呢?
说了一下服务器端怎么处理数据的。
7、网页端具体有什么功能呢?
大致说了一下有啥功能,然后说我们只接入了一个设备做测试。
8、那多个设备都要接入的话,要怎么处理呢?
先到我们的网站上去注册设备,然后我们给这个设备分配一个ID,然后把这个ID绑定到实际的ID上面,我们向服务器POST数据的时候就要加上每个设备的ID号。
9、你们用的什么数据库啊?
MYSQL
10、那你知道MYSQL的索引吧,一般怎么建立索引比较好呢?
说了一下“我们建索引呢是为了提高查询的效率,吧啦吧啦”
11、那你知道为什么索引能提高查询的效率呢?内部是怎么实现的?
用的B+树啊
12、那你详细介绍一下B+树
哎....,我说了一下概念性的东西,具体实现忘得一干二净。
13、那redis你用过吗?
没有
14、我看你简历上面还有一个实习,介绍一下你实习的时候做的这个东西,你简历上写的可行性研究,你知道你这个项目的来源吗?
大概说了一下项目的情况,然后把之前做过的实验什么的说了一下。
15、哦,那这个项目实际上是没有上的吗?为什么?
准确率还不错的,就是速度无法到达实时的要求。
16、好吧,那你实验是在嵌入式设备上面跑的吗?
在电脑上跑的,还没有到生产环境上去做测试。
17、那你觉得这个项目还有什么可以改进的地方?
18、你用C++写的是吧,那应该对C++挺熟悉的吧,问几个C++的问题:
类的成员函数的重载
C++里面强制类型转换有哪几种?指针的上行转换(基类到派生类)和下行转换分别要用哪种方式?
好像还有几个问题来着,我给忘了。
19、你知道哪些设计模式呢?介绍一下
单例模式....
20、那你说单例模式一般有哪些应用场景?
呃,我只是知道,实际上还没有怎么用过。
21、你会用用linux吗?
平时有用到
22、那你知道查端口用什么命令吗?
对不起,我没有查过端口。
23、我现在给你一个链表的头指针,要找到链表的中间节点,怎么做?
两个指针,一个跨两步一个跨一步
24、那我现在只给你一个中间的节点,不知道头节点,要怎么把这个中间节点删除掉?
把current->next的值赋给current,然后current->next=current->next->next
25、你把屏幕共享打开,用你自己的IDE写个二分查找算法
磕磕巴巴写完之后,面试官顺道给做了个code review:你这个int可能会溢出哦,改一改
26、我看你代码里面用的vector,你知道vector和list的区别吗?
27、下一个代码题:棋盘从左上角到右下角求最小代价
其实就是leetcode上面的64题
==================华丽的一割线======================
终于面了一个小时的时候,面试官略带愉悦地说:我们也面了一个小时了,差不多了,你有什么问题想要问我的吗?
问:你们平时工作中哪些基础知识用得比较多,比较看重哪些技术?
答:(面试官笑了一下,大概是我想套话的意图太明显了吧!)计算机基础知识我们都有用到啊,吧啦吧啦。我们现在主要用到了一些JAVA的框架,GO的框架,redis,MQ等等。
问:你们平时的业务主要做什么呢?
答:说了腾讯云提供的一些服务。我们在云端给企业提供AI服务。吧啦吧啦。你知道我在说什么吗?你可以去了解一下。那没有什么问题我们就结束了吧,拜拜。
===================华丽的二割线======================
这是我的第一次春招面试,好多问题回答得都不好,估计是要凉了吧~
感觉面试官问的问题都是比较基础的,还是我太菜,再接再厉,秋招继续!
小结一下:
1、问题基本上都是照着简历上的项目展开,所以简历上写了的东西就一定要深入挖掘
2、面试官会根据你的回答去继续拓展他接下来的问题,所以回答之前要认真思考一下
3、以上问题涉及到了计算机网络,数据库,数据结构,一些编程语言的知识,一些实际的项目经验,还有设计模式。当然也不全是考察知识点,还要查考你怎么去思考问题,怎么去想解决方案,怎么优化你的方案。
4、基础知识很重要,滚回去复习啦~