入职四个月后,我当了一回面试官,面试了一名二本院校学生,结果。。。。

简历

1.首先说说简历,好多人都问过我,乔哥,进入bat这样的大厂是不是学历都需要211,985 其实,不是的,这次我面试的这个同学就是二本院校出生,我身边认识的 苦逼的码农 和 编程剑谱 的号主都是二本出身,也都拿下了BAT的offer,所以BAT这样的大厂并不是一定要211,985学历。继续说回到这位同学吧,这位同学虽然是二本,但是简历还是通过层层筛选,进入到了面试环节,肯定有一些过人之处。我看了看这位同学的简历,果不其然,还是很有料的。

我感觉可以用 光鲜亮丽 这四个字来形容,这位同学获得过蓝桥杯省赛一等奖、蓝桥杯国赛二等奖、计算机web大赛(具体名字忘记了)国赛一等奖、校级奖学金若干,在学校经历方面计算机团委、班长等(虽然这些经历对于技术面试并没有什么作用,但是还是可以看出来是个很积极的同学),熟悉掌握Java等之类的。

看完以后,首先是觉得这同学这经历可以,虽然蓝桥杯不如ACM有含金量,但是能拿省赛一等奖应该编程功底不差吧;另一方面也想了想HR的筛人标准:对于学历非985/211的学生,应该在某一方面有比较亮眼的成绩,简历筛选应该就不是问题吧。

约面试

看完简历后,就是约面试了,leader让我约面试,电话面试就行,但是我想得还是视频面试一下,也能看看在线编程,所以我自己去牛客网认证了一下,成为了牛客网的面试官,可以发起视频面试,可以看到面试者手写代码,也可以看到面试者有没有切出去浏览器界面,正常面试者应该不会频繁切除当前的视频面试界面,作用还是很大。

undefined

•这是面试官的界面,主要讲讲在线编程题,面试官可以自己出题,也可以从牛客网的题库里面选一道题目出给面试者;•右下角的文字框可以输入文字,让面试者看见•右下角的输入框上面的框会提示面试者的浏览器状态,如果面试者切出去了当前页面,那么这里会提示面试者离开了当前页面。

面试

自我介绍和项目亮点

照例让面试者进行了一波自我介绍和项目亮点,这里建议大家自我介绍的时候尽量说一些和技术相关的,不要说一些和技术无关的内容,这位同学在面试时候说了自己的班委团委经历之类的,其实我是不感兴趣的,毕竟是招来做开发的,技术OK就行。

undefined

项目这里我问了问这名同学有什么亮点,(这个问题基本大多数面试官会问),这里他没说任何技术上的亮点,感觉只说了一些项目的背景,提出这个想法很好,这里感觉这样说不太好,这可是技术面试,说些技术上的亮点比较好。

具体思路可以参考一下这篇文章:可以作为你项目亮点的文章!

面试题

毕竟是第一面,主要还是考察计算机基础知识:计算机网络、操作系统、数据库、Java基础、Java集合、JVM虚拟机、Linux、手写算法这些。所以看他项目没啥说的,我就直接开始问这些了,这些如果答得好的话,基本一面是OK的。

我问的问题基本能是我之前准备面试的时候整理的别人面经上的问题,并自己总结了一份答案,具体这份面经和答案已经同步到我的的github:https://github.com/gzc426/Java-Interview (记得给个Star),掌握我这个github上的内容,不说我这一面了,99%的公司一面都难不倒你。

画外音:求求您给个Star吧!

undefined

Java基础

我首先问了Java基础,八种常见数据类型、拆箱封箱、重载和重写、String和StringBuffer/StringBuilder的区别、Object的方法/EQUALs和==的区别等都回答的不错,然后我问了int和Integer在输入框输入了一道题,让他做一下。

Integer a = new Integer(100);Integer b = new Integer(100);a == b

问他a和b是不是相等,他说相等,当时我内心OS:???

undefined

我就想问问他是怎么想的,我就说:“嗯,为啥是相等?”,他说,Integer是有个缓冲区(-128~127),100在这个缓存区以内,所以是相等的。

我当时就说:你再好好想想,然后再回答这个问题。(其实我这么说,是想让他说出正确的答案),如果面试官让你说你再想想,要想想自己是不是刚才说错了,因为我觉得这个问题,不应该搞错呀。

然后他又继续说了一遍刚才的回答,没有说出正确答案,然后我就和他说这个两个不相等,是比较的两个对象的地址,这里我有点失望。

undefined

OK,继续问问HashMap ,依次问了HashMap的原理、get、put方法、JDK1.7和JDK1.8的区别,回答的都不错,然后问了HashMap为啥是线程不安全的举个例子说明一下,没回答上来,那HashMap翻篇,这块还行。

继续问了ConcurrentHashMap,他说这块还没了解,OK,那Java这一块先这样吧,问点Linux、计算机操作系统、数据库、计算机网络吧,Java基础这一块还行勉强OK。

计算机基础

Linux

我:Linux 怎么打开一个文本 他:vi 我:怎么进入编辑模式进行编辑?他:这块之前用过,现在忘了。。。

到这里,感觉他应该很长时间没用过Linux了,或者之前就没接触过Linux,这么基本的都不知道的,真的太伤了。

