【破冰阶段】
- 您好/你好!请您简单做一下自我介绍。
- 说说您最近一两年的工作情况。
【技术面试阶段】
//C, C++
- 你看过哪些C++的书?
- C++的三大特性是什么?
- 多态是如何实现的?
- C和C++的区别是什么?
- Class和struct的区别是哪些?
- 分别说说局部变量、未初始化的全局变量、已初始化的全局变量、动态申请内存存储的地方。
- 只用指针有哪些注意事项?
- 继承类实例化时调用构造函数的过程?程序退出调用析构函数的过程?
- 了解哪些C++11的新特性?
- 使用过哪些模板?
- 设计模式使用过哪些?
- Qt是否使用过?…
//软件架构
- 你看过哪些软件架构的书?
- 有哪些软件设计的方法?
- 如何设计一个良好的软件架构?
- 多进程并行如何设计?
//Linux
- 你看过哪些Linux的书?
- 进程和线程的区别是什么?
- 进程间通信有哪些方式?
- 发生死锁需要满足哪些条件?
- 如何移植一个Linux版本?
//网络基础
- TCP/IP的四层网络模型是什么?
- TCP/IP四层网络模型每层各说两个协议。
- OSI七层网络模型分别是哪些?
- TCP连接过程是怎样进行的?
- 描述下TCP的三次握手机制?为什么是三次而不是两次?
- 描述下TCP的四次挥手机制?为什么是四次而不是三次?
- TCP和UDP协议的异同?
【项目以及做事方式】
- 请描述一下一个项目经历哪些阶段?分别做什么?
- 作为软件工程师,当开启一个新项目时,你怎么做?
- 请问你们如何提交代码?
- 请问你如何保证代码质量?
- 请问你怎么进行单元测试?
- 请问你如何看待加班这件事?
- 请问你最成功的一次项目经历是什么?你在这个项目中的角色是什么?为什么觉得好?有什么觉得不好的地方吗?
- 你对项目实践有什么认识?认为自己做的好的地方是什么?为什么可以做好?不好的地方是什么?为什么没做好?
- 你怎么看待测试?
- 客户设备运行过程中出现宕机,你负责处理,怎么着手解决?
- 对将来的职业规划是怎样的?
- 选择嵌入式还是上位机方向?
【收尾阶段】
- 请问你对我们公司有什么需要了解的吗?
- 请问你对将来的工作有什么需要了解的吗?
- 请问你还有什么需要了解的吗?
- 后面一两天内我们的人事会通知您结果,谢谢!
【要点】
- 精神面貌要好,自己体会;
- 沟通和态度要好,不满口跑火车也不答非所问,自信但谦虚;
- 技术的问题回答要准确;
- 项目的问题回答要规范;
- 把知道的事情说清楚,说得别人明白;
- 不知道的事情不能瞎掰,承认自己不知道或说相关的认识;
- 表达真诚和对面试的诚意。