Linux c/c++面试总结

背景

2019年的经济大形势不是很好,工作机会也相应减少。

随着各个互联网公司的裁员浪潮,人才市场上释放出了很多工程师。各大厂虽然没有裁员,但今年的招聘需求明显减少,面试更加严格,招聘的也多是技术专家级别的岗位,同等级别的岗位,要求也比往年提高。

但是所谓的多少也是相对而言的,对于真正厉害的人,缺口还是很大的。

所以,在自己的职业生涯规划中,一方面要参考市场环境,另一方面更要对自身的技术能力、兴趣爱好、综合素养有一个全面客观的认识和评价,也只有这样,才能在整个求职过程中收放自如,谋得自己心仪的工作。

由于我主要从事Linux c通信方面开发,所以本篇介绍技术方面以此为主。当然,一些通用的结构化面试过程,各个公司应该是大同小异,面试前还是要认真准备一下。

技术

从3月份开始投递简历,面试主要集中在4月份,大小公司也面了几个,技术方面各种类型公司对宽度和深度的要求是不一样的,可以在面试之前通过各种渠道提前了解一下公司的大概需求,这样可以做有针对性的准备。

Linux基本知识
  • uboot启动流程
  • 虚拟内存及堆栈空间
  • 如何修改内核参数,如最大fd数,各种修改方法的区别
  • 讲解一个自己做过的驱动开发
  • 文件系统
  • 进程与线程及特点
  • 进程与线程及通信方式
  • 内存溢出和泄漏,如何处理
  • 查看网卡速率的命令
数据结构与算法
  • 斐波那契数列的几种实现(递归)及优缺点,如何优化
  • 链表实现,反转链表相邻节点
  • 常用的字符串匹配算法及适用环境
  • 写一个算法处理微博转发次数和点赞次数排名的程序(hash)
  • 快速排序
  • 位图
  • 具有k点节点的满二叉树
应用程序相关
  • 死锁的几种原因及定位,如何自动化测试定位及解决
  • epoll的两种模式及读写区别
  • 多核编程相比传统方式的优缺点,如何最大程序发挥优点,怎么优化
  • 多核调度中如何做负载均衡
  • 白盒测试中的安全问题,如何从项目全生命周期处理安全问题,对于安全还有什么看法
  • 使用过什么开源库,使用GPL开源库对自己的应用程序会有什么影响,怎么保证生产和发布安全
  • 协议处理中如何处理rev字段的数据,默认的方法是什么,为什么这样处理
  • 如何定位开发和已部署设备出现的问题
  • 对上层协议的理解,如http
  • 字符串常量与字符串内存地址
  • wait和sleep
  • 对称加解密算法
  • rsa算法是否安全
网络相关
  • ping的各种回应及原因
  • 如何处理高并发、大流量的网络,通用技术有哪些
  • 可能的优化方向有哪些,如何评判可行性
  • 网络中间件的使用
  • 频繁io处理中的优化
  • 多线程中的网络并发处理及模型
  • tcpdump应用
相关技术
  • sdn/sdr
  • dpdk/cavium/tilera
    • dpdk的使用,应用程序如何启动
    • dpdk的大页内存及作用
    • cache miss怎么产生的,解决的方式有哪些
    • dpdk使用的网卡等
    • 自有协议栈如何确保不丢数据
    • tilera如何做一些优化,dpdk呢
    • 这些技术比通用方式能快多少
  • ipv6
  • 对硬件加速的理解
  • 如何做程序优化(包括指标、目的、空间、时间及项目管理)
  • cpu与fpga之间如何通信
  • 使用过哪些开源的技术和库,为什么用它们,对它们的优缺点掌握多少
  • makefile、boost库
  • shell及python脚本编写
  • devops
  • 虚拟化、分布式
面向对象

由于之前工作涉及的不多,面试的也不多。

  • 设计模式
  • 常规的继承、多态和重载
  • 智能指针
数据库相关

这个涉及的也不多。

  • mysql/reids
  • 数据库查询优化细节
  • 数据库查询突然变慢时,如何排查定位问题
  • 2个数据表的sql语句
结构化问题

  • 从广度方面给自己打几个标签,为什么,这些方面与别人有什么不同
  • 自认为对哪些技术比较精通,与我司有哪些方面的契合度
  • 项目周期管理和推进计划如何制定
  • 讲一下现公司部门结构及项目模块划分、软件框图
  • 详细讲述一个项目,遇到的问题,是如何解决的
  • 如何激发团队积极性
  • 自己的3个优缺点,如何评价
  • 怎么解决与同事之间的冲突
  • 读过什么书,对自己有什么影响
  • 未来3-5年的职业规划
  • 工作中有哪些创新,源自哪里,带来了什么
  • 如何管理一个项目,及项目节点周期
  • 与领导有不同意见了怎么办
  • 对未来的工作团队和环境有什么要求
  • 有什么问题
总结

以上是我面试的一个简单的罗列和记录,不同的公司侧重的考察点可能会有不同,仅供参考。

有的公司会有笔试,有个公司要求做ppt展示,具体要求面试前问清楚,提前做好准备。

每个人都是与众不同的,自己的经历、性格、兴趣、技能造就了自己,不需要委曲求全,工作也是生活的一部分,热爱生活的人也热爱自己的工作。

记住一点,打铁还需自身硬,厚积才能薄发,不断提前自己的技术和素养,承担更多的责任,多经历自己没有经验的事情,自己就会成为有用之才。

换工作是实现自己职业生涯规划的一种方式,但不是唯一的方式,所以慎重决定,决定之后就义无反顾地去做吧!

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值