我继续问:怎么查看CPU,还是不知道,我继续问怎么查看内存,也不知道,怎么查看文件大小,还是不知道,看来Linuyx这一块真的是很欠缺,这都很基本的了,也没问啥复杂命令。

这里和大家要说的是,Linux基本大多数公司开发的时候都会用到,不会Linux的话一定要去学一学,这些Linux命令不会真的可能会让面试直接失败。

刚好最近双11,阿里云有活动,云服务器新用户只需要7元一个月就可以购买了,云服务器可以学习Linux搭建Web网站,拼团进入前100还可以瓜分100W现金,目前我的团已经在前100了,想买云服务器的可以扫码进入我的团,如果进入前100瓜分成功,我会联系加入我入团的朋友返红包给大家

画外音:原创不易,就当加个鸡腿吧~

计算机网络

好的,继续回来,既然Linux这块什么都不会,那问问其它的吧。

我:问点计算机网络,三次握手和四次挥手说一下

他:三次握手就是建立了连接,发送了三次,四次挥手就是断开连接。

我:能具体些吗?说一下状态,连接时候发送的SYN值的情况?

他:这个不知道。

这里和大家说的是,三次握手和四次挥手真的是面试必考的了,过程一定要熟悉,能在纸上完完全全的画出来的那种程度

我:为啥要三次握手不是两次握手和四次握手?他:四次握手成本高,没必要,两次握手不了解。

嗯,这里之前有写过文章,这篇,【漫画】TCP连接为什么是三次握手,而不是两次握手,也不是四次握手?

我:状态码3XX、4XX、5XX

他:不了解。。。

我:OSI七层说一下

他:七层不了解。。。。

操作系统

这块问了进场和线程的区别,同步异步的区别,都回答得不错,问了阻塞和非阻塞,没回答上。

数据库

问了ACID,这个竟然不知道,问了索引是什么,也不知道。。。。

问完计算机基础以后,感觉他计算机基础这块掌握的太差了。

手写面试题

看他简历上是得过蓝桥杯国赛二等奖,那么考一道手写算法题吧,我也没出很难的,出了一道合并两个排序链表。

然后他写了半个小时,也没写出来,好吧,那面试就到这里结束吧。

最后

要关闭页面的时候,我突然发现这些,额,在我和他面试的一个半小时期间,他大概切出去了这个面试页面有100多次

不知道他切出去页面干什么去了,咋也不敢说咋也不敢问,建议大家不要切出去页面,面试官都会看到的,反正切出去页面印象肯定会不好的。

如果他计算机基础能回答得不错,手写面试题能写出来,我这里会给他通过的。

本文分享自微信公众号 - 程序员乔戈里(CXYqiaogeli)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏搜云库技术团队

常问的15个顶级Java多线程面试题

在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分。如果你想获得更多职位,那么你应该准备很多关于多线程的问题。

10530
来自专栏业余草

面试再问ThreadLocal,别说你不会

以前面试的时候问到ThreadLocal总是一脸懵逼,只知道有这个哥们,不了解他是用来做什么的,更不清楚他的原理了。表面上看他是和多线程,线程同步有关的一个工具...

6910
来自专栏Crossin的编程教室

【Python 第75课】可迭代对象和迭代器

for 循环是我们在 Python 里非常常用的一个语法,但你有没有思考过 for 循环是怎样实现的?

10520
来自专栏Java识堂

帮你少写一大半参数校验代码的小技巧

几乎每个web网站都会对用户提交的参数进行校验,前端要做,后端也要做。防止用户直接通过接口调用的方式来请求或保存数据,从而导致产生脏数据等其他严重的后果。

10420
来自专栏Java3y

慌了!面试官又拿JVM开怼!

对于Java人来说,JVM无疑是进阶时必须迈过的坎。不管初入职场还是跳槽升职,JVM更是面试时的必考题。如果不懂JVM的话,薪酬会非常吃亏(近70%的面试者挂在...

8440
来自专栏丑胖侠

面试官,Java8 JVM内存结构变了,永久代到元空间

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

10660
来自专栏芋道源码1024

一个 Java 对象到底有多大?

编写Java代码的时候,大多数情况下,我们很少关注一个Java对象究竟有多大(占据多少内存),更多的是关注业务与逻辑。但是殊不知,在我们不经意间,大量的内存被无...

10410
来自专栏码洞

每个阿里程序员都必须搞懂的Maven基础知识

以前我们写代码时,jar包都默认放在一个叫 /lib 的目录下,然后把该目录设置为classpath可以读取到的目录,如下图所示:

9320
来自专栏北京宏哥

Java自动化测试框架-04 - TestNG之Test Method篇 - 道法自然,法力无边(详细教程)

测试方法是可以带有参数的。每个测试方法都可以带有任意数量的参数,并且可以通过使用TestNG的@Parameters向方法传递正确的参数。

13020
来自专栏JAVA杂谈

Java日志Log4j或者Logback的NDC和MDC功能

Java中使用的日志的实现框架有很多种,常用的log4j和logback以及java.util.logging,而log4j是apache实现的一个开源日志组件...

15120

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励