快捷搜索:  test  as

记录下秋招的一些公司的面试

龙珠超.jpg

媒介

首先,自我先容一下,我来自广东某工业大年夜学的大年夜四门生,本科专业是通信工程。大年夜二开始自学Android相关,断断续续地看书,做项目,直到真正找公司发明始终照样一个渣渣。

后面自从今年(2017)8月中旬在训练的公司离职之后,不停在忙复习根基,谋事情,以是很多工作都弃置了。后面发明良久没写过文章了,并在秋招中有一些小我的感想熏染,是以想记录下秋招的一些有趣的公司的口试,大年夜神们请轻喷哈。

阿里笔试批

以下都是阿里系统的视频口试

一壁北京优酷

1.onStart和onResume差别

2.activity, view,window差别

3.点击按钮的事故通报历程,view的事故分发

4.view的绘制历程

5.handler机制

6.项目

先先容项目,认真哪块,难点,办理要领

以下是口试官说起到的一些问题

框架源码

收集库对照,Glide和UIL差别,上风毛病等等

空指针,oom(MAT道理),anr(trace文件查看缘故原由),呈现的缘故原由以及若何处置惩罚

屏幕适配(同一个apk,一套720*1280图片,若何适配多台手机)

7.情景

视频平缓屏幕放大年夜变横屏功能若何实现

团队开拓等等,只选择杭州吗,项目角色,对团队的憧憬

二面北京支付宝

讲项目

1.设计今日头条首页有图片又有视频的列表

2.设计手机通信录,若何经由过程输入名字快速查找到号码

3.一个异常简单的问题作为停止:数组链表差别

hr面

阿里的hr可是懂技巧的,问的问题相对多,比如手机淘宝,手机京东的技巧上有什么差别等等,大年夜概40+分钟。

这是再加上我春招找训练阿里的口试经历。

首先感谢助班还有助班的同伙,帮我内推了手机淘宝技巧部,此中还提了很多宝贵的建议。假如下次还有阿里的内推,我建议大年夜家照样早点内推,越早内推简历基础不刷,后面就开始刷简历了。

在网上完成的测评之后还有一道编程题之后(目测照样动态筹划)一个礼拜之后接到一壁电话:

一壁(57分钟)

1.项目源码(Eventbus),数据布局(数组链表差别)

