在IT行业中,大部分公司很难用有效的方式招到合适的人。
直接暴露出来的问题是:
・花重金招了一个人,但实际的战斗力还比不上应届毕业生。
・招聘了一个知名企业的高管,引入了一些高大上的技术,结果本来稳定的生产系统问题频发,大部分时间用来改善架构和管理方法。
・面试时候面面俱到,但实际工作能力却相差甚远。

正是由于大部分公司很难有有效的招聘方式,于是出现了按学历,工作背景,当前薪水等硬性条件来筛选候选人。
但这只能说根据这些条件大概能招到合适的人。还是无法解决一些人混入公司甚至危害公司。

我把程序员分为两种。真程序员和假程序员。
软件开发分为应用和研发。
拿应用来说:
一个新框架,新语言,一门业务,一种管理方法,某项技术的学习达到应用的目的话,真程序员最多一个月即可,假程序员可能半年都未必掌握到精髓。

也就是说真程序员的生产性和假程序员的危害性是我们不可想像的。

所以,整个面试过程应该围绕区分真假程序员来进行。
1.对于见过和没见过的问题和概念性的问题,很容易被假程序员利用并借题发挥,所以面试中应避免问这类问题。
比如:
说一说对某个流行框架的理解。
生产环境遇到过什么问题,是怎么解决的。
有没有遇到过某某问题。
用过某某语言没有。

2.为了研究源码而研究源码,这种人对公司有一定的危害性。
应该避免问如下问题:
研究过什么开源框架,看过那些源代码。
有没有博客,地址是什么。

3.避免问一些非连续的问题。
比如:
HashMap和HashTable有什么区别。
Servlet是否是线程安全的。
JavaScript是如何实现面向对象的。

因为上述问题如果做针对性的准备的话,不需要超过一周的时间即可对答如流,而我所说的假程序员会经常在上班时间关注这些与工作不相干的事情,
甚至利用公司资源去试验新技术。

要知道技术不在新,够用即可,如果对[够用]这两个字的把握不到位的话,那必然是没日没夜地加班干活。

所以,应该针对大小系统都用的共通的技术,问一些连续性的问题,并且针对这些问题多问几个为什么。
因为对[为什么]回答的比较好的人,我认为创造性和兴趣是很好的,IT行业需要的就是这种人。

比如这样展开问题:
1.说一说添删改查的流程。(别笑,系统中大部分的操作都是围绕着这个过程来进行的,包括高并发和大数据。你笑,说明你还不行)
好的回答会用最简单语言描述从浏览器到数据库的全过程。
而对于掌握高大上技术和面试技巧但却不能说出一个简单的添删改查的流程的人来说,直接筛选掉即可。
因为公司的大部分业务都是根据这条线展开的。

2.纵向扩展浏览器到数据库这条线遇到的问题,解决方法,多问一些为什么。
比如:
数据库的连接在哪里管理,为什么要在那里管理。
Service对象是否是单例还是多例,为什么。
单例的话,怎么保证多个请求不共享一个事务。
。。。
从数据库问到浏览器,好的回答会思路清晰。

3.横向扩展浏览器到数据库这条线遇到的问题,解决方法,多问一些为什么。
比如:
遇到多个人更新同一条记录的时候怎么办,如果在集群环境中怎么处理。
数据量增大到一定程度时怎么办,如果在集群环境中怎么处理。
请求数增大到一定程度时怎么办,如果在集群环境中怎么处理。
。。。
从数据库问到浏览器,好的回答会思路清晰。

4.考察解决问题的能力和经验(问所有系统都会遇到的问题)。
比如:
如何定位生产环境中内存溢出的问题,如何解决它,如何避免它。
如何定位生产环境中的性能问题,如何解决它,如何避免它。
。。。
好的回答会思路清晰。

5.软件工程(一定要问,这关系到工作中对团队协作的认识,不解释)
考察软件工程最直接的方式是针对如何控制软件质量,成本来展开的一系列问题。
比如:
说一说你认为如何控制软件的质量。
。。。
好的回答会把软件工程的各个阶段对软件质量有影响的问题,解决方法都说出来,针针见血。

6.业务(一定要问,这关系工作态度和解决问题的能力)
比如:
说一说你目前开发的系统的业务流程。
好的回答会简单,明了。

7.基础
这个不多说,大家都会。尽可能多问为什么,比如为什么要用继承,为什么不用静态方法等。

8.上述问题都回答完毕后基本上可以给面试者打分。
0分,10分,20分,50分,70分,80分,100分等。

非有效的面试只能给面试者打0分或100分,也就是告诉人事行还是不行,具体行到什么程度,哪里最行,哪里最不行都不能提供明确信息。
有效的面试是可以给面试者一个0分到100分之间的分数,对面试者有个综合评价,处在什么位置,优点,缺点,适合什么职位,风险等。

虽然上面的问题都是基础题,但可以筛选出假程序员,并且大致确定真程序员的水平。
剩下的问题可以根据公司需要,问一些实际问题。

版权声明:本教程版权归java123.vip所有,禁止任何形式的转载与引用。

原帖发表于:http://www.cnblogs.com/java123vip/p/9002247.html

