CVTE C/C++研发实习面试(凉)
在线笔试
在线测试的主要内容就是20道选择题和两道编程题。
选择题就是一些八股文,具体记不清了。反正对面试影响不大。
两道编程题是:
- 求给定一个数组经过降序排序之后,前30%中最小的数。
- 给一组IP vector ips,求子网掩码的最大长度。
面试
面试官是一个小哥,听声音比较温和,
注:开面之前假装调摄像头,先把iwatch录音开启来。
自我介绍
答:我叫xxx,来自xxx,在德国克莱登大学计算机专业读研二。我自己目标的方向是CC++Linux后台开发方向,我对这个方向所需要用到的理论知识有一定的了解。 比如数据结构,如队列、栈链表、还有一些别的算法,比如回溯、动态规划等。还有IO多路复用的知识,比如select、poll、epoll以及在它们之上进行封装的Reactor和Proactor?这里C/C++说自己只是了解(有点不够自信),学习的时候习惯将学到的重要知识点总结成笔记,然后业余爱好的话,我每天坚持跑步5km,然后平时喜欢读一些书。现在在学RPC这方面的内容,想把之前的项目扩充 ,把httpserver扩充用到数据库之类的中间件。
reactor是对epoll的一层封装 ,epoll是对io进行管理,reactor将对io的管理转化为对事件的管理。
应该要说能够熟练掌握C/C++基本语法与应用,放介绍的前面说比较合适,
看你简历上说你有一次实习经历,你的收获是什么?
答:做的事情相对比较简单,因为算是第一次实习,之前也有实习过,但是是测试,这次实习至少能看到一些软件开发流程,导师有分配一些解bug的任务。然后这次实习主要是与QT相关。主要是能够接触到它们的代码的语法风格。有些问题看起来很简单,但是做的时候没法下手,然后导师指导后,也就是用到常用的封装的方法,不应该这么说应该具体是说面向对象的方法,比如说继承。。。
打日志很重要。(中间又是一大堆嘶嘶嘶嘶嘶嘶)。
在实习中你有了解过软件开发的生命周期是怎么样的呢?
你在实习的时候有解决过什么bug吗,有没有学到或者是有没有一些解决问题的心得方法?
答:这里已经慌了。语无伦次了,
先找到出现问题的大概位置,阅读上下文代码,了解类的封装情况,代码的执行情况,根据这个来修改,增添新类不是很敢做。
有学过一些设计模式吗?
类的封装或设计上你有没有什么设计思想或者是一些指导思想?
答了一些屏蔽属性,只提供给用户有限的使用接口,反正也是答的不好
我看你写了一个web服务器项目,有用到哪些开源组件吗
你能介绍一下你的这个项目整体设计是什么样的?分了几个线程或者是线程,每个线程职责是什么?或者说从类的分工上分了几个层次或者框架,你能简单介绍一下你的这个程序的设计吗?
答:开始不知道为什么笑起来了???说的乱七八糟???
搞的面试官再次提问,你这个项目的工作流程是什么样子的呢?先给我介绍一下大概的结构是什么样子,然后再介绍进程和线程都是做什么用的,这样我比较好的了解你这个项目的全貌。
明明这方面项目看了好多
你这个项目用的是get方法来获取资源 ,你这个程序是只能下载不能上传的吗?
那么如果下载的是一个大文件,有没有支持断点续传功能呢?
答:这个不了解,没做过。
你这里用到了get请求,有没有了解过http请求的一个效率问题呢?get请求和post请求数据量一致的情况下哪一个效率会更高一点呢,为什么?
你这里epoll选择的是ET、还是LT为什么?
答:ET、因为我请求的都是小文件,基本几次数据就到了,所以只要缓冲区第一次有数据到来才触发就够了。
都说epoll比select和poll高效,那么高效的原因是什么?
答:说了一下区别,select和poll每次都要设置监听fd的集合,而epoll不需要,而且epoll事件是存在一个红黑树。所以效率更高。感觉不行
你这个程序的话,是一个web服务器,那现在我们发散一下,改成一个CDN服务器,就像我们现在用的视频会议工具有个视频流传输,要做到实时级别视频级别的服务器的话,底层就传输层协议可能不用TCP实现,而是用UDP实现,因为我们都知道UDP实时性能要高一点。现在场景是传输层我用UDP实现,但应用层协议我还没敲定,我的要求是能够有一个更好的可靠性,如果既要保证实时性又要保证可靠性的话,你会怎么去实现呢?
答:TCP是依靠序号机制和三次握手来实现数据包不丢失不乱序,那么传输层UDP时在应用层发送数据时加上序号。
你是否有了解过满足我刚刚说的要求的应用层协议呢?
你刚刚提到有用到线程池,那么你有了解过线程池的线程数初始值根据什么来决定。
答:(不会)根据并发数来确定初始值。
那你有测过你的webserver的并发数吗?
在STL你会用到哪些容器呢?
答:vector、set、map详细讲一下
你刚刚说到vector中动态扩容,那为什么是1.5倍或者是2倍?
map查找上是什么样的复杂度?
答:Olog2N
你在做算法题或者项目功能时,有什么调试方法保证运行逻辑和你预期是一致的?
你有了解过程序崩溃的时候,应该怎么去排查呢?
答:我回答内存泄漏、边界问题,在资源分配和数据流动代码附件加断点或打输出。
你刚刚提到内存泄漏,那C++上有提供了一些好用的方法来解决这个问题,比如智能指针,你有了解过或用过吗?
你对自己学习规划有什么想法吗?
答:刚刚面试完发现自己网络部分薄弱,还要加强。把前面的知识复习到位,然后要多动手,并发编程这一块也要加强学习一下,同时redis mysql也想应用于自己的项目中。
反问
如果有机会到贵公司实习,主要工作是什么呢?
我们这是一个集团,旗下有很多子公司,有很多业务,像C++应用场景基本都覆盖了,像客户端开发,嵌入式开发,后台服务,比如这款通信会议软件后台就是用C++来实现的。还有就是研究院的一些算法工程落地,具体可以到官网看有哪些领域
我想走后端开发应该要注重哪些方面学习,或者说刚刚面试下来我有哪些不足呢?
从C++这边看,你刚刚这边也掌握的不是很清楚。就从一个研发人员的气质上来讲,刨根问底这方面还不够,应该有一些追求,思维方式上要有一些转变,对知识应该要有更深入的了解。
心得体会:
讲话有点慌张,总好像一直在笑,应该还是要稳一点,偶尔微笑可以;
语气呼吸优点不流畅,不要思思思思;
不够自信,总是想收回自己的话;
理论知识和实践都需要提高,对于项目介绍的准备还不够充分;
面试官人还是很好的,会一步一步循序渐进的提问,并且比较有耐心,最后也给出了比较中肯的评价,虽然这次面试挂了,但是收获上来说还是比较大的,比较换位思考,如果我是面试官,我也会把自己给挂了。~~
CVTE C/C++研发实习面试(凉)相关推荐
- 2021年4月16日 阿里供应链Java研发实习面试(二面)
title: 2021年4月16日 阿里供应链Java研发实习面试(二面) tags: 面经 2021年4月16日 阿里供应链Java研发实习面试(二面)(70min) 自我介绍 介绍自己的研究生项目 ...
- 2021年4月12日 阿里供应链Java研发实习面试(一面)(含总结)
title: 2021年4月12日 阿里供应链Java研发实习面试(一面) tags: 面经 2021年4月12日 阿里供应链Java研发实习面试(一面) 自我介绍介绍项目你用哪个版本的Java呢?( ...
- 我的Java研发实习面试经历
终于要开始写博客了,立志做一枚羽毛球界最会写代码的妹纸,写技术博客是必不可少的,所以先拿最近生活的中心--找实习开启我的csdn博客之旅吧.我是9月初开始有找实习的念头,目标定位互联网公司Java ...
- 透彻解析!字节跳动Android实习面试凉凉经,年薪超过80万!
什么是Kotlin? Kotlin,如前面所说,它是JetBrains开发的基于JVM的语言.JetBrains因为创造了一个强大的Java开发IDE被大家所熟知.Android Studio,官方的 ...
- 字节跳动Java实习面试凉凉经,附答案+考点
写在前面 很多小伙伴留言说让我写一些工作过程中的真实案例,写些啥呢?想来想去,写一篇我在以前公司从零开始到用户超千万的数据库架构升级演变的过程吧. 本文记录了我之前初到一家创业公司,从零开始到用户超千 ...
- 联想C++实习面试凉经
2023年04月13日 9:30:00 这个面试好像比较着急,也没有自我介绍,面试官直接就问问题了. 一共面了40min左右 介绍一下epoll是什么? epoll和select有什么区别? 效率不同 ...
- 字节跳动Android实习面试凉凉经,震撼来袭免费下载!
开头 最近,程序员这个圈子可谓热闹非凡,前不久,一个神奇的开源项目996.ICU诞生,几天时间就有超过10w+ star 和 1w+ fork ,可谓是Github上star增长最快的项目.996.i ...
- 泪目!字节跳动Android实习面试凉凉经,面试必备
前言 最近我开始偷偷投简历了.与老东家的合同快要到期,想知道自己的斤两,续签合同也好有个底,顺便悄悄看看新的工作机会.虽然市场环境不好,但我们身在涨工资靠跳槽的行业没办法. 由于工作了5年了,经验有了 ...
- 四面阿里Java开发岗,字节跳动Java实习面试凉凉经
开头 我们面试的时候 ,经常会被问这种到问题:Spring中bean的循环依赖怎么解决? Spring中bean的加载过程? spring相关的问题一直是大厂面试常问到的一个问题,也是一直困扰这我们, ...
最新文章
- SQL2005的安装与 使用
- 倒计时一天 坚果智能影院让家用投影投出你的新生活主义
- ATC计算机会议,三项成果被计算机系统重要国际会议USENIX ATC和HotStorage收录
- 验证dropdownlist必选
- python注释的用法(单and多行)
- (34)FPGA分频设计-奇数分频(第7天)
- 最近使用mysql遇到的几个问题
- python读取txt每一行-Python逐行读取txt文本,按符合分割词并逐行写入txt
- C++ Primer 读书笔记 - 第二章
- 【疑难杂症】xmind启动后,自动退出的问题
- Xcode 与 macOS 系统版本的兼容问题
- Docker学习(三)Docker常用命令
- JAMA Psychiatry:老年抑郁症患者的神经影像学、认知、临床症状和遗传学的异质性表征
- iOS证书的种类和其作用
- 巴比特《8问》专访 Conflux 创始人龙凡教授
- python抓取日本网站上iphone5的价格
- git 账号密码重置
- [转载]计算机视觉、机器学习相关领域论文和源代码
- webpack的proxy代理配置
- 如何更改vmware的网络模式