算法(快排怎么实现,两个字符串最长的公共子序列(动态筹划)

2.Java根基(抽象类和接口差别,static类,sychronized,==和equal差别,try,catch,finally)

3.JVM(内存透露,类加载,双亲委派模型)

4.安卓的(activity的生命周期,自定义view,

view事故分发,handler机制,内存泄露,apk的天生道理和历程)

5.收集(http若何讨教和返回数据,从哀求到解释等等)

以上基础90%能答上来,其间我还说起到了C++方面和Java比较的(析构函数,多承袭等等)以是很开心地过了一壁,问的问题对照广,基础把我学的都问了个遍,后面提问环节才知道他便是内推我的那小我。 真的很幸运,后面邮件他也提了一些建议,“小伙子要持重谦逊点等等,哪个方面要加强等等”。真的感谢他!

刚好又过了一周接到了2面电话,是一个异常有履历的口试官。

二面(56分钟)

1.项目(listview和recyclerview差别、说到listview没有itemType的时刻,口试官说真的没有嘛?着实我已经说错了。以是口试出了一题若何实现listview的itemType、

不合item结构若何避免擦除tag(口试官提醒有没其他setTag的重写措施,我说用sp保存tag,口试官还算知足)、OkHttp源码(哀求措施、哀求报文和相应报文的布局。状态码300-400-500,keep-alive哪个http版本引入(我答了1.0,很隐隐。着实是版本1.1),以是口试官叫我解释一下长连接)

图片缓存库(因为我说到源码的弱引用的时刻以是口试问了我虚引用处景)、支付sdk 、Activity的启动模式,义务栈的治理(口试官不停向导我由哪个治理的,预计口试官想我答AMS,ActivityTask相关的,没答出来)

listview的tag问题:

http://blog.csdn.net/zhuangxiaozhi/article/details/66551453

2.handler机制、内存透露(工具的创建,生命周期的是非关系)、threadocal源码(因为我忘怀了,以是口试官又问叫我若何实现一个threadlocal场景)、于是我说了互斥锁的场景,后面发明自己已经挖坑了,以是口试官接着问锁的类型差别(工具锁和类锁)、可重入锁,逝世锁怎么孕育发生,若何避免逝世锁(银行家算法)

3.进程线程差别、进程的通信要领、Binder的差别和操作系统的进程间通信要领上风

4.垃圾收受接收机制、判断工具可收受接收的算法以及源码理解(又是问源码,JVM哪里来的源码看呢?)

此次真的是问得好深,很多问题都是刨根问底,感到筹备得照样不敷充沛,还有答错的,基础60%能打出来。

后面过了一个月之后,内推的人查到挂第二面了,已经没有技巧面了,一次很靠近hr的时机就损掉了。

阿里的口试官真的挺有水平的。

总结便是无意偶尔候口试官不必然要你回答问题,而是看你的思虑要领,还有自己懂得的深度。还有碰到不懂要自大点,并且学会转移话题。

腾讯笔试批

一壁mig手机管家

1.手写快速,c说话版本实现,快排的优化,光阴繁杂度,nlogn的其他排序以及比较

2.项目,当时项目总结得不是很好,自己进了一个大年夜坑。以是建议自己的项目必然要总结好。Lv和Rv差别

3.提问

二面

谋略机组成道理,gg。

这是再加上我春招找训练腾讯的口试经历。

内推一壁(17分钟)

师兄的内推,真的很谢谢他。 听说腾讯的内推是刷简历的,当时感觉就没多大年夜时机,很多工作想想都是惊惶掉措的。嗯,腾讯着实才是我最早应该口试的公司,然则和舍友投了久邦数码之后,不知为什么有两个来自深圳的未知电话(上面写着腾讯公司),后来打回去是客机,之后一个礼拜都没打来了(已经盘算放弃了)。有一天晚上做完笔试,不知为何又有深圳的电话打来,一想便知是腾讯的。后来口试完,查找通话记录发明,后面的一周内口试官原本打了我不少于10次的电话。

是个女口试官,感到是简历面,(似乎是拿着题库来问我)

1.项目认真哪一部分,机能上有什么优化?

2.图片的缓存,ANR ,内存透露

3.自定义View

4.四大年夜组件的生命周期

5.数据的持久化保存要领

基础能答出来,后面照样没过。(应该内推的要求照样对照高吧)

正式招聘

笔试(4.2)

在线上完成的笔试,题目照样对照难的,涉及到c/c++的对照多,收集,操作系统,数据库,还有两三道Android,还有一题OC的。问答题是腾讯产品快报Fragment的功能设置,面向工具的三大年夜特点,编程是有关单词的(没做出来),变形的二分查找。做完就很扫兴啊,没想到某天晚上收到口试看护。

一壁(4.12)

着实我也很扫兴,当世界午EDA考试,还有两天的感冒在宿舍睡了两天。迷迷糊糊地看了下书啥都不想做,提前交了卷后,打开手机发明事情职员打了我8次电话,就急冲冲地赶到了酒店,下着雨,从地铁站坐了个滴滴到了酒店,已经5点多了,看起来照样很多多少人哇。(貌似挺多人来霸面的)

后面hr问谁在5点30分前预约口试照样没接到口试的上前面,后来我就说清楚明了一下由于考试的缘故原由,后面就在前排等着,后来收到微信的推送和短信看护,就进了某个房间开始了口试。

口试官先叫我做了个自我先容,之后看着我简历写了认识Java,就问了对照多有关Java的。

Java:1.线程安然,锁的实现,以及各类线程同步措施的差别。四大年夜引用,重载重写差别(我还涉及到JVM的动态分派和静态分派),hashmap源码(jdk1.8为什么要加入红黑树)和hashtable差别,stringBuilder,stringBuffer 差别

项目和Android:2.项目认真哪一块,图片缓存策略,广播的注册要领,动态注册在activity哪个措施注册,好处。数据的持久化存储要领(第二次问了)

3.手写单例模式(写多了一个同步锁,口试官发清楚明了),随机存储0-99这些数到int[100]数组中,不能重复(写得不全,不停在想优化算法的问题,一开始还存在数组越界的问题,又被口试官发清楚明了)

后面便是常规问问题,我的问题问得对照傻,也可能是被刷的缘故原由之一,以是建议各位同砚事先好好筹备几个问题。

后面问了口试官的建议以及评价

口试官着末的回答是:根基还算对照踏实,然则说话的表达(先理清思路再回答),腾讯这么大年夜的公司算法也是要过关的。可能没给口试官留给心思周到的印象,当晚口试从6点多面到7点多,当时大年夜家还没用饭,我是着末一个口试的。面完一个傻傻的站在酒店楼下发呆了一下。当时回到黉舍查了下微信显示“当前职位可能不得当您”。终极和腾讯就这样失之交臂。

富途证券

这是一家由腾讯控股的公司,感到挺不错的。

一壁,评价A

1.训练做的项目先容各个技巧点(要有自己亮点)

如界面卡顿(列表缓存优化), EventBus留意点

(肴杂代码后注册措施被肴杂了咋办,3.0加入APT评释对象)等等

2.Android:oom,内存泄露,http哀求措施,get,post差别

Java相关:

抽象类和接口差别(忘怀已经若干次问了)

逝世锁,n个线程n个资本n个Lock,若何避免逝世锁

4.一个6升和5升的水壶,没刻度,若何获得3升水

5.互换变量,不能用中心变量,办理的道理

口试官人很好,交流的时刻有提示

二面跟腾讯的套路很类似,评价B*+

1.上来就把做对做错的题问一下,还有笔试的sql语句不会写,继承写,照样错

2.变形二分查找(本人笔试字体丑),继承写

3.马铃薯,买和卖各一天,100天,求最大年夜利益

着实便是股票的生意最大年夜利益

4.100瓶药水,有且只有一瓶毒药水,老鼠喝了7天才有反映。问至少若干只老鼠才能找出那瓶毒药水

CVTE提前批

一壁

都是面完一个面完上一个。没有顺序,两个口试官,看样子都是搞Android的

1.我项目中的一个写到了推送的TCP心跳包,就细问了一下道理(若何包管后台进程不被kill等等)

2.线程启动的措施(三个)

3.软引用、弱引用差别,见我回答得对照快又爽,就问了下虚引用的引用处景等等

4.Activity的四种启动模式

5.Handler机制

6.HashMap源码

7.MVP,MVC,MVVM差别,用丹青出来

8.Java垃圾收受接收 --babalala

9.泛型

10.锁(sychronized/look&&reentrantlock)

11.手写算法:找出字符串第一个只呈现一次的字符,秒了。讲了下思路

12.讲下RxJava的flatMap的道理

13.口试官说没什么问了,就多问一下多线程的常识--若何停止线程(当时忘了就讲了一个不常用的stop)

14.怎么进修Android,有没写博客(若干篇),有没开源(若干个star)

15.有没进修新的说话,原本口试官是想知道有没学Kotlin

可能有些是忘怀了,然则基础按照自己知道的整个都说了,然后口试官叫我到那边坐着等一下先,以是知道一壁是过了

二面

等了一会,很快就有人叫我上去二面了。口试官是一个年轻的小伙子

1.首先他一上来就问了一个算法,听说是常常常常问的一个:1 11 1111111 。。。2017个1,求输出

我没问输入是什么,然后他就问我输入你都不知道是什么就开始写了,全部历程不停被压着。他说n是2017,然后我就开始写了,5分钟没写完。然后他问我写完没,再给了2分钟。后面基础讲了下思路吧。那时刻感到就不好了,有种压力面的感到。

2.后来他说这个先这样吧,说先问问收集吧,HTTP是哪层协议(利用层),说到了基于TCP,然后他问了我若何UDP仿照TCP安然传输,然后我就说了下ack序列号滑动窗口等等。有些可能是跑偏了,然后他又说我跑偏了,那时刻真的想直接回去了GG。这个问题上扯了好长光阴,似乎没令他知足。就问了一下数据怎么安然性,我说了加密,还有ca证书等等。这个时刻已经感到自己跪了。

3.说到了内存溢出,图片的JPG和PNG差别,还有5.0加入的SVG,图片大年夜小若何谋略,图片若何压缩,算法

4.然后就问我看过了什么源代码,我说了一下设计模式相关的看得多(他们对照爱好问设计模式),然后说到了属性动画道理是反射,然后就问反射的毛病(忘了),再说到了代理模式,就问了下静态代理和动态代理差别。我也忘了。

5.问我假如接到一个项目,你会从哪个方面斟酌,从代码方面讲述,还有机能方面等等,后面他又说我跑题了。我整小我都不好了。

6.着末他说他懂得得差不多了。问了一下对自己的体现评价,我说我秋招再来吧,面的不好。然后就问了下公司的环境知道吗,有没有感觉刚才你感觉你上风的地方我没有问出来的等等。

7.知道自己跪了,就礼貌地跟他握了个手,他笑了一下,他说他也是我们黉舍卒业的。

终面

由于面得不好,以是问HR是否能回去了,没想到HR跟我说还有一壁,心里想,这也能过。后面便是两个HR对三小我

1.家庭成员

2.职业筹划

3.今后想事情的城市

4.想加入的公司

5.对自己影响最大年夜的一小我

6.抱负薪酬

7.进修成就

8.压力最大年夜的光阴

9.对提前批的见地

10.有无其他公司offer

11.什么行径是自己不能吸收的

12.对加班的见地

13.父母对自己的等候

美团深圳一壁,霸面挂

1.Java:

HashMap的底层和HashMap的hash算法

volatile的含义,应用处景,线程yield的感化

2.垃圾收受接收机制,有若干能说若干

3.收集,OkHttp底层源码,哀求行列步队详细到是一种怎么的行列步队,画一下哀求包布局,哀求头有哪些常用字段,若何加快收集的加载速率,从客户端,办事器方面,代码优化方面等

4.Android:

内存透露场景,Handler机制,轮回消息是履行在哪里的线程?假如没有消息,它是一种怎么样的情景

ListView可以优化的地方

apk瘦身

若何让app启动加快,(冷启动),

插件化道理,hook道理

点击图标Launcher进程启动别的一个进程的历程,binder相关的,比如client是若何向servermanager注册binder的,能说若干就说若干。

activity的启动模式和引用处景

Android若何维持service不给skill掉落?有哪几种进程?优先级从高到低。

加载图片列表的优化,oom问题若何避免,bitmap相关等

viewstub感化

RxJava应用的上风

MVC,MVP,MVVM画图解释差别好坏势

5.假设有一个最大年夜线程数是5的线程池,当加入6个义务的时刻,你是若何设计办理这样一种场景

6.手写判断链表有环

至此,当时找到还算不错的事情就不想再折腾了,以是美团绝不踌躇地挂了。然则美团的口试体验是异常友好的,为hr和口试官点赞。

至于我去哪里,就保密吧哈哈。

手写算法常见

1.链表:插入,删除,反转,判断单链表是否有环

2.排序:快排,归并,堆排,比如第k大年夜的数

3.实现一些常见的数据布局,比如栈等

4.字符串的处置惩罚,分外是第一次只呈现一次等环境的字符查找。

秋招的一些体会

上面只是记录了一些感觉参考代价较大年夜的口试,就可以表现出Android开拓在校招的一些要求。可以得出以下一些小我的总结:

1.数据布局和算法根基,分外是大年夜公司的笔试或者口试都可以表现出来

收集:TCP/HTTP,设计模式,Java根基,Android根基都是必要异常踏实的。

2.项目,必然必要有自己的深度和亮点。至于训练经历那块,最好是有大年夜厂的训练经历,这样可以经由过程很多公司的简历筛选。

3.再说说一些软实力,比如说话的表达能力,后面多参加几个公司的口试就培养起来了,一开始我也不是分外好,后面面多了就成精了。

4.心态,不要由于一次的掉败而气馁,也不要由于一次的成功而骄傲。口试存在着必然的命运运限因素,谋事情是双选选择。

5.着末,Android的需求确凿趋于稳定了,对付Android开拓职员的要求越来越高,很多必要透过源码的本色去阐发,以这天常平凡更必要严格地要求自己。

以下是小我看过的一些册本

1.有关C/C++:

C primer第五版:http://product.dangdang.com/8976834.html

C法度榜样设计说话第二版(至今都未更新,大年夜神出的书):

http://product.dangdang.com/8766529.html

C++primer第四版:

http://product.dangdang.com/9157098.html

数据布局和算法

数据布局和算法阐发(C说话描述)

http://product.dangdang.com/8767364.html

(小我觉得最好能表达出数据布局的英华就只有C/C++)

算法(第4版)【Sedgewick之巨著,与高德纳TAOCP一脉相承】:

http://product.dangdang.com/22880871.html

有关Java和虚拟机:

Java编程思惟(第4版)

http://product.dangdang.com/9317290.html

(后来看不下去了,太多,代码和字太密)

Effective Java中文版(第2版):

http://product.dangdang.com/20459091.html

(很多人都说它是本好书,你感觉呢)

Java并发编程实战

http://product.dangdang.com/22606835.html

Java核心技巧 卷1 根基常识(原书第9版)

(师兄送了卷1和卷2,我只看了卷1->>>英文版,保举)

深入理解Java虚拟机:JVM高档特点与最佳实践(第2版)

http://product.dangdang.com/23259731.html

有关安卓:

第一行代码初版(去年12月出的第二版),Android编程入门经典(高档编程还没看),Android开拓艺术探索,Android 源码设计模式解析与实战 。

有关操作系统:操作系统精髓与设计道理

http://product.dangdang.com/20919066.html

着实更保举深入理解操作系统那本书。

着末的,有必要Android面经总结的,可以鄙人面留个邮箱,看到的必然会回覆。

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