Java面试与回答技巧(1.如何正确的面试)的更多相关文章

  1. Java后端面试的一切技巧和常见的问题经验总结

    原文地址:cnblogs.com/JavaArchitect/p/10011253.html 上周,密集面试了若干位Java后端候选人,工作经验在3到5年间.我的标准其实不复杂(适用90%小小小公司, ...

  2. 面试的65个回答技巧-适用于BAT公司

    互联网职业群分享的资料,里面大多是BAT公司的人,很多是猎头.这些技巧对于职场人来说,是非常宝贵的. 1.请你自我介绍一下你自己? 回答提示:一般人回答这个问题过于平常,只说姓名.年龄.爱好.工作经验 ...

  3. 最近面试java后端开发的感受:如果就以平时项目经验来面试,通过估计很难——再论面试前的准备

    在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间.我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面 ...

  4. Java面试总结 Boss沟通过:500+,面试:20,已投简历130+

    1 概述 1 介绍 最近换工作,对最近面试的过程进行总结,总结每个公司的面试流程和问到的面试题,记录自己,也供大家参考. 我是一名Java开发,工作经验10年,所以面试一名高级Java开发工程师. 简 ...

  5. Java Web架构知识整理——记一次阿里面试经历

    惭愧,从一次电面说起.我个人在某国企做一名软件设计师,国企大家都懂的,待遇一般而且没啥意思,做的方向基本都是操作系统.驱动和工具软件的开发,语言基本都是C/C++.最近也想跳槽,刚好有幸得到了一次阿里 ...

  6. 剑指Offer——“你最大的缺点是什么”回答技巧及范例

    剑指Offer--"你最大的缺点是什么"回答技巧及范例   问题分析:认识自己的缺点是一个巨大的优点, 当HR问到你缺点的时候, 你的机会来了, 请快展示你的自知之明吧!你想把优点 ...

  7. 两年Java程序员面试经验分享,从简历制作到面试总结!

    前言 工作两年左右,实习一年左右,正式工作一年左右,其实挺尴尬的,高不成低不就.因此在面试许多公司,找到了目前最适合自己的公司之后.于是做一个关于面试的总结.希望能够给那些依旧在找工作的同学提供帮助. ...

  8. OMG,12 个精致的 Java 字符串操作小技巧,学它

    字符串可以说是 Java 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位.不得不承认,最近吐槽大会刷多了,脑子里全是那些段子,写文章都有点不由自主,真的 ...

  9. Java 常用类库与技巧【笔记】

    Java 常用类库与技巧[笔记] Java异常体系 Java异常相关知识 Java在其创立的时候就设置了比较有效的处理机制,其异常处理机制主要回答了三个问题:what,where,why what表示 ...

随机推荐

  1. 存储那些事儿(五):BTRFS文件系统之Btree结构详解

    Btree数据结构可以说是BTRFS文件系统的基础.它提供了一个通用的方式去存储不同的数据类型.它仅仅存储3个数据类型:key, item和block header. btrfs_header的定义如 ...

  2. 如何通过rsync+sersync 实现同步备份

    3.rsync+sersync更快更节约资源实现web数据同步4.unison+inotify实现web数据双向同步 一:为什么要实现同步备份 服务器上有些重要文件或数据时,可以把他们多备份一份到其他 ...

  3. 四大组件之Service小结

    总结提高,与君共勉! 1.Service是什么 Service 是看不到界面的,,就是一个没有界面的Activity, 并且长期在后台运行的一个组件.. 由于ANR对Activity和Broadcas ...

  4. 网站开发进阶(三十七)JSP页面跳转问题解决

    JSP页面跳转问题解决 PS:本篇博文质量欠佳,仅供个人学习之用. 前言 在做Web开发时,对别人的应用(jsp+servlet)进行服务器部署时出现了页面跳转无效的情况.但是项目在本地未出现此状况. ...

  5. 我眼中的Linux设备树(一 概述)

    一 概述设备树(Device tree)是一套用来描述硬件属相的规则.ARM Linux采用设备树机制源于2011年3月份Linux创始人Linus Torvalds发的一封邮件,在这封邮件中他提倡A ...

  6. oracle中去重复记录 不用distinct

    用distinct关键字只能过滤查询字段中所有记录相同的(记录集相同),而如果要指定一个字段却没有效果,另外distinct关键字会排序,效率很低 . select distinct name fro ...

  7. (NO.00003)iOS游戏简单的机器人投射游戏成形记(十五)

    在Xcode中打开Robot.h文件添加如下2个方法: -(void)moveArm:(MoveDirection)direction; -(void)armShoot; 在Robot.m中实现这2个 ...

  8. 小知识点BeanUtils.copyProperties

     通过BeanUtils.copyProperties可以时间拷贝对象中的值,下面的new String[]{"cid","agreeFlag"," ...

  9. Linux 学习笔记_12_文件共享服务_4_SSH

    SSH文件共享服务 一.ssh远程登录[一般的Linux系统都会默认安装并启用] 1.Linux上远程命令行登录:ssh 用户名@远程主机IP地址 常用选项: -2:表示SSH2,强制使用第二代SSH ...

  10. Dynamics CRM2011 通过DeveloperToolkit在VS中部署遇到的问题

    接上一篇继续,说个在部署的过程中我遇到了个问题:"Error registering plugins and/or workflows. Plug-in assembly does not ...