android开发之路07(无硝烟的战争)
如何做一名优秀的android面试官?
如何做一名优秀的android候选者?
提到这个问题我不得不提起我们小升初,初升高,高生升本这几个历程中我们与出题人之间的无硝烟的战争。我们总是为自己的成绩担心,难道现在走向社会了这个情况不见了吗?很显然,并没有。那就是我们要面对的HR,这个群体负责在我们入职之前给予我们考核和评价。问题来了?我们如何才能在自己能力还行的情况下,成功接到offer。我个人的习惯,还是应该先了解HR在想什么,最后才是我们该怎么想。那么,就来看下HR在面试前他们需要考虑的问题(俗话说:知己知彼百战不殆)
因为本人不是一名HR,所以我经过整理,找到了一些关于如何面试他人的方法:
1.简历筛选
HR角度:看到简历之后,我要做好充分的调查分析,这是对公司的负责,也同样是对自己负责,因为这是我的职责。因此,我会在众多候选人中选择我最中意的那个。首先,应该从他的身上我可以看到和我们公司职位匹配的能力,在其次就是看他的个人情况,评判其到底是不是一个有潜力可以在我们公司培养的人才。或者,公司如果只是想找一个过来直接能干活的人,那么我应该去仔细翻阅这个人的简历,看看简历上是否有他的博客地址,或者GitHub地址,如果有,我就在面试之前去仔细查看。看看候选人的文章,和写的代码。做一个初步的判断,在接下来的面试过程中才可以有针对性的提问。
候选者角度:在制作简历的时候还是应该实事求是,会什么就写什么,不要只是为了美观,或者其他所谓的利益关系,而弄虚作假,这其实是在作死。因为HR不是傻子,当HR通过考量之后发现我作假,那么估计我在这家公司是没机会了。那么我该怎么做呢?我应该在简历中突出自己的重点技能,总不可能连突出的都没有吧!那么,我不适合干这个行业,还是回家养猪吧。。。所以自己的简历在自己的所有技能中有重点的突出个体,并附带自己的项目(这个难道没有?),那肯定是不可能的,如果没有,那就证明自己就对这个行业没有激情啊,那还进软件公司做什么?连个自己钻研过的东西都没有,这真的对吗??所以这一步,我最需要做的就是求真务实,对自己会的知识要熟练,对自己的项目架构及设计要能知其然并知其所以然。
2.技术面试:
项目经理角度:虽然我的技术水平已经很不错了,可是在面试的时候,我也不能总是问候选人我最擅长的领域,毕竟公司,总不能招的人都是一个模子刻出来的吧,每个人都有自己的优势,所以在面试过程中重点应该是在短时间内获取候选人特长,看这个特长是否真的和本公司提供的职位匹配。那么,开始提问?如果,候选人连自己描述的擅长的领域都不能讲清楚,那么就可以直接pass掉了。如果,他回答的很漂亮,那么接下就可以找几个比较有深度的技术问题去考考候选人。如果候选人没能回答出来,那么也没什么大不了。我可以好好观察下候选人的状态,因为一个稳重的人,是不会表现出胆怯和急躁的。就算他答不出来,也会很轻松的过度过去。看看他接下来会怎么圆场。这样也能反映出一个人的思维敏捷程度。还有就是在整个面试过程中多注意候选者的言谈举止,如果这个候选者语速得当,且能把问题讲的很清楚,那么应该是个人才。如果在面试过程中还能在交谈过程中让我眼前一亮,那么没有什么大的问题,offer肯定是给这位候选者了。
候选者角度:作为一名候选者,最担心的也就是这个环节了,因为担心自己表现不佳。其实,不需要担心,既然我来面试了,证明这家公司看了我的简历,他们需要我这样的人。那么我在面试过程中就要淡定,心态放好,从容的应对即将到来的问题。还有就是我的工作经验写的很清楚,所以他们总不会问一些太过于深奥的问题,所以我要自信。把我擅长的表达出来,让他们看到我的价值。他们问我基础的为问题,我没问题,问我项目,同样没问题,因为我是好好的去钻研过的。面对不会的知识,我就所我不是特别熟悉,可以反问面试官?这个在项目具体开发中是用来做什么的?等他回答完了之后,我就找一个类似的我熟悉的知识过度过去,然后告诉他编程都一样,你刚才讲的和什么什么不是都类似吗,如果你们真的在开发中会经常用,那么我花点业余时间,自学就没问题了,毕竟这个东西确实不难啊。回答到这里(在这个过程中要表现出沉稳和淡定,不要过度,表现的太过于傲气,估计适得其反),然后继续接下来的问题会答。。如果我在之前我熟悉的问题回答的漂亮的情况下,这个offer估计是稳了。因为面试官,从整个面试过程中,可以看到我掌握了的知识的熟练,并且也看到了我对待难题的态度,以及我对待技术的激情。
3.面试问题:
HR角度:
①Android经验:如果不是校招,Android经验是必须的,我比较喜欢问一些基础概念与技术原理,比如Activity,View,Window的理解。各LaunchModel的使用场景,View的绘制流程,Touch事件机制,Android动画的原理,Handler,Looper的理解,Android跨进程通讯的方式,Binder的理解,Android Mashup设计的理解等等。
②java水平:基本就是Effective java和Think in java里面的重点知识。比如:考察final用法,反射原理,注解原理,java编译过程,GC等一些常见的问题。
总之这个阶段接就是问一些比较典型的问题?找一些稍微有深度的问题问。
候选者角度:面对这个问题,我想能做的就是对知识不能总是停留在表面,应该根据时间合理的深入了解。这也是成为大牛程序员的必经之路,同样也是能够进入理想企业的最合理的应对策略。
这篇文章就写到这里了,毕竟每个人的性格都不同,经验也层次不齐,所以我只是说了一个大体的方向,具体怎么做,我想大家心里早已明白,不管你是一位HR,或是面试者,都希望我们能够认真做学问,做实践。不要过多的在意外界,你若盛开,清风自来。我相信未来总有一天,我们中国的软件开发者能够走在未来世界的前端 ! !
android开发之路07(无硝烟的战争)的更多相关文章
- Intent的七大组件——Android开发之路5
------Intent------ Android中三个核心组件——Activity.Services.BroadCastProvider都是通过Intent传递参数. startActivity( ...
- android开发之路11(用SharedPreferences存储数据)
Android平台给我们提供了一个SharedPreferences类,实际上SharedPreferences处理的就是一个key-value(键值对),它是 一个轻量级的存储类,特别适合用于保存软 ...
- android开发之路09(浅谈SQLite数据库01)
1.SQLite数据库: SQLite 是一个开源的嵌入式关系数据库,实现自包容.零配置.支持事务的SQL数据库引擎. 其特点是高度便携.使 用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同, ...
- Toast显示图文界面——Android开发之路1
Toast的多种使用方法 Toast其实是一个功能特别强大的组件,不仅仅可以吐司一个文本内容,还可以吐司图片以及图文混排的界面.具体用法如下: 第一种:简单的纯文本内容的吐司: Toast.makeT ...
- 菜单(Menu)的三中创建方式——Android开发之路2
菜单的三种创建方式 一.OptionsMenu---选项菜单 Android应用中的菜单默认是隐藏的,只有当用户点击手机上的MENU键,系统才会显示菜单.这种菜单叫做选项菜单(Options Menu ...
- Android中隐藏顶部状态栏的那些坑——Android开发之路3
Android中隐藏顶部状态栏的那些坑 先看看常规的隐藏状态栏的方法: 方法一: @Override protected void onCreate(Bundle savedInstanceState ...
- Android中点击隐藏软键盘最佳方法——Android开发之路4
Android中点击隐藏软键盘最佳方法 实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEve ...
- android开发之路12(android四大组件&Fragment&AsyncTask类)
一.Activity组件1.简介:Activity组件是Android四大组件之一,通常一个Activity相当于一个用户界面,我们可以通过加载布局文件将Android提供的各种控件及自定义控件显示到 ...
- android开发之路13(实际开发常见问题及解决办法ING)
1.DDMS下无法浏览SDcard? 在做音乐播放器的时候,想通过eclipse中的DDMS视图将音频文件push到sd卡中,发现总是报错 :Failed to push selection: Rea ...
随机推荐
- spring-boot系列:初试spring-boot
部署父工程 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http: ...
- 总结的Ubuntu的若干小知识
一.默认开机直接进入到Ubuntu命令行界面 安装Ubuntu后,开机会默认进入到图形界面,如果不喜欢图形界面,可以通过修改配置,直接进入命令行界面,还行节省100多兆的内存空间.具体方法如下: 修改 ...
- Java设计模式系列之适配器模式
适配器模式的定义 将一个类的接口转换成客户希望的另外一个接口.Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作.(就类似于我们充电器的转接头将220V的电压转换成我们的手机端 ...
- Java设计模式系列之桥接模式
桥接模式(Bridge)的定义 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?这就要使用桥接模式 将抽象部分与它的实现部分分离,使它们都可以独立地 ...
- POJ 1860 Currency Exchange (bellman-ford判负环)
Currency Exchange 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/E Description Several c ...
- memcached全面剖析–2. 理解memcached的内存存储
Slab Allocation机制:整理内存以便重复使用 最近的memcached默认情况下采用了名为Slab Allocator的机制分配.管理内存. 在该机制出现以前,内存的分配是通过对所有记录简 ...
- Dynamically loading an external JavaScript or CSS file
原文: Dynamically loading an external JavaScript or CSS file 通过javascript动态加载css文件和javascript文件,主要是通 ...
- [转]freemarker中的list
转至:http://zhuyuehua.iteye.com/blog/1975251 freemarker list (长度,遍历,下标,嵌套,排序) 1. freemarker获取list的size ...
- java functional syntax overview
Defining a Functional Interface @FunctionalInterface public interface TailCall<T> { TailCall&l ...
- map的正确删除方式
遍历删除map元素的正确方式是 for(itor = maptemplate.begin; itor != maptemplate.end(); ) { if(neederase) ...