第一章:面试的流程

1.应聘者在电话面试的时候尽可能用形象的语言把细节说清楚

2.如果英语面试时没有听清或没听懂,要敢于说Pardon。大胆提问,直到搞清楚面试官的意图。

3.编程习惯:

  • 思考清楚再动手(思路、算法时间、空间复杂度、特殊情况处理);
  • 良好的代码命名和缩进对齐习惯;
  • 能够单元测试(能做到测试在前、开发在后的程序员稀缺);
  • 在桌面远程面试过程中,面试官最关心的是应聘者的编程习惯和调试能力

4.现场面试:

  • 规划好线路并估算出行时间;
  • 准备好得体的衣服;
  • 注意面试流程;
  • 准备几个问题;

5.面试的三个环节:行为面试、技术面试、应聘者提问。

行为面试:30秒-1分钟的时间介绍自己的主要学习、工作经历等。(自我介绍)

  • 应聘者的项目经验:

 在介绍项目经验时,应聘者不必详述项目的背景,而要突出介绍自己完成的工作及取得的成绩。

 常问的问题还包括:

  1. 你在该项目中碰到的最大的问题是什么?你是如何解决的?
  2. 从这个项目中你学到了什么?
  3. 什么时候会和其他团队成员(开发人员、测试人员、设计人员、项目经理等)有什么样的冲突,是怎样解决冲突的?
  • 应聘者掌握的技能:

“了解”:通常不建议在简历中列出只是肤浅地了解一点的技能,除非这项技术应聘的职位的确需要。

“熟悉”:简历中描述技能的掌握程度大部分应该是熟悉。在实际项目中使用一项技术已经有较长的时间,通过查阅相关文档可以独立解决问题。

“精通”:得心应手,不要在简历中轻易使用精通,除非自己能够轻松地回答这个领域里的绝大多数问题,否则就会适得其反。

  • 回答为什么跳槽:

尽量避免以下回答:老板苛刻、同事难相处、加班频繁、工资太低等负面情绪的回答。通常回答一些积极能量,想寻找份更有挑战的工作提升自己的能力。

技术面试环节:

  • 扎实的基础知识:编程语言、数据结构和算法;
  • 能写高质量的代码:关注边界条件、特殊输入(NULL指针、空字符串等)、错误处理等;(就是考虑所有可能的情况并一一处理得到正确的结果)
  • 分析问题时思路清晰:采用画图(形象化)、举例(具体化)、分解问题(简单化)等方法帮助我们解决问题;
  • 能优化时间效率和空间效率:熟知各种数据结构的优缺点,选择合适的数据结构解决问题;熟练掌握常用的算法:如查找和排序;
  • 学习沟通能力、知识迁移能力、抽象建模能力、发散思维能力;

应聘者提问环节:

  • 不要问和自己的职位没有关系的问题;
  • 不要问薪水问题,技术面试不谈薪水;
  • 推荐问的问题是:与招聘的职位或者项目相关的问题;

猜你喜欢

转载自www.cnblogs.com/direwolf22/p/12641016.html