Android-茫茫9个月求职路,终于拿满意offer,项目实践
主要是明确自己想要加入的公司,并开始做技术准备。目标公司是BAT,我需要到更大的平台和更优秀的人做更好的项目,正常来说加入BAT以后可以让自己的实力和眼界得到提升,并且有一线大厂的光环对以后都是蛮重要的。
有人说去哪里都一样,去了大厂也是个螺丝钉,我想说我宁愿做航空母舰上的螺丝钉也不愿意做拖拉机上的螺丝钉。其实在求职的过程中一次又一次的失败曾经让我放弃BAT了,转而投向其他我认为有前景的公司,不过最初我真的是非常想去BAT!做梦都想去。
关于技术准备,主要是包含下面几项:
- 项目经历
- Java基础
- 设计模式
- 算法
- 网络相关知识
- Android基础
- Android源码
- Android性能优化
- 开源库源码
整个技术准备过程与面试过程是交替进行的,一边面试一边查缺补漏,如此往复。我当时是每天早上7点起床坐班车去公司,8点半吃完早餐就在工位上学习,一直学到9点半左右。然后10点开始办公,18时吃完晚餐,19时到20时,如果工作忙的话就办公,不忙的话就接着学习,后期公司任务变少了,有时候全天都在学习。
在这个过程中我真的是学的越多越觉得自己真是菜啊,一是觉得不知道的东西太多了,即广度太窄,二是知道的东西掌握的又不深,即深度不够。
面试进行时
准备了一段时间后我觉得自己准备的差不多了,就在拉勾上&boss上注册账号,公开了简历,前期我没有主动投递,有哪家让我去面试,我才去。后期就主动开始投简历了,这里不得不吐槽一下拉钩的star法则,以及万年不匹配。我面试的公司较多,摘取几个有代表性的公司拿出来分享下。
蓝厂
一面就挂了,主要是以下几个问题:
- 事件分发流程
- View的渲染机制
- 动画的原理,底层如何给上层信号
- 编译打包的过程
- Android有多个资源文件夹,应用在不同分辨率下是如何查找对应文件夹下的资源的,描述整个过程
- ANR的原理(回答主线程5秒阻塞是不行的,要读源码)
面试官是做framework的,所以问的东西偏framework,最后他说“虽然你是做应用的,但是不能浮于表面,要深入研究”,我觉得他说的很有道理。
度娘
晚上八点半,在雨中打着伞接到电话,进行电话面试,一面就挂了。
- Bitmap 使用时候注意什么?
- Oom 是否可以try catch ?
- 内存泄露如何产生?
- 适配器模式,装饰者模式,外观模式的异同?
- ANR 如何产生?
- String buffer 与string builder 的区别?
- 如何保证线程安全?
- java四中引用
- Jni 用过么?
- 多进程场景遇见过么?
- 关于handler,在任何地方new handler 都是什么线程下
- sqlite升级,增加字段的语句
- bitmap recycler 相关
- 强引用置为null,会不会被回收?
- glide 使用什么缓存?
- Glide 内存缓存如何控制大小?
- 如何保证多线程读写文件的安全?
面试官声音略显慵懒疲惫……我怀疑他是不是面了太多人已经麻木了
某海外直播公司
一面:
- 线程和进程的区别?
- 为什么要有线程,而不是仅仅用进程?
- 算法判断单链表成环与否?
- 如何实
《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享
现线程同步?
- hashmap数据结构?
- arraylist 与 linkedlist 异同?
- object类的equal 和hashcode 方法重写,为什么?
- hashmap如何put数据(从hashmap源码角度讲解)?
- 简述IPC?
- fragment之间传递数据的方式?
- 简述tcp四次挥手?
- threadlocal原理
- 内存泄漏的可能原因?
- 用IDE如何分析内存泄漏?
- OOM的可能原因?
- 线程死锁的4个条件?
- 差值器&估值器
二面:
- 简述消息机制相关
- 进程间通信方式?
- Binder相关?
- 触摸事件的分发?
- 简述Activity启动全部过程?
- okhttp源码?
- RxJava简介及其源码解读?
- 性能优化如何分析systrace?
- 广播的分类?
- 点击事件被拦截,但是相传到下面的view,如何操作?
- Glide源码?
- ActicityThread相关?
- volatile的原理
- synchronize的原理
- lock原理
三面:
- 三道算法题,要求在一个小时之内做完。
- 翻转一个单项链表 1->2->3->4->5->null =====> 5->4->3->2->1->null
- string to integer
- 合并多个单有序链表(假设都是递增的)
**四面: **
总监面,问了一些java 同步相关的。
HR面:
谈薪水,最后没谈拢。
由鹅厂与其他公司合资创立的公司
一场笔试加一场面试后挂了,面试官T4级别……。
笔试:
- Activity生命周期简述
- 常见内存泄漏情景及避免内存泄漏的措施
- Actvity启动模式简述
- 简绘观察者设计模式UML图
- 算法,求公共子序列(或者是子串,记不清了)
- Java四种引用
- 自定义view重写哪几个方法?
- http 的session&cookie的区别
- 简述工作线程更新UI的方法
面试:
- 应用最多占多少内存
- 滑动卡顿如何解决(不同原因及对应处理方式)
- 自定义view实战
- 多线程,多进程 相关
- Java四种引用的使用
某ding
一面就挂。
- XX项目你负责什么
- Sqlite 怎么增加一个字段
- XX项目中是怎么创建数据库的
- Sqlite 怎么删除一个字段
- 有什么你觉得自己做得好的地方
- 为什么用Retrofit(一个开源库)
- Retrofit与之前的网络库有什么优势
- XX项目中你们自己定义的线程池来管理任务,不使用框架,那么,后来新的项目怎么设计的
- 你认为Rxjava的线程池与你们自己实现任务管理框架有什么区别?
- 内存泄漏的常见场景
- 怎么发现&分析内存泄漏
某条
面了三轮技术加一轮HR,HR事业线不错,笑得职业化,其他的没记住。
网络库有什么优势
- XX项目中你们自己定义的线程池来管理任务,不使用框架,那么,后来新的项目怎么设计的
- 你认为Rxjava的线程池与你们自己实现任务管理框架有什么区别?
- 内存泄漏的常见场景
- 怎么发现&分析内存泄漏
某条
面了三轮技术加一轮HR,HR事业线不错,笑得职业化,其他的没记住。
Android-茫茫9个月求职路,终于拿满意offer,项目实践相关推荐
- Android-茫茫9个月求职路,终于拿满意offer
项目经历 Java基础 设计模式 算法 网络相关知识 Android基础 Android源码 Android性能优化 开源库源码 整个技术准备过程与面试过程是交替进行的,一边面试一边查缺补漏,如此往复 ...
- (转)阿里宝宝的漫漫求职路
http://hujiaweibujidao.github.io/blog/2015/10/09/a-li-bao-bao-de-man-man-qiu-zhi-lu/ 缘何而起 想了想,还是打算写点 ...
- Android攒了一个月的面试题及解答,offer拿到手软
前言 19年6月份从网易云音乐离开,放弃了留学机会,开始了人生的第一次创业,前后尝试了两个项目,因为个人能力与时机因素都失败了,虽然没能享受到创业所能够带来高杠杆物质上的回报,但是对个人软技能和自我边 ...
- 论一个函授大专生的Java求职路
论一个函授大专生的Java求职路 不知道在心里沉淀了多久,才终于开始写这么一篇博客,那个时候高考失利的我,阴差阳错的进了一所函授大专,当时并不知道这其中的猫腻,只知道是以某名牌大学的名字挂着,然后学费 ...
- 从阿里到网易,一位非985/211本科应届生的一年求职路
之所以会想写下这篇文章,是因为最近身边很多同学朋友在春招中挣扎,有的放弃,有的坚持. 我很想对放弃者说"坚持下去吧,会有收获!". 我还记得一年前我春招的时候,有一位工作室的学长A ...
- 从菜鸟到Android资深工程师的进阶之路
http://blog.csdn.net/mary_ml/article/details/50539521 http://blog.csdn.net/mary_ml/article/details/5 ...
- 【坎坷求职路】:选择大于努力!一名六次反复经历失败的应届生,最后一刻跻身阿里如愿以偿
背景 一个广州非985/211普通本科生,计算机科学与技术专业.以前老是梦想能考一个厉害一点的学府,学习物理专业(因为初中和高中对物理比较有兴趣),无奈高考考得不尽人意.来到了计算机专业,才知道有C语 ...
- 3g android4 移植 飞思卡尔i.MX 6Quad Android 4.2.2的中兴和Ublox 3G驱动移植 Android——4.2 - 3G移植之路
点击打开链接 3g android4 移植 点击打开链接 飞思卡尔i.MX 6Quad Android 4.2.2的中兴和Ublox 3G驱动移植 点击打开链接 Android--4.2 - 3G移 ...
- 《“疫情”结束后的Java求职路-技术篇 纯干货》
<"疫情"结束后的Java求职路-技术篇> 背景概述 1_JVM面试高频及优化 1.1面试题 jvm的组成 1.2面试题 JVM中的类加载机制 1.21JVM中的类加载 ...
最新文章
- UIView之动画效果的实现方法(合集)
- python 字符串反转
- 关于Zipalign的介绍和使用方法
- java 读取 邮件 附件,JavaMail 中对附件下载的处理
- C/C++ 中嵌入汇编总结
- Matlab编写一个脚本计算e,Matlab编程基础I脚本.PPT
- 数据库设计中常见表结构的设计技巧(转)
- Bailian2723 不吉利日期(POJ NOI0113-02)【日期计算】
- 今天来了一位妹纸面试,我问她:线程池中多余的线程是如何回收的?她有点懵~...
- Spring Struts2 整合
- 嵌入式Linux,4G模组驱动,移远EC20、EC25使用随笔-内核kernel
- 计算机英语辅助翻译软件,计算机辅助翻译(CAT)软件 计算机辅助翻译(CAT)软件 v6.3.0.616...
- 会议OA之我的审批(查询签字)
- 反斜杠“\”的几个用法!
- 长期宅在家的人都有什么比较好的室内锻炼的方法?
- MySQL攻略(1)
- WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers
- win10任务栏显示“中/英“语言标识
- Pyserial 实例教程详细用法
- 【python画图_等高线】
热门文章
- 1/6黄金最新走势分析美原油全面操作建议
- 写推文满一年,分享 5 个小编常用的写作软件
- 实现 3D 时间动画展示效果
- Tomcat可以正常启动,却打不开webapps目录下的html文件
- 中介者模式 - 门面
- Win10 PowerShell,通过SSH公钥远程连接Linux服务器
- php登陆网页版微信代码,几行php代码实现微信自动注册登陆 (微信PC扫码受权登陆注册)...
- 成功的那些事儿--绪言
- win10微软图标点击无反应_steam图标 教你win10系统双击steam图标没反应的解决教程...
- 计算机常见故障 英语词汇,计算机常用英语词汇大全剖析.doc