快捷搜索:  as

[转]一年Android工作经验,阿里 百度 网易 美团 小

转载请注明出处:http://blog.csdn.net/a296777513/article/details/73610719

媒介

人生艰苦重重,在漫长而艰辛的前行路上,锲而不舍、踏扎实实的“垂头拉车”固然紧张。但认清形势、找准目标的“昂首看路”也很关键,以致抉择着你能否达到成功彼岸。只寻求远方的贪图,而不付出当下的努力,那是迷梦;只知道笃志苦干,而不认清偏向,那是徒劳。

先简单说说我近来的口试经历吧。口试的公司很多,大年夜部分着末都能获得令人知足的结果,我将这些体会记录下来,面了这么多公司,假如不留下什么,那岂不是太挥霍了。对付我来说,这也是一次自我反省,在此次口试中总结履历,认清自己,同时盼望这些对即将换事情或者盘算看看其他时机的你有一些赞助。

以下的部分有详细的口试经历,也有自己的一些总结口试必备技能和自己的一些感想。

为何脱离华为

来华为的主要缘故原由是:

增长自己的见识,很好的成长自己。很好的成长自己,就必要一个平台,平日这个平台是大年夜公司才能供给,大年夜公司会有一套完备的机制来培养你,让你有更多的选择,可以选择自己爱好做的工作。以是我建议刚卒业的同砚,最好照样选择大年夜公司,哪怕今后要跳槽,大年夜公司也是异常好的跳板。在华为的这一年,最大年夜的劳绩并不是技巧上的生长,而是自己的见识和思虑问题的能力。虽然有很多人不满华为,公司大年夜了,肯定弗成避免会呈现很多问题,然则总体来说华为照样一个异常了不起的企业。

脱离华为的主要缘故原由是:我的职业筹划与华为给我的筹划不切合,还有便是流程化的器械太繁琐,自己有一些不适应,以是选择脱离了华为。异常谢谢我高总(直接引导)和邦邦(师傅),在华为的这一年中给予我异常多的赞助,在我跟引导沟通脱离的设法主见时,引导开诚布公的跟我聊了很多,终极我照样下定抉摘要脱离华为,引导建议我先去口试一些公司,等找到相宜的再走,裸辞的话社保和心态上都邑有一些问题,这样的引导真是没话说了,在华为很多引导都是不放人的,很多都把员工的下一家拖黄了才放人。在这一年得到的成就:

北京钻研所第一届Hackathon 二等奖2. 转正绩效是A3. 年关绩效 B+,得到嫡之星

筹备

着实我很早就开始筹备了,准确来说也不算筹备,只是不停在总结Android相关方面的常识,由于在华为虽然事情无意偶尔候对照多,然则照样有大年夜把光阴可以自己进修一些感兴趣的偏向。从过完年回来,我就有计划的复习和总结了一些常识。

看过的册本,这里并不是泛泛的读一遍,而是具体理解了大年夜多半内容,普通一点便是可以用自己的话将响应的常识解读出来。《Android开拓艺术探索》(这本书至心不错,我反复读了4、5遍)、《Android群英传》(对照靠近开拓应用,由于做过一些利用开拓,读起来照样对照简单的,读了2遍)、《深入理解Java虚拟机》(也是一部神作,可以让你清晰的理解JVM,读了2遍,理解的不是很透彻)、《剑指offer》(感到口试中碰着的算法,80%都能找到响应的题目,包管所有的题都可以手写出来就行)。4个月精读了以上册本,还有其他的都是简单懂得,这里就不枚举了,读完这些书,应该可以让你上一个层次吧(妈妈再也不用担心我口试啦…)。

刷题,主如果LeetCode(大年夜概刷了300道题阁下,天天3-6道,坚持下来,必要多复习,由于很多题过一段光阴会忘怀),还有看过一些牛课网。

看别人的口试履历,主要在网上,这里我枚举两个对照好的。 Android客户端口试题集锦

Android阿里口试题锦集

送达简历

一份好的简历是异常有需要的,必要凸起你的重点和闪光点,详细怎么写简历可以参考

CodeKK说简历

有了一份好简历,接下来便是送达简历,一样平常是:拉钩+BOSS直聘+内推,从我此次口试时机来看,三者比例是2:2:1,也可能我事情履历还不到一年,内推滴滴、阿里和腾讯直接就把我的简历刷掉落了,然则内推也是详细到某个部门,假如被刷掉落也不要泄气,现在大年夜公司基础上各个部门都有自己的hr,可以在拉头和BOSS上多送达一些,万一其他部门看中你呢?

口试颠末

这里我仅仅记录一些问过的题目(能记着的),谜底我就不写出来,基础上都可以在网上找到响应的谜底。

功课盒子

光阴有点久,很多问题记得不太清,大年夜概有以下内容。

一壁

Android一些优化规划 2. 什么是过渡绘制,若何防止过渡绘制 2. 事故分发机制 3. ListView的优化 4. Binder机制 5. 在多进程中,Application会启动几回 6. 单例模式,双锁道理,volatile道理,静态内部类实现单例的道理。

二面

二面口试官是leader?反正应该不是做android的,Android的相关常识问的也不多,大年夜多是项目上的器械。

Java多线程,synchronized 2. 聊项目,都详细做了什么。 3. Binder机制

三面

应该是leader吧,主要懂得一些小我的环境,以及一些项目,着末问了期望的薪资,然后当场就给了offer。

终究1年多没有口试了,第一排场试照样给我了很大年夜的自大,也知道现在自己大年夜概能要若干人为是相宜的,以是同砚们筹备跳槽的时刻,最好先面几家小公司,盒子照样一个很不错的公司,整体的办公情况挺好的,现在也处于盈利状态,在教导类的app中也排的上名次。

快手

快手就在五道口地铁站出口不远地方,能看到很显眼的LOGO,看上去很霸气的样子,然则当我进入到快手前台的时刻,连一个标示符都没有, 一度以为自己走进了假快手,好吧,我是来口试,这些都不紧张,接下来款待的职员把我领进了一个小屋里,等待口试的开始。

一壁

口试官是一个很fashion的人,是从小米核心部门过来的,是Android小组的引导。

问了关于数据库的一些问题,SQLite的相关操作,没法子,我在华为独逐一个做的和java相关的项目,然则不太长于数据库。 2. 收集相关的问题,收集的五层模型,又问了TCP和UDP,还有Android相关的长连接,这里问的对照深。 3. 开始Android先关的常识,Handler机制,Acticity的生命周期以及四种启动模式,各自特征,Service的两种启动模式生命周期,假犹如时应用两种启动模式是否可以,顺势讲到Binder,什么时刻可以获得控件的大年夜小,着末写了一道链表反转的算法题

第一壁这就算过关了等待二面。

二面

问了项目相关的问题,这部分根据自己的项目履历,因为大年夜家的履历都不合,这里我就不具体说了。 2. 设定一个场景,怎么去实现响应的功能,由于快手这个部门想做社交,是以这里是问我是若何实现微信的联系人页面(包括与办事端有什么样的交互) 3. 着末也是一个算法,写出所稀有组的子序列

二面口试官是这个组的leader,跟我讲了现在这个组的成长环境和快手现在的环境,因为快手生长很快,以是不能仅仅寄托一个APP,还必要在其他方面进行一些考试测验,而这个组的义务便是在一些方面做一些考试测验,大年夜概便是这个样子。 二面也顺利经由过程,接下来便是HR面了,这时刻恰正是12点,他们要去用饭,不过快手是供给午餐和晚餐的,第一个口试官带给我一份饭,还不错,后来HR跟我说,现在只是过渡时期,后面午餐和晚餐会改成自助餐的形式。

三面

HR上来很亲切,问了我一些口试的环境,难不难之类的,然后又聊了聊我大年夜学和钻研生环境,我只想说我“too simple , too naive “,大年夜概懂得我后,只跟我聊我的不够,以此来压低我期望的薪水。说了一下薪资期望,加了微信,让我回去等待,说发offer大年夜概是2周光阴,由于必要走各类审批流程,让我不要发急。

快手是一个很年轻的公司,技巧照样必要必然的积累,盼望不要像小咖秀一样好景不常。

美团外卖

一壁

简历上写的项目问了一遍,然后开始问常识点。

