面试的流程
面试的三种形式
1. 电话面试
注意事项:1、保证一个安静的环境 2、手机电量够通话一个小时 3、由于电话面试只能靠声音交流,所以在回答问题的时候要把细节说清楚,如果没有明白面试官的问题,一定要多提问,切勿答非所问
2. 共享桌面远程面试
考察内容:1、编程习惯 2、调试能力
注意事项:1、思考清楚之后再编码 2、良好的代码命名和缩进对齐习惯 3、先写单元测试用例,再写解决问题的函数 4、遇到问题的时候,能熟悉的设置断点、单步跟踪、查看内存、分析调用栈等调试手段解决问题
3. 现场面试
注意事项:1、预留时间、不要迟到 2、衣着得体 3、提前准备向面试官提问的问题
面试的三个环节
1. 行为面试环节
1.1关于项目经验
运用 STAR 法则去描述经历的项目
S:简短的项目背景
如项目的规模、软件的功能、目标用户等
T:自己完成的任务
详细描述,注意区分 “参与” 和 “负责” 的使用
A:为了完成任务做了哪些工作,怎么做的
详细介绍,不同职位不同侧重点。如做系统设计的,可以介绍系统架构的特点;做软件开发的,可以写基于什么工具在哪个平台下应用了哪些技术;做软件测试的,可以写是手工测试还是自动化测试,是白盒测试还是黑盒测试等
R:自己的贡献
具体描述,最好是用数字加以说明
面试官常问问题的类型
1、在项目中碰到的最大的问题,怎么解决的
2、在这个项目中,学到了什么
3、与不同的团队成员有怎样的冲突,如何解决
1.2掌握的技能
区分 “了解”、“熟悉”、“精通”
“了解” 指学过相关课程或者看过相关书籍,并没有做过实际的项目。一般不写,除非职位相关
“熟悉” 指实际项目中已经使用较长时间,通过查阅相关文档能解决大部分的问题。应该占大部分
“精通” 指不但能解决自己的问题,还能够解决别人遇到的问题,谨慎使用
2. 技术面试环节
主要考察内容:1、扎实的基础知识 2、高质量的代码 3、分析问题思路清晰 4、优化时间和空间效率 5、学习、沟通能力
注意事项:1、对于简单的问题,要考虑全面,注重细节 2、对于复杂的问题,学会通过画图、举例、分解问题等方法去理清思路,然后再动手编程 3、对于连续相关的问题,要学会用解决前面的思路来解决后面的题,体现知识迁移能力 4、主动提问,以弄清楚题目的要求,体现自己的沟通能力
2.1扎实的基础知识
1、编程语言:注重深入学习语言的底层实现,以及清楚许多细节问题的解决
2、数据结构:需要熟悉掌握链表、树、栈、队列和哈希表等数据结构,以及它们的操作。链表和二叉树是考察重点
3、算法:注重考查查找和排序算法,重点掌握二分查找、归并排序、快速排序
2.2高质量的代码
注意事项:解决问题的时候,需要考虑边界条件、特使输入、错误处理
解决办法:先写好测试用例之后再去写代码,只有提起把各种可能的输入情况全部考虑到了,才能在写代码的时候做出相应的处理
2.3清晰的思路
注意事项:对于复杂的问题,更注重解决问题的思路
解决办法:1、画图能使抽象问题形象化 2、举例使抽象问题具体化 3、分解使复杂问题简单化
2.4优化时间和空间效率
要求:1、要知道如何分析效率 2、熟知各种数据结构的优缺点 3、熟悉掌握常用的算法
2.5学习和沟通能力
考查方式:1、从最近看的书,了解应聘者的学习愿望和学习能力 2、抛出一个新概念,解决相关的问题 3、先问一个简单的问题,再问一个相关的难题,考察知识迁移能力
3. 应聘者提问环节
注意事项:1、不要问和职位不相关的问题 2、不要问薪水 3、不要打听面试结果 4、推荐问与招聘的职位和项目相关的问题,或者面试官提到的相关的内容

浙公网安备 33010602011771号