面试时,问哪些问题能试出一个Android应用开发者真正的水平?

    |     2016年1月7日   |   面试   |     0 条评论   |    1202

面试短则 30 分钟、长则一小时,想全面考察很难。不必只围着“问什么题”转,先把准备、考察点和反馈写清楚,再落到 Android 具体问题上。


一、面试前的准备

1. 简历调查

简历到手先调查分析:对公司负责,也是对双方时间的尊重。明显不 match 就别抱着“要不喊过来试试看”。要想清楚现在要的是可培养的潜力,还是马上能干活的人。简历里有博客、GitHub、作品,提前看——多年积累的文章和代码,比这一小时面试靠谱得多。

2. 准备问题

摸清背景后,按简历准备问题:作品或项目里某个技术细节,或他声称精通的领域。别等到面试中现想,尤其刚开始面试别人时,紧张容易短路。把要问的写下来。


二、考察哪些点

1. 简历是否真实

面试第一要务是核简历。能到这一轮,说明纸面已符合要求;如果真如描述那样,几乎就会招。真实有三层:

  • 如实描述经历。很多人在大项目里只是螺丝钉,简历却写得很满。
  • 不知道自己不知道。简历里各种“精通”,其实只是浅尝;他未必在说谎,只是井底之蛙。
  • 真实要跟你的期望匹配。精通没有统一定义,只能是候选人与面试官标准之间的契合。面试也是双向选择。

2. 技术的深度

深度最重要。任何一个领域都够宽,不可能样样深入。做过、正在做的东西,绝对可以挖深。有好奇心的人不会停在“挺好用”,会去看原理或别人整理过的经验。单凭深度,就能看出有没有热情。一句话:一个人对他所做的事情了解得越深,就能做得越好。

3. 技术的广度

深度是必要条件,广度是加分项。优秀程序员也不会只守着一亩三分地。知道与不知道,对知识体系差很多:你用熟悉的技术搞得很痛苦,同事一句 SQL 就解决了。知识越广,同一问题能想到 N 个解,再挑最优。从 0 到 1 难,常常是视野问题。

4. 逻辑思维能力

不是脑筋急转弯,而是表达是否有章法。话经过整理再出口,对方很容易明白。这习惯装不出来。逻辑清晰又反应快、语速稳,是大大的加分项。


三、具体问哪些问题

1. Android 经验

非校招,Android 经验是必须的。喜欢问基础概念和原理:Activity、View、Window 的理解,各 LaunchMode 的使用场景,View的绘制流程,Touch事件机制,Android动画的原理,Handler, Looper的理解,跨进程通讯、Binder、Android Mashup 设计等。

2. Java 水平

基本上是 Effective Java 那本书里的东西。也会问 final、反射、注解、编译过程、GC。

3. IT 基础知识

科班课上那些常识。校招是重点,社招会放宽,但 HTTP GET/POST 区别、HTTPS 的 S、进程与线程、二分算法,不该答不上。不是科班出身不重要,没这些概念以后没法交流。

4. 代码质量的认识

需要对代码味道有感觉,《Clean Code》够用。可以让他聊对代码质量的认识;只能提到命名风格的,不符合要求。也可以在写代码环节观察。

5. 技术视野

Android 新技术,以及其他流行领域——还是广度。很多非互联网公司因为规定和技术氛围,视野很窄。2011 年还在传统行业时,公司不让上网;想跟同事聊 Android,发现他们居然不知 Android 为何物。后来转战移动互联网,没有后悔。

6. 技术想象力

深度和广度够了、知识成体系,没碰过的领域也能做出合理想象。可以问:“你觉得这个东西应该是什么原理?”“这个控件要你来做,你会怎么实现?”

7. 技术习惯

快捷键、命令行、提效工具;碰到问题是百度还是 Google;有没有做小工具减少重复;业余看什么书。这些细节很大程度上决定开发效率,也是“一个优秀程序员抵得上 100 个普通程序员”的原因之一。

考察点 权重 怎么问
简历真实 第一要务 对照项目细节、博客和 GitHub
深度 必须 正在做的东西挖原理
广度 / 视野 加分 相邻领域、新技术
Android / Java / 基础 岗位门槛 Activity/View/Handler、Effective Java、HTTP

四、面试后的反馈

面试一般不止一轮,要给出反馈,多轮一起考量、减少误判:

  1. 面试纪录:尽量客观,让别人知道你问了什么、答得怎样,也避免重复提问。
  2. 优点与缺点:亮点有哪些,哪里不够好。
  3. 综合评价:hire / no hire 的根本原因;没考察清楚的,写上请下一轮加强。

怎样才给通过?每人有自己的 bar,可直观考量的有:岗位要求(校招与社招不同);岗位紧急程度;候选人年龄与成长速度;技术深度必须有,广度也要一些;要有亮点——问题很多但有一个足够的亮点也够了。

说了这么多,最重要的就是一句:你真的愿意跟那个家伙一起并肩战斗吗?

原文出处:汤涛(@星星D灯)

一句话总结:先核简历真假,再挖正在做的东西的深度;题可以准备,但最终标准是你愿不愿意跟他一起干活。

转载请注明来源:面试时,问哪些问题能试出一个Android应用开发者真正的水平?
本文链接地址:https://ai.zhousir.top/?p=1121
回复 取消