volley的源代码,在图片缓存部分评论争论了挺长光阴,http中缓存机制,Last-Modify的感化等。 2. fragment的生命周期 3. service一些常识 4. 事故分发机制 5. Binder实现机制,Stub类中asInterface函数感化,BnBinder和BpBinder差别。 6. gradle中buildToolsVersion和TargetSdkVersion的差别是什么 7. 手机适配一些规划 8. hashmap的实现道理 9. 静态措施是否能被重写

这些大年夜概聊了1个半小时,开始的时刻还有些首要,逐步聊开了,就很多多少了,口试官的语速有点快,总是必要口试官重复一遍,我也不经意间语速也变快了,不过能看出来口试官照样很厉害的。

二面

3次握手和4次挥手的缘故原由,以及为什么必要这样做。 2. 数据布局,搜索二叉树的一些特点,平衡二叉树。 3. hashmap是若何办理hash冲突的 4. 进程与线程差别 5. 写了一个二分查找和单例模式 6. http中的同步和异步 7. 聊了一些项目上做的器械,问了问职业筹划

因为二面口试官不是做Android,原先口试我的人临时开会去了,以是这一轮口试没怎么问android相关常识,不过二面口试官不停是微笑,以是这一轮很轻松,更像是一路评论争论问题。 口试完已经是下昼4:30了,因为口试当天是礼拜五,而周五美团的会议对照多,以是等了会,二面口试官说三面口试官在开会,口试另约光阴,我照样说此次一次口试完吧,这一等就等了2个半小时,时代hr跟我说三面口试官是个大年夜牛。

三面

我觉得Android做的优秀的几个地方,然后又根据我说的问了问对照深入问题。 2. Android是若何进行资本治理的。 3. java对照紧张的几个特点 4. 收集五层布局,每一层协议,因为我收集不是很好,还问了一些其他的问题(例如MAC地址和ip地址的差别等)。 5. 为什么脱离原本公司,以及职业筹划,然后由于口试完大年夜概就晚上8点了,就先让我回去,下周让hr跟我联系,我想这是应该经由过程口试了吧。

美团技巧照样很厉害的,从口试官的水平就可以看出来,尤其是外卖核心部门,办公情况是不错,然则感到便是有点乱,不知道是不是由于本日口试的人很多,基础上不停有很多人往返走动,有一些喧华。

小米TV

一壁

可能是由于一壁是我的学长,以是没有问我很多技巧的问题,聊了聊我做的向项目,然后聊了一会OpenGL、GLSurfaceView和Shader,主要聊了OpenGL绘制措施,还有一些Binder相关常识,感到异常轻松,还想着假如口试都这么轻松就好了,然后就直接下一壁了。

二面

二面口试官看上去很斯文,然则照样一个对技巧千锤百炼的人,问的问题都很细,详细问题的顺序挤不太清楚了,大年夜概问了下面几个问题。

单例,快排,回型打印二维数组 2. 写一个逝世锁,逝世锁是如何孕育发生的,如何防止逝世锁 3. Acticity启动模式有几种,分手代表什么意思 4. 聊项目都做了些什么

三面

leader是一个很有亲和力的人,上来就跟我说前面技巧已经问的差不多了,这里就不扣问我具体的技巧了,就出了一道算法题,必要说出光阴和空间繁杂度,以及有没有更优解。

字符串反转,评论争论繁杂度。 2. 聊经历和项目

HR面

HR面问问题都是一个模板刻出来,都是例行公事的扣问,bulabula……然后就算完成口试。 从整体来说,TV更必要一个测试开拓,然则我照样想做开拓,暂时不想做测试,以是我预计TV是不会给我offer了,虽然说了过几天会正式给我发offer,着末也没法。

小米TV在一个自力的小院子里,情况照样不错的,整体的成长也可以,终究是小米生态中紧张的一个部分。

网易

网易大年夜楼是在百度大年夜楼的左右,感到照样不错的,来的轻细有点早,在前台等了20分钟阁下的样子,口试官就带我去口试了。

笔试

详细的内容记不太清楚了,大年夜概有以下几个类型,都照样对照基础的。 选择题、法度榜样输出题、四道算法、简答

给定一个int型 n,输出1~n的字符串例如 n = 4 输出“1 2 3 4” 2. 输出所有的笛卡尔积组合 3. 单例模式 4. 最长上升子序列

都不是很难,基础上都能作出来。

一壁

一壁口试官是资深的Android开拓工程师,切实着实水平很高。所有的问题问的都很具体,很多细节,口试官都能清晰的说出来,切实着实水平很高。 属于循规蹈矩的问题要领,从简单的常识入手,徐徐深入,直到你回答不出来而且问的都是你自觉得很长于的常识点,可见口试官的功力有多深挚,深深的佩服。 我下面大年夜概说一些问题,然则到着末总能问到很深入的地方。

对刚才做的题,一些错的地方做了评论争论,主如果类的加载和内部类方面的常识,尤其一些深入到JVM层的常识切实着实自己有一些不够,不过大年夜部分都照样能答出来。 2. 双亲委托机制,类的五个加载历程。 3. java类加载器的加载流程。 4. Binder机制,从java到framework再到kenral层,口试官问的都很具体,碰到不会的也都邑跟我解释。 5. Serializable和Parcelable的差别。 6. View的绘制流程,具体到framework代码,评论争论到不确定的地方,立马打开电脑和我一路看源码。 7. 事故分发机制。 8. 常用设计模式,应用静态内部类实现单例的道理是什么。 9. 线程同步,CopyOnWriteArrayList如何实现。 10. Volley源码,EventBus源码。

口试完后就到12点了,评论争论了1个半小时,跟我说我这关过了基础上就没问题了,口试官照样一个很风趣的人,带我去网易食堂吃了顿饭,切实着实这里的饭分外好吃,回来后,苏息了一会,就开始Leader面了

二面

Leader面,我还以为至少要3轮技巧面呢,没想到直接就到leader口试了,后来才知道第一轮口试的结果照样很紧张的,一壁口试官是异常资深的工程师,只要经由过程一壁了基础就没问题了。

项目先容,聊一些项目上的问题 2. 下拉listview的实现,必要留意的地方和优化的地方(不是lsitview的优化,是下拉的优化)。 3. Android上一些优化规划 4. 先容了一下现在做的项目,大年夜体阐清楚明了现在所用到的技巧。

总体感到网易的氛围照样异常好的,技巧实力异常雄厚,leader技巧能力也很强,并且一壁口试官奉告我,leader无意偶尔候还会自己写一些代码,一样平常到了leader很少有写代码的了。

hr面

一样的流程,各类谈,说口试官对我评价异常高,盼望我能来之类的话,然后就算口试停止了。

小米

这是第二次口试消息,此次是小米的核心部门,MUI部门,主要做涉猎类app,据说成长照样很不错的,为什么要口试两次小米呢,由于之前内推过小米,一周都没有消息,我就在网上投了简历,等口试了小米TV,这边又叫我去口试。到了小米前台,前台没人,我问保安,保安让我打HR电话,结果HR也不接电话,就这样等了半个多小时,HR终于回过来电话,打电话让口试官把我接上去了,一壁口试官还以为我不来了。

一壁

聊项目,GLSufaceView,OpengGL,Shader相关一些常识,在项目中做的优化 2. gc是根据什么来收受接收一个工具的,引用计数和gc root分手怎么实现。 3. 如何会孕育发生内存泄露,举一个详细的例子,应用什么反省内存泄露 4. 自定义View的绘制流程 5. 给出二叉树和一个值,找出所有和为这个值的路径;{1,3}{3,6}{3,4}{6,8}区间去重,起码去掉落几个聚拢,可以让这个聚拢没有交集。

二面

什么是ANR,Activity、BroadcastReceiver、Service对ANR光阴限定分手是若干,怎么处置惩罚ANR,除了系统天生trace.txt文件,怎么在法度榜样中检测ANR。写出伪代码。 2. 编解码一些常识,I帧,B帧,P帧差别。 3. Android一些优化规划。 4. 算法 n/m,怎么判断得数是无限轮回小数。

三面

三面口试官看上去很年轻,人也分外风趣,不过技巧照样没得说。 1. 先容项目。 2. 事故分发机制。 3. 算法,将一个字符串转换成int型数字,斟酌 差错输入,溢出,正负值等一些前提,考细心。 4. 给出一个搜索二叉树,输出一个排序好的双向链表。

四面

原先以为是HR面,结果不是,应该leader面,上来就说技巧就不面了,先容自己的项目中感觉做的最好的几个部分,大年夜概说了下,接下来便是问了为什么脱离原本公司,为什么选择小米 bulabula…..面完之后,说本日太晚了(晚上快8点了),hr已经走了,下周让hr跟你电话联系吧,把我送到楼下。

第二周小米就发来了口试经由过程的消息,详细谈了一些薪资报酬问题。

百度

一壁

一壁口试官的思维异常跳跃,常常我说到一半的问题,忽然扣问其他相关问题,然后回答完再继承之前的说下去,有些许不适应这个节奏。顺序可能不太对。

类的加载历程,Person person = new Person();为例进行阐明。 2. JVM相关常识,GC机制。 3. 类的加载器,双亲机制,Android的类加载器。 4. Android中进程的级别,以及各自的差别。 5. 插件化道理。 6. 聚拢框架,list,map,set都有哪些详细的实现类,差别都是什么。 7. concurrentHashmap道理,原子类。 8. volatile道理。 9. Binder机制。 10. View的绘制流程,事故通报机制,Handler异步消息机制。 11. Interger中的128(-128~127),这里考的是常量池的观点,这个没回答上来。 12. 线程池的相关常识。 13. Handler机制,HandlerThread实现等等。 14. LRUCache算法是如何实现的。

二面

二面口试官看上去挺面善的,以是气氛就不那么首要了,说实话来百度照样有点小小的首要的。

说了说项目中相关的常识。 2. 聊了聊之前做过的项目。 3. 内存泄露,如何查找,怎么孕育发生的内存泄露。 4. 如何谋略一张图片的大年夜小,加载bitmap历程(如何包管不孕育发生内存溢出),二级缓存,LRUCache算法。 5. 简单先容一下java中的泛型,泛型擦除以及相关的观点。 6. Android优化相关的只是,结构优化、内存优化等等。 7. SQL相关的常识优化的规划,这里我直接说不太懂得,就过了。 8. 算法题,m * n的矩阵,能形成几个正方形(2 * 2能形成1个正方形,2 * 3 2个,3 * 3 6个)

三面

由于每次口试都是有记录的,以是三面口试官问题的技巧问题就不那么细节了,大年夜体以评论争论的要领跟我聊,大年夜体聊了以下几个方面,当然越深入,口试官对你的评价就越高

项目相关。 2. Android优化.。 3. 插件化相关技巧,热修补技巧是如何实现的,和插件化有什么差别。

其他的都记不太清楚了,总体来说聊的照样不错的,原先以为百度会有很多算法题,结果只出了一道(侥幸。。。),原先还要有leader面,三面口试官照样异常好的,跟我说他们几个技巧感觉我照样不错的,就看leader了,结果leader有事,出去了,不知道什么时刻回来,就约当周的放工光阴以前就好,然后口试官亲身把我送到了门口,跟我聊了很多,挺不错的。

四面

四面是经理面,感到经理已经不做技巧了,技巧基础上没有扣问,大年夜体问了一下项目,以及自己在项目中都做了一些什么,聊了聊其他的话题,就完事了,然后就让我回去了, 大年夜老远的跑过来,就谈了不到半个小时,好吧,谁让人家是百度呢,回去等hr电话吧。 过了几天,hr联系我谈薪资报酬等,又让我跑了一趟,口试这么多家,最累的一次,谁让百度是牛*呢,一顿说,bulabula…… 感到近几年百度成长的不是很好,不停在走下坡路,不知道是不是在憋大年夜招,很多百度人都出来了,不过百度终究是百度,照样很厉害的。

阿里

梦寐以求的阿里终于找我来口试了,之前不管是内推照样收集上送达都被回绝了,缘故原由是我事情不到一年,没法子谁让马云爸爸太厉害,我送达的是杭州的天猫,是做虚拟现实的小组(刚听到这个名字感到和自己不太切合),这是我到口试完后,才知道的,口试官也跟我说Android上的需求可能不会很多,更多的是VR技巧在Android上的利用,包孕OpenGL等技巧。

一壁

扣问了我博客上写的一些器械,从项目立意谈起,到设计,再到具体的技巧实现,可谓是面面俱到,因为自己写的博客照样对照认识,回答的还不错。 2. GLSurfaceView的相关常识,OpenGL,Shader,绘制流程。 3. 扣问当前做的项目,以及到详细的实现和优化。 4. 多进程间的通讯,Binder机制。 5. 扣问看过哪些框架源码,EventBus,Volley讲了一下。

大年夜概聊了一个小时阁下,聊得还可以,基础上都回答上了,中心给了我很多建议,不懂的地方,也会仔细跟我解说一番,着实有一半的光阴都是跟我聊产品,为什么这个产品好,如何做才能投合市场,然后怎么设计全部产品等,感到跟我现在水平不是一个层次的,公然,第二天就给我发了一封邮件,说我现在暂时不太相宜送达的岗位。

口试结果

除了阿里淘宝外,其他的公司基础都拿到offer,这段光阴把华为这边的事情都交代完,苏息几天,假如有空的话回家停几天。

总结

自己对付互联网有一些小小的看法:

跟着本钱的冷却,全部互联网市场也徐徐的岑寂下来。Android利用开拓从一开始能说几个四大年夜组件的名词,能随便写个监听事故,就能拿到高达上万的月薪的期间了。归根到底并不是事情难找了,而是Android利用开拓工程师这个职位已经趋于正常,再也不是没什么技巧也能拿高人为的喷鼻饽饽。当然这个也不是绝对的,对付中高档的开拓职员来说,市场照样对照缺少的,尤其是有名企业对付招聘员工来说,不仅要求有过硬的技巧,还要求有高本质,好的教导背景等等。总的来说,高人为可以给你,然则条件前提是你要足够优秀,或者说让口试官感觉你很优秀。

着实口试历程便是一个把你自己推销给别人的历程,对付我们(卒业不久的同砚,由于我卒业不到一年)来说便是要让口试官感到你技巧好,有培养代价。感慨有点多了,照样来点干货吧,大年夜概枚举一下每一轮口试的大年夜概范围和深度,然则也不是绝对的,照样要看详细环境。

笔试

对付社招的同砚来说,基础上不必要笔试,然则也有公司是必要的,例如 今日头条和网易都有笔试。笔试都是对照根基的一些常识,Java、Android等方面的,一样平常不会有收集,谋略机等方面的笔试,一样平常环境下大年夜家都能答出来。

一、二面

近一段光阴的口试经历来说,一、二面的问题没有什么很大年夜的差别(公司基础上都有3面技巧面,然则也有例外,我在网易便是2面技巧面。),基础上都是一线开拓职员。主要考察你是否有牢靠的根基常识和是否在寻常开拓中能纯熟应用。

是否能解说清楚你所做的项目,以及应用到的相关常识。

Android根基常识

Java根基常识,大年夜概是多线程,线程安然,聚拢类,JVM,类相关常识等。

Android一些源码的涉猎

优秀的第三方框架源码涉猎

三、四面

一样平常公司都是三轮技巧面,然则也有四轮技巧面的,不过不多。很多公司基础上每一轮口试官都邑记录他所扣问的问题,以便给下一轮口试官作参考,还有便是避免对同一个常识点多次扣问。以是到了这轮口试,基础上不会再扣问对照根基的常识。

会从两个方面考察, 广度:对照新的技巧(Rxjava,插件化等),JVM,GC,收集,数据库,Android(一样平常不会扣问之前口试官问过的问题)。

深度:一样平常会经由过程1或2个问题来考察,例如:map接口下都有什么子类->hashmap和hashtable差别->hashmap实现道理->怎么办理hash冲突->是否懂得concurrentHashmap->concurrentHashmap实现道理->volatile实现道理(concurrentHashmap读是不加锁的,应用到了volatile)。

项目中的供献,所做的优化。

设计能力,基础上不多,这个要看口试的岗位,由于我这里口试的只是高档开拓,并不是架构。

事情中的亮点和凸起。

hr面

基础上到了这轮,你就算经由过程口试了。hr会扣问一些你的经历,最主要的照样和你商定薪资报酬。在这轮,大年夜家应该要对自己的薪资水平有一个大年夜体的懂得,一样平常都是在原本的人为根基上增长20%~30%的样子,当然,假如你在口试历程中体现异常优秀,也可以不受这个限定。当然假如公司恳切要你,就算你要的人为过高,hr也会委婉的奉告你,不会直接把你pass。

您可能还会对下面的文章感兴趣: