面试前准备

公司近况,项目情况 准备合适的问题问面试官

电话面试

  • 弄清楚面试官的意图

现场面试

描述项目经验

* 简短的项目背景
    - 项目规模,开发的软件的功能,目标客户
* 完成的任务
    - “参与”,“负责”(框架设计,核心算法,团队合作)
* 为完成任务做了哪些工作,怎么做的
    - 在什么工具,哪个平台下应用了哪些技术,测试手段等
* 自己的贡献
    - 按期完成了多少功能,做了哪些优化,修改了多少个bug

* 项目中碰到的最大的问题,如何解决
* 从项目中学到了什么
* 和团队成员的冲突,如何解决冲突

描述技能

* 了解
    - 书上学过的,没有实际项目的
* 熟悉
    - 应用过一段时间,可以通过查阅文档解决大部分问题的
* 精通
    - 得心应手,有信心当老师的

找工作的动机

* 寻找更有挑战的工作
    - 陈述为何厌倦了原来的工作,对面试职位为何有兴趣

技术面试

越是简单的题,面试官的期望值越高 对于复杂的题,面试官可能并不期望短时间内解决问题,但是清晰的思路是必要的 努力寻找时间和空间上的优化 沟通能力和学习能力也是同样重要的 知识迁移的能力,新问题,老办法

* 边界条件
* 错误处理
* 程序的鲁棒性

编程语言

* 面向对象特性
* 构造函数&析构函数
* 动态绑定
* 设计模式和UML图
* 内存管理
* 并发控制

操作系统

* 计算机系统基础知识
* 内存管理
* 文件操作
* 程序安全

数据结构与算法

* 算法复杂度

提问环节

  • 职位和项目的背景
  • 主要业务,项目进展
  • 培训机会

HR面试

  • 薪水在HR面试环节问,不在技术面试环节
  • 面试中不打听能否拿到offer