各位大哥,你们面试别人的时候有没有那种特别经典的,能简单的甄别出一个程序员的能力的面试题

2018-08-13 16:58:50 +08:00
 zzf2017

小弟是要去面试 java 程序员的,这是我的第一次面 java 的,不知道怎么才能选出一个合适的 java 开发,题目不用太难,我们公司只要找个不坑的就行,网上的面试题要不太基础,要不就是太难了。

17582 次点击
所在节点    Java
120 条回复
woodface2233
2018-08-13 20:54:07 +08:00
@ala2008 是,8 个字节么?还是 32 个 bit ?
yanaraika
2018-08-13 20:56:14 +08:00
1. what happened when you open v2ex.com 。为了防止背答案问一些如果某某环节出现特殊情况会怎么处理。
2. 找点 implementation 的算法题让对方写,简单的 Regex match 之类的
pipapa
2018-08-13 21:03:12 +08:00
@woodface2233 32bit 是 4 個字節
woodface2233
2018-08-13 21:18:44 +08:00
@pipapa 朕知道的
learnshare
2018-08-13 21:19:35 +08:00
不考任何技术细节
给实际问题,让他自己思考并解决,顺带坦白了自己的经验和能力
bhagavad
2018-08-13 21:41:08 +08:00
瞎扯蛋说下我的面试流程吧:

面试前:

先看简历,了解对方的基本情况;如果有 github 或者博客的,就看一下对方的具体代码及知识结构;如有上线的产品,把感兴趣的以及有问题的地方都记录下来,面试的时候当面问。

面试中:
从流程来讲:
1、面试官自我介绍及介绍公司概况
2、让面试者自我介绍
3、根据面试者详细介绍自己的项目
4、结合简历询问相关问题
5、QA

从技术角度:
1、基本的编码能力:比如写个单链表翻转
2、基本的数据结构知识:链表、数组、List、Map 等
3、基本的操作系统知识:进程通讯、线程通讯、线程安全等
5、基本的网络知识: http、socket、websocket、poll、epoll 等
6、具体的专业知识:比如 Android 工程师就要问些 Android 的基础知识

除了笔试外,面试都是结合简历来问的,一步一步往下走,然后具体到知识点,看一下面试者对于自己写的代码的熟悉程度。比如 Android 常见图片展示列表->三级缓存->HashMap->线程安全->线程通讯->Handler 等。面试的过程中沟通能力、表达能力、团队协作能力等都是可以看出来的。

面试从来不应该是单方面的面试,作为面试官,面试过程中你代表的是公司,不仅仅是你在面试对方,也是对方在面试你的公司,所以要尽可能保持对等的态度。而且面试过程中也是一个互补的过程,你可以通过面试去了解对方的优势。作为面试官,也不要怕被问倒,当然有一些技术性的方式规避,大方承认也是一个不错的选择。

要保持对公司、对面试者负责的态度,要提前看对方的简历。我基本是拿到一份简历要看十分钟以上,面试大概是一个小时的时间,一个面试者基本要花费一个半小时的时间。你提前做没做准备,面试者是能感知到的。
qilishasha
2018-08-13 21:45:29 +08:00
直接看作品就可以知深浅,那些说得头头是道的还是去做销售吧
soden
2018-08-13 23:21:33 +08:00
大家可能太专业了,我的话我会先问问常去的网站,
像普通的可能就是跑跑 CSDN,博客园,抄抄代码就没了,
有点想法的会去掘金,思否,开源中国等,
稍微搞过代码托管的也说得出 gitee,github,gitlab

如果比较有能力会去用 google 而不止百度,StackOverflow 这些得知道
后面再问问懂不懂 Linux,喜欢哪个发行版,为什么.

这些都可以聊得来的话,我相信他不会是一个愚蠢的码农.
不知道其他 v 友怎么看
imfannet
2018-08-13 23:45:43 +08:00
@soden 按这个问法。。。我这种啥都不会但是你说的地方都经常逛的辣鸡会不会。。。QAQ
watzds
2018-08-13 23:51:25 +08:00
那些算法题,我是写不熟练的,但是当年校招也能通过腾讯、网易面试,没怎么问算法。

这东西也不难,只是本人不属于记忆清晰,头脑敏捷的人。但是就是能把项目做好。
xieranmaya
2018-08-14 00:02:49 +08:00
多级排序,然后扯一下排序稳定性
试验过效果很好
问一些底层的也不错,比如楼上 人说的 int 几个字节,秒过滤培训班的。
还有我觉得可以问问数据结构,不用太难,就几个基础的就行
x86vk
2018-08-14 00:13:47 +08:00
被某家公司问过一个:设计一个不需要高亮的编辑器的数据结构,要求:

1. 在大部分情况下,能在 1kB 内存中编辑 768 个字符

2. 在满足条件 1 的基础上,越快越好。

设计出后再写出插入字符的代码。
ETiV
2018-08-14 00:27:29 +08:00
Java 就当是后端开发吧~

后端的话,我认为「不坑」的标准就是知道比如 MySQL 查询为什么慢(索引怎么用、为啥某个 SQL 没有用到索引)、Redis 查询为什么慢或者炸(各个数据类型的利弊、单进程)、怎么设计数据落地还能保证数据一致性不出问题

然后就是 Java。除了考察逻辑和编码能力,还要问问经常用的 XX 框架已知的坑怎么避免,安全性如何,blahblah~

可以问问简单又不常见的算法,让他在 sublime 里写一下。
lightening
2018-08-14 00:44:59 +08:00
Web 行业。
从你按下页面上这个链接,到你看到新页面的内容时间,发生了什么?
前后端可以有侧重,觉得需要重点考察的可以在他说的后问得深入一点。不过,大部分人根本说不完一个闭环。
icyalala
2018-08-14 02:23:09 +08:00
@glacer @zzf2017 面试二叉树已经算一个梗了吧。。
当年 Max Howell 去 Google 面试,翻转二叉树白板写不出来被拒了哈哈哈。。。
cxh116
2018-08-14 07:35:36 +08:00
@cncqw 字符编码与乱码是编程中很常见的问题,问了区别,你还可以问其它的字符方面。比如第三方系统用的是 gbk 编码,它提供的接口参数也需要是 gbk 的,在调用它的时候,还需要把参数按参数名的字典序排序,然后再以 query string 格式取得 md5 摘要,请问以你熟悉的语言你大概会怎么处理?
KgM4gLtF0shViDH3
2018-08-14 08:01:06 +08:00
人多就往难了问
simonguo
2018-08-14 08:27:29 +08:00
我一般的流程:
1.笔试考察基础功
2.面试,出一两个逻辑题考察反映能力和思维逻辑能力
3.面试,根据简历上写的精通,项目中的经验深入的问,考察经验及知识面

其他人品相关测试就交给人事去问。
nicholastsao
2018-08-14 08:31:13 +08:00
@ala2008 培训的不讲 int 多少字节?哪看的
yidinghe
2018-08-14 08:32:43 +08:00
机试,写得出程序比什么都重要。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/479401

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX