Android面试宝典(一位优秀应届生面试经验,很多Android高阶问题)

Android面试宝典

 


写一个专属自己的面试宝典:

小巫写这篇面试宝典,主要是为了积累经验和记录自己的求职之路。小巫并不是一种教导别人怎么去面试的心态来写这篇文章的,我只是想把自己的经历与大家分享,或许你能在其中发现一些小巫没发现的东西,我愿意和大家一起讨论和进步。

 

这篇面试宝典主要有两块内容

一、自我介绍篇

二、面试ing篇

 

 

 

一、自我介绍篇

来个自我介绍

五个方面(3分钟)

1.      个人信息

2.      在校经历&&在校成绩

3.      求职意向

4.      个人能力&&优势特长

5.      结束语

 

技术官面:

版本1(实习):

我是谁?

您好! 面试官,我的名字叫巫文杰,小巫见大巫的“巫”,大众名字“文杰”,今年21岁,来自惠州,将于2014年7月份毕业,来自华南理工大学广州学院,计算机科学与技术专业。

我做过什么?

曾在学校担任过“体育委员”,“班长”职务,暑期时间分别在肇庆、东莞、惠州做过暑假实践,在校曾经参加过学生研究计划,ACM模拟大赛,软件开发大赛等多项课余活动。

我做成过什么?

担任班长职务,让我各方面的能力都得到了锻炼,比如沟通能力,协调能力还有就是执行能力。暑假实践在让我多了些社会经验之余,还得到一份能稍微减轻家里负担的工资。参加的学生研究计划,让我踏上了学习Android平台之路,最后做出一个小项目,得到了学校的荣誉证书;软件开发大赛,自己凭着一款Android手机客户端赢得了三等奖的奖项。除了这些,让我比较满意的是在校成绩,无挂科,专业课基本上以高分通过,平均绩点达到3.3,并且连续两年得到了“三好学生”的荣誉称号。

我想做什么?

这次我来应聘的职位是Java软件工程师,自己的主要方向是软件开发--应用开发方向,因为近年来移动互联网的快速发展,并且本人对移动互联网具有极大的兴趣,希望以后自己能从事这方面的工作。我相信以我求真务实的态度,一定能胜任这个职务的。希望能得到贵公司的青睐。谢谢!

 

 

 

版本2(实习)

您好!HR!我叫巫文杰,小巫见大巫的“巫”,大众名字“文杰”;我来自华南理工大学广州学院,是2010届的在读大三学生,所学专业是计算机科学与技术,将于2014年7月份毕业。本人在校期间努力寻找机会提升自己,参加了学校组织的多项课余活动,譬如参与了学校的学生研究计划,传智播客在我们学校开办的软件开发大赛,并均取得令自己满意的成绩;我求职的岗位是“Java软件工程师”,因为自己最擅长的是Java编程,有较为良好的Java项目开发经历,曾开发过基于JavaEE的购物网站,让自己熟悉了SSH整合的处理过程。曾自主研发过一款手机应用客户端,熟练得掌握如何利用Java实现Android手机客户端应用的开发。本人平时比较注重思考和总结,兴趣爱好是写博客和读书,您在CSDN和51CTO都可以发现我的足迹,这可以说是我的优势和特长吧。

       近期准备在暑假的时候,寻找一份实习单位作为自己进入社会的桥梁,因为感觉自己所具备的技术和能力都比较适合你们公司所招聘的岗位,所以就过来尝试一下,希望能达到贵公司的要求。谢谢。

 

版本3:

您好!面试官!我叫巫文杰,来自华南理工大学广州学院,计算机科学与技术专业。本人是一名在读大三学生,将于2014年7月份毕业。本人在校期间,曾担任过班长一职,曾参加过学校开展的多项活动,譬如学校组织的SRP学生研究计划,软件开发大赛,并均取得过满意的成绩。本人求职的岗位是“Java软件工程师”,因为本人擅长的是Java编程和Java Web应用的开发,并且有过相应的开发经历。近期开发过基于JavaEE的购物网站、基于Android的手机客户端应用等。本人在校成绩还算得上优秀,平均绩点可达到3.3以上,都归功于自己的踏实上进,有较为良好的学习能力和思维能力。本人平时是一位待人友好礼貌的人,与人沟通可以做到谦虚好学,平时注重思考与总结,喜欢写写博客,发表心情日志来记录自己的日常学习生活,这培养了我的文化素养和语言表达能力,我觉得这应该是我的优势所在。

       今天来到这里,是希望能主动去抓住一些机会,我了解到贵公司需要关于Java方面的人才,根据本人自身所掌握的技能,比较符合贵公司的要求,所以就过来面试了。希望能得到面试官的认可。谢谢。

 

HR面

1.      谈谈你的优点

答:我个人觉得自己最大的优点是做事从不拖沓,有较强的执行能力。本人在学校期间,老师布置的一些作业和课程设计从不迟交和漏交的,一般在任务布置下来就开始计划如何安排时间去完成。所以在学校老师给我的评价普遍都很高的。

 

2.      谈谈你的缺点

答:我觉得自己最大的缺点就是急躁吧,因为我比较受不了别人做事慢吞吞的,感觉他们是在浪费时间。我在学校总是要求自己要以最短的时间做最多的事情,因为我感觉大学的时间就那么点,除了按部就班的上课,我觉得我应该让自己的技术水平提升到跟别人不在同一水平线上,会比较急于让自己去做一些事情,但有很多时候并没有达到自己想要达到的效果,这就是所谓的欲速则不达吧。


3.   你对工资有什么要求?

答:本人对工资没有太大的要求,只要能满足正常的生活开支就够了,我更看重的是公司有没有对新员工的培训计划和其他的一些福利。

 

4.     你是如何看待加班的?

答:我本身认为加班是一个很平常的事情,公司应该不会无故地要求员工去加班的,可能公司在一些工作上需要赶进度,这才需要进行加班,我觉得作为员工应该支持公司的决定,加班也不一定是件坏事。

 

5.      请用三个词概括你自己?

答:1.责任心;2.适应能力;3.学习能力


 

 

技术主管面:

1.      自我介绍

2.      你最引以为豪的项目是什么?

答:我最引以为豪的是开发了一个手机客户端,我就是拿这个手机应用去参加学习组织的软件开发大赛,获得了三等奖的。这个项目让我接触到一般大学生很少有人一下子就接触到的技术,如果没有特地去自学的话。

       我在这个项目学到了很多东西,比如如何进行UI设计,怎么把界面做得好看一点,那些效果是怎么实现的,有了较清楚的认识。还有就是学到了一种数据交换格式,JSON数据的解析。理解了C/S模式的实现机制,知道了如何通过http协议进行客户端和服务器进行通信。最重要的是,我知道了一个Android平台上的手机应用的整个开发过程,对我自己的开发能力有了很大的提升。我觉得这是让我最引以为豪的项目吧。

 

3.      你在该项目中碰到的最大的问题是什么,你是怎么解决的?

 答:我在该项目中遇到的最大问题应该是,网络通信的问题了,因为我想把软件部署到手机里运行,但发现一个问题,如果简单的部署到手机是不能跟我本机的服务器进行通信的,因为我的电脑没有一个固定的IP地址。后来我了解到一款软件Connectifyme,可以把我的主机作为一个Wifi信号发生器,我的手机通过Wifi可以连接到我的服务器,后来才解决了这个问题。

 

 

4.      如果我录用你,你将怎么开展工作?

答:第一,我需要熟悉一下公司的环境,了解清楚本公司的主要业务是什么。

       第二,我要了解自己属于公司的哪个部门,并且我所在的部门处于公司的什么地位。

       第三,我要了解自己所在部门主要有什么工作,所用到技术和方法,我能分配到哪些具体任务,方便我能尽快地加入开发工作当中。

       这是我大致的工作计划,可能不是很准确,但我现在只能想到这些。

 

二、面试ing篇

面试记录

 

2013年4月18日

处女面—勤思网络科技有限公司

面试岗位:Android开发工程师

面试地点:广州大学城方圆·大学时光7栋501室

面试官情况:2个男主考官 一个专门问技术、一个问非技术

面试情况:拿到口头offer

面试问题回忆:

主要是了解我的项目经验,技术的基本情况

非技术问题:

问:为什么要选择Android,为什么会想往这方面发展?

答:选择Android原本就是我的求职意向,并且近些年来,移动互联网的发展迅猛,我本人也非常看好Android。

问:你做的一个项目《Android新闻客户端》是一个什么性质的项目?最终的结果是什么?

答:这是我参加软件开发大赛的一个作品,不是课程设计。最终的结果是,我获得了软件开发大赛的三等奖。

问:你对我们公司的一个产品(注:是一款手机网络应用)有什么看法?

答:看法谈不上,就针对我而言,我感觉这款游戏并不太能吸引我的眼球。

问:为什么吸引不到你,你觉得那些方面应该得到改进和关注的?

答:首先我觉得应该在界面做些努力,因为对用户而言,他们所关心的是这个应用够不够炫丽,可玩性高不高,而有多少功能是其次的。我觉得这款应用应该针对的人群不太广,主要停留在年龄较小的人群。

 

技术问题:

问:简单介绍一下你这个项目的实现过程?

答:首先这个项目是以C/S模式搭建起来的,分为手机客户端、服务端。服务端是一个web应用程序,客户端和服务端是通过HTTP协议来进行通信的,先由客户端向服务端发送请求,服务端收到请求之后,去查询数据库,数据库返回查询结果,服务端将数据库返回的结果

保存为JSON格式的数据,服务端返回一条由JSON格式组成的字符串给客户端,再由客户端对这个字符串里面的JSON数据进行解析,再将解析的结果显示到用户界面当中。这就是这个项目的主要实现过程。

问:你在这个项目当中遇到过什么技术难题,你是怎么解决的?

答:我觉得网络通信方面是我遇到的一个难点,因为当时我不知道如何实现客户端与服务端之间的通信,如何从服务端中获取数据。后来,我通过查询资料和进一步的学习,学习到了Android的HTTP通信,最终实现了客户端与服务端的HTTP通信。

问:你有谈到对JSON数据的解析,假如有让你来解析一个实体类对象,你如何实现对这个类的解析,说说你的实现方法?

答:这道题我没能回答出来,杯具了。

问:你说一下Activity的生命周期?它有那些方法?

答:它有onCreate、onStart、onResume、onPause、onRestart、onStop、onDestory 7个方法。

答:你说一下onCreate和onStart分别有什么作用?

答:我答得并不太好,只是说了Activity在创建的时候会调用onCreate方法,然而Activity启动的时候会调用onStart方法。

在勤思面试过程中问了很多关于我所做的项目的问题和针对Android知识点的问题,其实还问了我所做的那个Android连连看我主要负责那一块,整个连连看是独立完成的吗?我回答核心算法是参考李刚的那个连连看,我没有说谎,硬说自己设计的,反倒不是我的作风。

 

最后那位问我非技术类问题的考官,问我有什么问题需要问的。

我问了考官对我有什么样的建议?

考官很认真的说了很多他的见解,他说我所做的一些东西都只停留在表面,并没有任何商业价值,在实际的开发当中需要考虑很多方面的东西。具体他还说了写什么,我记不起来了,总是他是一个很nice的考官,没有为难我什么。

从勤思这个面试过程中,我得到了以下几个经验和教训。

经验1:面试之前要做好充分准备,面试官一般会根据你简历上写的内容来问,所以不能有虚假,一般你会什么,不会什么,一问就知道了。

经验2:求职岗位一定要有针对性,想办法增加自己项目经验,想求职什么岗位就体现自己在求职这个岗位所占有的优势。

经验3:一定要锻炼的表达能力,要能清晰表达自己的想法和思路,因为即使你知道一个知识点或技术,但是因为无法准确表述,这会带给你很大的困扰,可能会成为你无法求职成功的原因。

 

 

2013年4月19日

面试企业:腾讯 第一面(技术面)

面试岗位:Android开发工程师(软件开发—终端开发)

面试地点:华工大学城中心酒店(819室)

面试官情况:单面,男技术官 很nice

面试情况:有希望进入下一轮

面试时间:每个人30分钟,不过我面了有45分钟了

面试问到的一些问题回忆:

1.      自我介绍

2.      简单介绍一下你所做的项目,整个框架是怎么实现的(又涉及到项目)

3.      Android连连看,你用到的是什么框架(回忆不起来)

4.      Java基础题(String跟StringBuffer有什么区别,String是否能被继承,C跟Java有什么区别,Java回收机制,它是怎么实现的?怎么判断一个对象是不可达的?)

5.      数据结构(排序算法有哪些?你来演示一下快速排序的实现过程(画图),如果利用两个栈实现一个队列)

6.      设计模式(单例模式,如何去实现?)

7.      逻辑思维题(8个球,其中一个球与其他7个球不同,给你一个天平,你如何在最短的时间里找到这个球)

我提问的两个问题:

1.      在整个面试过程中,面试官您对我有什么建议?

2.      在学习过程中,怎么样去提升自己能力?

 

2013年4月19日 下午

面试企业:佳都新太

面试地点:天河软件园科韵路

面试官:单面,男面试官

面试问题回忆:主要问了一些非技术问题。

1.      自我介绍

2.      你为什么会选择做Android?

3.      IOS与Android之间有什么区别?

4.      你为什么看好Android,Android有什么优势?Symbian为什么会衰落?

5.      Java中是如何体现面向对象思想的?

6.      Java中面向对象有哪些特征?什么是多态?

7.      Android中你是怎么实现多线程的?

 

我问的问题:

在做APP的时候,如果让自己做到有创意?

面试官:多留意生活,找到人们在生活上哪方面的需求,哪些东西还不存在的,以这些方面作为突破口来实现创新。

 

 

最终在2013年的暑假里,我拿些了佳都新太科技股份有限公司的Offer,并且进入佳都新太实习。


2013年9月21日 腾讯笔试

地点:华南理工大学

第二次参加腾讯笔试 攒人品啦、、、、

事实证明我跟腾讯无缘哭


2013年10月份

参加多场笔试,其中包括UC、酷狗,这些公司都跟我无缘,面试通知都不给我。


2013年11月22日  参加校园大型供需见面会

地点:华南理工大学广州学院(俺母校啦偷笑

企业:华仝九方科技有限公司

第一面:成功!!!

面试官:一男一女(男的应该是技术主管,女应该是hr)

面试进行时:这次问了我很多问题,技术问题还有相应的软技能,下面我整理如下

问:请做一下自我介绍

答:简单飘过,注意逻辑性

问:你如何看待加班问题

答:我个人并不反对公司加班,我觉得只要公司有需要,作为员工就应该支持。

问:请介绍一下Android的五种布局

答:这个没啥好说的,就简单把5种布局的特点和用途介绍一下就行啦。

问:请简单说一下Android有什么优缺点。

答:这个问题我是拿Android与ios进行比较,来突出Android的优点和缺点,比如说Android是开源的,而IOS是封闭的,Android有大批的拥护者,并且有强大的Google在后面支撑着,所以才会有现在Android的发展。Android的用户体验不如IOS,Android的碎片化等缺点,反正这部分内容需要自己去准备准备,网上已经有人做了很好的总结。

问:请介绍一下你做过的相关项目(项目经验问题)。

答:这部分我没回答得不是很好,不过这部分我觉得应该要从以下几点进行介绍:

1. 项目是用来做什么的,比如我做的小巫新闻客户端是提供用户查看新闻并且发表评论等功能的。

2. 你从这个项目获得什么,遇到过什么问题,并且是怎么解决的。(这是面试官可能会问的)

3. 你在这个项目担任什么角色,你的这个项目有多少人组成,你负责什么。

问:请谈一下你接下来的五年规划

答:汗,这个想不到在招聘会被问到。不过我对自己的职业生涯规划还是有自己的思考的,我是这么回答的:“我打算沿Android这条路走下去,在五年之内,从初级到中级再到高级工程师,最后成为项目经理,有能力带领项目成员负责项目”。其实这样回答太笼统了,我觉得应该回答详细一点,就是五年之内你将打算怎么提升自己,如何达到自己的目标。

问:请你自我评价一下,你自己有什么优缺点。

答:巨汗,其实这个问题我早就想过了,回答这个问题有一个技巧,至少我觉得是比较好的回答,先从自己的缺点开始讲,然后回转到自己的缺点。我的回答是:“我觉得自己的缺点是做事比较急躁,我不会想把事情留到明天做,我不想拖沓,我觉得这也算是我的优点,因为按时完成任务是员工最起码的保证,养成拖沓的工作习惯无论对公司和自身都不好。”

问:请介绍一下面向对象有什么特点,以你自己认识来描述(举个例子)。

答:怎么说呢,这个问题很基础,但要回答好不太容易,因为你确实需要对面向对象思想有足够的认识,然后才能有自己很好的认识。面向对象的几个特性:封装、多态、继承。光会回答这几个特性不行,你需要知道什么是封装、多态的特点、继承又是什么。我在这里简单说一下,封装是面向对象中的一个重要特性,类就是封装的体现,一个类有自己的属性,然而这些属性是私有的,只有自己知道不对外开放,这就是封装。多态可以分为两种表现,一个是父类跟子类之间的体现,一个父类可以延伸出多个子类,每一个子类有自己不同的属性,这就是多态;多态还可以体现在一个类当中,一个方法具有不同的参数列表,实现不同的解决方案,这就是类当中的多态表现。

问:请回答一下重载和重写之间的区别。

答:重载是类当中方法拥有不同的参数列表,但方法方法签名是不一样的。

重写是子类跟父类之间的关系,子类重写父类中的方法,方法签名是一样的。

问:请回答一下进程和线程之间的区别。

答:1、线程是进程的一部分,所以线程有的时候被称为是轻权进程或者轻量级进程。 
      2、一个没有线程的进程是可以被看作单线程的,如果一个进程内拥有多个进程,进程的执行过程不是一条线(线程)的,而是多条线(线程)共同完成的。 
      3、系统在运行的时候会为每个进程分配不同的内存区域,但是不会为线程分配内存(线程所使用的资源是它所属的进程的资源),线程组只能共享资源。那就是说,出了CPU之外(线程在运行的时候要占用CPU资源),计算机内部的软硬件资源的分配与线程无关,线程只能共享它所属进程的资源。 
      4、与进程的控制表PCB相似,线程也有自己的控制表TCB,但是TCB中所保存的线程状态比PCB表中少多了。 
      5、进程是系统所有资源分配时候的一个基本单位,拥有一个完整的虚拟空间地址,并不依赖线程而独立存在。 

问:你是怎么看待团队合作的,假如你跟团队成员发生冲突怎么办,假如你跟上级发生冲突怎么办?

答:这家公司真的不简单,如果情商稍微低点,我觉得就会犯傻,我个人觉得自己的情商还行,这些问题我也轻松回答了,至于面试官满不满意我就不太清楚了。这种问题呢,还是需要自己多点生活阅历才行,平时多看书多思考对自己没有坏处,这里我就不公布我自己的答案了。

问:两层楼,三个灯泡,每个灯泡对应一个开关,你怎么只上一次楼就确定哪盏灯对应哪个开关。(智力题)

答:我觉得面试官觉得那些软技能问题难不到我,就直接奔我的智商去了,确实我个人智商只能算得上一般,不算很好。这些智力问题我也没有去准备过,所以一时回答不上来,因为他给了我10秒。快哭了,其实事后我已经想到答案了,根据温度来判断,灯泡开得越长当然是越烫,开两盏,时长不一样,就可以判断哪个开得长,哪个开得短,没有开的灯泡那肯定是最凉的,所以最终的哪个灯泡对应哪个开关还是可以确定下来。这是最后一个问题,虽然我没回答出来,但我感觉到面试官对我整体上还是满意的,所以最终我的面试通过了。


2013年11月26日  华仝九方第二面

地点:荔湾区康王中路486号和业广场1105室

面试官:一瓢技术官

关于这场面试我只能用“心寒”来形容了,因为它让我觉得自己就是个蠢货,把我以前看似以为的成就无情的践踏在脚底下,作为一个应届毕业生,我把自己这次被虐的经历作为一次警戒,时刻摆正自己的心态,清楚地认识自己,只有这样你在被在职场摸爬滚打多年老手虐的时候,不至于惊恐万分。下面是我努力回忆面试的半个多钟的时间里那位面试官问我的问题,其实我不太愿意去想这次面试,因为对我来说既是一次沉痛的打击,又是一种全新的刺激。

问:自我介绍

答:这个没啥好说的,平常多练就行。我主要也就是介绍自己在学校的一些情况,表明自己的求职意向,没太多废话。

问:你觉得你对比其他应届生有什么优势?

答:其实无论你说什么样的优势,都是入不了面试官法眼的,因为在他们眼中我们就是菜鸟。但菜鸟也是可以分等级的,所以我就把自己相对其他菜鸟所拥有的优势给说了。“我觉得我相对于其他应届生的优势在于,我自己拥有自己的技术博客,并且坚持不懈地发表文章,在CSDN排名也算靠前,拥有了一批粉丝,并且创建自己的技术群,我觉得并不是所有应届生都能做到这一步。我的自学能力也相对较强的,Android是我自学然后有了较为丰富的项目经验。”

问:你觉得自己在Android那一块不太熟悉

答:当时他是看了我做的笔试题,那份题一共18道,大部分都是我见过,只有少数几道我并不太熟悉。比如SQLite的事务处理,添加删操作怎么进行优化等。我为什么会不熟悉,我也说明了自己由于自己的项目经验还不够足,关于SQLite这一块并不常接触,所以不太熟悉。

问:你觉得你对Android了解么,你觉得自己达到了什么样的层次?

答:这个问题是挖个坑给你跳的,是为了打击你的信心,面试完之后你绝对会觉得自己也就那样,半桶水。相对与职场老人来说,我们就只能是菜鸟,这是毫不意外的,但是不管怎样输人不输阵。当时面试官,给了两个方向给我,一种是研究型的,一种是应用型的。我直接就说我是应用型的,应用型又分两种,一种是界面开发,另一种是数据交互。他问,你觉得自己对那一块比较熟悉或者擅长。我直接就说两个都可以啊,这下子面试官就更深入地问了,他先解释了两种类型的开发的概念,界面开发是开发一些比较复杂的界面效果,比如动画,一些比较炫的效果。他就问我,你有开发过什么样比较炫的界面效果么或者自己比较得意的。说实在我自己并没有开发过什么样自己比较得意的效果,所以直接说没有。然后就是数据交互,面试官问我,你做过什么样的数据交互,什么样的数据类型。我回答的是xml和json都做过,我还直接把自己曾经做的项目涉及到数据交互的给他介绍了一下。

问:假如我硬把你安排到研发那里去,硬要你去学Linux,你觉得你自己能承受得住么,你愿意去做么?

答:我并没有直接说不愿意,这个我实话实说了,这并不是能不能承受得住的问题,是我能不能胜任的问题,我本来就是想做应用开发的,如果硬把握安排在研发部门,我怕自己胜任不了。

问:你熟悉xmpp么,另外一个协议忘记了?

答:xmpp我是有了解过,是做即时通讯要用到的一个协议。关于这个问题,面试官想考查你对Android到底了解到什么程度。

问:你知道如何实现断点续传么,请你简单说一下?

答:这个问题,我彻底给跪了,这个我以前有做过相应的实验,但我已经完全忘记,回答不上来。这个很考验你的编程能力,我也意识到,关于文件下载上传这一块是比较重要的,网络传输是移动应用的一个特点,我觉得学习Android的童鞋一定要把这一块弄得非常熟悉。

问:假如下载文件的时候,下载到一半突然间断了,怎么把资源回收?

答:这完全就是在考验一个人的项目经验到底到了什么程度了,我根本就没有做过相应的项目,我根本就不知道怎么去实现。我觉得他的考察已经超出对应届生的标准了,即使这样我对这位面试官有点好感,作为应届生就应该知道天高地厚,还有很多你们不知道的东西,有些问题回答不出来我觉得关系不大,毕竟你还只是个应届生罢了,没有太多项目经验,就算有相关的项目经验也只是停留在表面上。

问:你只会java么?是熟悉java当中比较复杂的API么?具体调用了什么类和方法?比如说反射机制

答:我一下子蒙掉了,说实在反射机制我并不是不知道,我只是没想到他会问得那么细,具体用到什么类还有什么方法,我把它给忘了。他还让我举例,自己哪个项目用到过,具体用在什么地方。这下子把我问倒了。

问:你知道什么开发模式么?假如给你开发一个手机OA系统,你怎么把它进行分层。

答:我刚开始问它的时候,是设计模式么,他说开发模式跟设计模式不一样,开发模式是为了让系统更加健壮,不至于散乱难以维护。我已经开始意识到这个技术官实在是够厉害的,无论问什么问题都把我给考倒了,他让我简单说一下自己的思路,怎么给这样的系统分层。我当时思考了一下,就给他说了一下MVC开发模式,这是JavaEE用得比较多的三层架构。M代表Model,数据存储在这一层,V代表View,用来显示界面;C代表Controller,控制器用来控制Model与View之间的交互。他直接把OA系统的请假管理模块给我,让我去把它分层,哪块是View,哪块是Model,Controller又是哪块。我这个时候,已经完全泄气了,原来自信满满的小巫,沦落到这个地步。

问:你说你熟悉设计模式,你在开发当中用到过什么设计模式?

答:设计模式我虽然有专门去学过,在项目中也接触过,比如单例模式、工厂模式、观察者模式、策略模式等。这一块我真的不敢说自己很懂,不然我会被自己的无知给打败的,面对如此强劲的面试官,我能做的是把自己知道的毫不保留的说出来,至于他怎么去评判我的能力,就由他吧。

问:你对线程跟进程有什么概念?

答:还是那一句好,面试前做好充分的准备,才能让自己在面试过程中不会被虐得那么惨。线程进程的概念我觉得程序员如果连这个都不清楚那真太说不过去了,我建议你去转行,程序员不适合你。一个程序包含进程,进程又包含线程,线程是进程的一个组成部分,进程是操作系统分配资源的基本单位,线程是不会分配资源的,一个进程可以包含多个线程,然后这些线程共享进程的资源。


这好像是最后一个问题,有些问题比较零散我没有一一列举出来,虽然我最终还是通过了面试,面试官最后也是对我做出了肯定,他说我相对于其他应届生好很多,其实好很多是多少呢?这次面试是我从大三下学期开始找工作,面试过的最难的一关,是我能把自己认识到最清楚的一次面试,其实面试官应该也懂,现在的应届生太高估自己了,一上来就想拿5k、6k、7k、8k的,凭什么,就凭你做过的几个破项目,还是你所自豪的院校?我毕业之前我就给自己定了一个价:4k,这是我给自己最低的标准,这是我能够拿到的薪资,我觉得自己就值这个价,我不会把自己看得太高。小巫的路还很长,我还没有做到不可取代的地步,真正的牛人更多的是谦虚,他们会的东西会更加清晰,所以我在这里想告诉,看小巫的面试宝典的童鞋,学无止境,尤其是搞技术的,想成为真正的牛人,要多向我们的前辈学习,期待有一天能超越他们,我也给自己定一个目标,几年之后的小巫肯定会比现在的小巫更强,超越把我虐得很惨的面试官奋斗


2013年11月27日  华仝九方第三面

地点:荔湾区康王中路486号和业广场1105室

面试官:技术主管

我暂且不说这家公司好不好,至少我觉得这次面试是非常成功的,我喜欢这位主管,我相信假如我跟着这位上司干的话,我一定会很快地成长起来。

其实接近最后一面的时候,说明你的技术水平基本过关了,接下来就是你人品的考查了,你没通过只能说你人品不好;这个也是开个玩笑。最后一面没过的话,确实需要好好找找原因,你需要好好回忆一下自己在hr问你问题的时候,你是怎么回答,回答这些问题是需要有情商的,情商不够很容易被刷下来的,小巫自认为自己情商还是够用的,如果我没有太自以为是的话,我应该拿下这个offer了,坐等消息。


下面是面试过程:

问:请做一下自我介绍

答:我的自我介绍每次都不一样,都是临场发挥,这次面试我完全进入状态了,把自己的个人情况和求职意向都描述的比较清楚,至少我是这么觉得的。

问:你觉得你的技术水平有什么不足,你将如何改进。

答:经过昨天技术官的面试,我已经意识到自己技术知识还不够全面,有很多地方没留意到,没有很好掌握的,我在接下来的日子会努力补充自己欠缺的知识,项目需要用到的技术我会去学习。

问:你觉得你个人的性格有什么优势,你的性格有什么缺陷或者不足的地方,你是怎么去改善自己的缺点的。

答:我觉得我个人的性格是比较健谈,我与人沟通的时候,不啰嗦,会把问题说到点子上。我性格不足的地方就是做事比较急躁,性急会误事。我自己也是有去不断去改正自己,就是克制自己,让事情不往不好的方向发展,让事情发展能顺利进行下去。

问:你觉得你擅长做哪方面的技术。

答:技术主管也是介绍了Android开发的方向,问我比较擅长做什么,是界面开发还是其他的。这个问题跟二面的时候技术官问的问的是一样的,我还是照样回答,我觉得我想做的是应用层的,我不太愿意做底层,我觉得比较枯燥,我以前也学过C++,但C++是往底层驱动开发方向,我不太喜欢,我更加喜欢的是,做Android开发,因为它能看到实实在在的产品。

问:你说你有自己的技术博客,你写博客的用意是什么?

答:有技术博客的童鞋将会是自己很大的优势,因为你直接把这一项作为自己的优势来谈。我的回答是,我写技术博客是为了记录自己的开发和资料的收集,我想把自己所拥有的技术很知识分享给别人,还有就是我以后遇到类似的问题就直接到自己博客查,省去麻烦,不用去Google和百度。

问:你怎么看待加班问题?

答:做IT加班是常事,所以别老想着朝九晚五的,这很不现实。我是这么回答的,只要公司有需要,我一定会支持的,只要不会太频繁的就行。

问:你是怎么知道我们公司的,我们公司有什么产品,你是通过什么途径知道的。

答:我是通过学校开的一场供需见面会才了解到贵公司的,当时也是抱着试一试的心态去的。贵公司有一款叫做手机安全先锋的产品,我是通过上网去了解贵公司的产品的。这个也比较好玩,因为人事发邮件通知我面试,就有一个链接,就是他们的产品,我一点击连接就知道他们的产品在中国电信首页就有介绍。

问:你有什么问题问我的?

答:这个很重要哈,你问的问题就是考查你是否有想法,你来这家公司的真实目的是什么,如果你想让面试官眼前一亮的话,就精心准备一两个问题吧。至于小巫问了什么,我在这里就不说了,博客也转载了一篇关于问问题的,有兴趣的童鞋可以去看看。


华仝九方的第三轮面试,最终面的是技术主管,其实面试完我已经知道自己已经拿下这个offer了,但因为涉及到是否能尽快入职的问题,我给的答案是否,如果说我没能拿到最终的offer,就只有这样一个原因了,因为我面试回来之后,人事打电话给想让我确定最终入职时间并且表明开发那里的态度是积极的,最终的结果两周之后再回来告诉大家。


最终这家公司并没有给我发offer,主要我不太愿意离开目前实习的那家公司,所以就不了了之了。



2014年3月5日 

地点:广州科学城--广州电子商务产业园

企业:广东天拓资讯科技有限公司

求职岗位:Android开发工程师

求职结果:拿到offer

这家公司是我毕业前面试的最后一家公司,因为我已经打算跟它签三方协议了,我也不打算继续找下去,我可能会找到更好的企业或者是薪资待遇更加好的。但在广州我找工作找得并不太顺利,并不是自己不够实力,而是总是缺少机会,不过机会是自己去争取的,下面我来说说我个人的求职的一些历程。

小巫的求职历程是从大三下学期4月份的时候开始的,对于我所在的学校已经算是比较早的一类人了,在我们的学校,虽然是理工学校,但整体计算机水平是没有什么竞争力的,学生的素质也就那样,因为它是个2B学院,但也算是个本科。我在大学刻苦学习了三年,课程全都通过,并且连续三年都轻松拿到学院奖学金,但这些都是可以忽略的,虽然很努力,但似乎自己跟外面的人还存在很多差距,自然自己没有把自己放在像自己的学院这样的小环境里,我一开始就奔着与那些211、985学校的人比较,虽说大学里每个人都是在同一起跑线上,但不同人奔跑的速度就不一样。大三下学期开始找的实习,刚开始就是去参加招聘会,去听宣讲会,去笔试,去面试,在大三下学期这段时间,自己碰壁了不少,但也长进了不少,至少也让我认清了自己,知道自己存在很多的不足,自己并没有想象的那么优秀。学校的那点成就,就让它留在学校吧,没有拿出来的必要。人只有经过挫折跌倒之后爬起才能成长,才能意识到自己还差得远。到目前为之我面试了8家企业,直到最后一家拿到offer之后,我已经没有什么兴致再继续下去了,因为已经找到合适了,我需要的只是一家能让我挥洒汗水的地方,让我好好专心在剩下的几年里好好奋斗的地方。别人的任何面试经验,那是别人的,只可以供自己参考,自己的求职经历才是自己的一笔财富,只有亲身体验才会觉得回味无穷。不管面试什么岗位,自己要有目标,求职需要有针对性,缺什么补什么就是了,这没人能帮得到自己,这些事只能自己下功夫去做。小巫求职的是Android工程师,为了得到一份好的工作,我做了很多努力,面试的经验也是经过前面好几次的失败中积累下来的,我建议求职者首先要认清自我,找到自己的不足之处,自己有什么优势,求职技术类的岗位,最基本的要求是要技术扎实,有相应的项目经验,能在面试过程中能回答得不算太差就行了。当然面试的时候是需要技巧的,比如说话的技巧,面试官就问过我你觉得自己的优势在哪,你觉得你期望的薪资能维持多久,你怎么看待加班,你在什么的情况下会选择离职等等,这些问题的回答考查你个人的语言组织能力,是否会婉转的表达。小巫也即将毕业了,大学四年对自己来说长不长,说短也不短,也有过一些遗憾,不过没有遗憾的人生是不完整的。最后送大家一句话:“人走到任何境地都是因为自己”。谢谢!!

你可能感兴趣的:(android,程序员,面试,求职)