起由

搞了7年多Android了,前阵子面试了一家不大不小的公司。公司不大,面试官架子还不小,一副目中无人高高在上的样子,搞得好像我一万个想进他们公司、我进不了他们公司我全家都得喝西北风一样。搞得我是真的郁闷:现在搞Android的找工作这么卑微???

给大家分享一下我的面试经历

操蛋的面试

一面

面试官:先介绍一下自己吧,做过哪些项目,掌握哪些技能

我内心:(简历都有写的,你自己不会看么?只好照着简历里写的说了一遍)
熟悉Android Framework,组件化开发及MVC/MVP/MVVM程序设计框架;熟悉UI/ NDK开发,掌握TCP/IP,HTTP网络通信机制,有OkHttp使用包装经验,熟悉安卓图形处理OpenGL ES机制,有Camera视频开发经验。熟悉国密加密解密算法,有通过OMA访问手机SE,利用SIM卡进行加密解密的经验;有在支持NFC手机上进行读取NFC标签及支付的经验。有前端及后台服务器的开发经验,熟悉开发框架React,Vue,Spring Boot及Mysql数据库。熟练掌握的语言有C++11, Java, Python, Kotlin等,能熟练使用Git,VS Code, Android Studio等工具和开发环境。

面试官:懂的还挺多(这时才低头看我简历)工作经历也挺多的,那说说做的最满意的项目是哪个

我内心:(白眼)
描述了我北京一家公司的社交APP,介绍功能,实现,用到的技术,设计思想等等。

面试官:说一下项目中的性能优化怎么做的

我:首先是启动优化,MultiDex 分包机制,dex分包预加载等等。稳定性–内存优化,流畅–卡顿优化等等,反正我整理的这份一线互联网大厂高频面试知识点资料里关于性能优化的全给他讲了一遍。(文末会无偿分享给大家)

面试官:(有点懵13了,没想到我能讲这么多)内存泄漏,还有哪些检测工具?LeakCanary 的原理知道吧?

答:利用Application#registerActivityLifecycleCallbacks Activity生命周期回调onActivityDestroyed方法通过调用RefWatcher#wather方法来检测对象是否回收,通过removeWeaklyReachableReferences—>gcTrigger.runGc—>removeWeaklyReachableReferences—>heapdumpListener.analyze 三步二次检测来确定内存泄露,最终dump 内存信息来分析到最终显示分析出的泄露信息。

面试官:有点东西啊,来说一说,在5.0以上和4.0加载dex时的方式有什么区别?

不知道

面试官:说说什么是同步屏障,在Android绘制的过程中,掉帧是如何处理的

Android绘制原理,同步屏障,然后发送VSync脉冲信号

面试官:OOM、ANR 异常怎么处理

EZ,我的博客里都有解析的,大家感兴趣可以去我的主页看一下,就不多说了。

面试官:okHttp的原理了解吗?如何对它封装的

答:重试拦截器、桥接拦截器、缓存拦截器、连接拦截器、请求服务拦截器(封装)。每一个拦截器负责的工作不一样,就好像工厂流水线,最终经过这五道工序,就完成了最终的产品。

GreenDao的实现原理

忘记了

Retrofifit实现原理

只记得,Retrofifit 是一个RESTful 的HTTP 网络请求框架的封装。

整个面试大概是有一个半小时,他就简单问几句,中间喝了几次水,期间没有人给我递杯水问到后面我是有点不耐烦了的。

感想

几天后收到了二面的通知,直接拒绝了。一面给我的感觉非常不好。让我讨厌的面试官有以下几点

1、打断别人说话

在回答他提出的问题,我说着说着,他就打断:这个不是这样的,应该是这样的。或者没等我把这个答案说完,就直接顺出了下一个问题。

2、没礼貌

摆着一副架子,好像是我求着要他给我通过面试一样,一个半小时的面试,自己都要喝水,我一直在讲,也没有给我递杯水。面试中途还接了几次电话,把我晾在那里。

3、质疑别人的职业规划,对我的职业规划指手画脚。觉得自己的才是对的

问我为什么离职,我说出了自己的原因,产品方向和公司发展以及个人的一些进阶。然后他竟然怼过来说,一个做技术的在哪里不一样,这方面的东西不应该是你考虑的,做好自己的工作就行了,呵呵,呵呵呵呵。。。我就笑一笑

后来又面了几家公司都不是很满意,最后朋友内推拿了小米数码科技的offer。

感觉现在好多人都在说什么安卓快凉了,工作越来越难找了。又是说什么程序员中年危机啥的,为啥我这年近30的老农根本没有这种感觉,反倒觉得那些贩卖焦虑的都是瞎j8扯谈。当然,职业危机意识确实是要有的,但根本没到那种草木皆兵的地步好吗?

Android凉了都是弱者的借口和说辞。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

所以,最后这里放上我耗时两个月,将自己8年Android开发的知识笔记整理成的Android开发者必知必会系统学习资料笔记,上述知识点在笔记中都有详细的解读,里面还包含了腾讯、字节跳动、阿里、百度2019-2020面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。【点击我】就可以免费领取了。

以上全套学习笔记面试宝典,吃透一半保你可以吊打面试官,只有自己真正强大了,有核心竞争力,你才有拒绝offer的权力,所以,奋斗吧!骚年们!千里之行,始于足下。种下一颗树最好的时间是十年前,其次,就是现在。

最后,赠与大家一句诗,共勉!

不驰于空想,不骛于虚声。不忘初心,方得始终。

7年老Android一次操蛋的面试经历相关推荐

  1. 7年老Android一次操蛋的面试经历,挥泪整理面经

    看到还有很多程序员连面试流程都没有彻底弄清楚,今天,我们以阿里为例,来聊聊互联网大厂的面试流程和过程! 本篇主要还是聊聊社招的面试过程!阿里以及其他的互联网大厂的技术类社招面试,通常情况是 4 个轮次 ...

  2. 7年老Android一次操蛋的面试经历,灵魂拷问

    前言 说不焦虑其实是假的,因为无论是现在还是最近几年,很早就有人察觉Android开发的野蛮生长时代已经过去.过去的优势是市场需要,这个技术少有人有,所以在抢占市场的时候,基本上满足需要就已经可以了. ...

  3. 7年老Android一次操蛋的面试经历,讲的太透彻了

    由于涉及到的面试题较多导致篇幅较长,我根据这些面试题所涉及到的常问范围总结了并做出了一份学习进阶路线图​​​​​​​及面试题答案免费分享给大家,文末有免费领取方式! View面试专题 View的滑动方 ...

  4. 7年老Android一次操蛋的面试经历,系列教学

    公司的需求 不同的公司,不同的需求现在的市场上,公司很多,大致上可以归纳为两个大类:大公司和小公司,他们招聘时对人才的需求也不一样. 小公司 小公司他们一般急需的是能够投入工作的人才,因为公司规模小, ...

  5. 7年老Android一次操蛋的面试经历,深度好文

    Java基础 Java Object类方法 HashMap原理,Hash冲突,并发集合,线程安全集合及实现原理 HashMap 和 HashTable 区别 HashCode 作用,如何重载hashC ...

  6. 7年老Android一次操蛋的面试经历,讲的明明白白!

    前言 最近两部剧爆火,30而已,20不惑,其实刚刚开始看这个2个电视剧我在想是不是说反了.不是应该29而已,30不惑吗?后面想想其实他应该是想告诉我们这个残酷的现实吧!在这个时代我们20 岁就必须成熟 ...

  7. 7年老Android一次操蛋的面试经历,附小技巧

    前言 作为一个程序员,如果你在新知识.新技术面前仍一无所知,依然吃着十多年前的老本,那你在知识技术上肯定落伍,如果又未能进入管理层面,那你肯定就会被长江的后浪拍在沙滩上了. 而不少与时俱进.善于学习的 ...

  8. Android程序员春招三面蚂蚁金服,7年老Android一次坑爹的面试经历,先睹为快

    本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注 面试官: 音视频是什么,视频为什么需要压缩 心理分析:很多人对音视频的概念停留在 苍老师的小电影上,只能理解他是一个视频文件 ...

  9. 7年老Android一次坑爹的面试经历,吊打面试官系列!

    前言 刚从阿里面试回来,想和大家分享一些我的面试经验,以及面试题目. 这篇文章将会更加聚焦在面试前需要看哪些资料,一些面试技巧以及一些这次的面试考题. 一个朋友是前阿里人,37岁,离职后就职美团.以前 ...

  10. 一个Android菜鸟“面霸”的面试经历,如何少走弯路多加薪!

    作为程序员,尤其是菜鸟程序员,如何成为一个"面霸"征战沙场,少走弯路,升职加薪,当上CTO,迎娶白富美! 今天是我入职一个创业公司的第二天.由于公司今天才把自己用的电脑买回来,只好 ...

最新文章

  1. zbb20190528 城市经纬度json
  2. oracle normal bitmap,深入解析Oracle ASSM结构之Level 1 Bitmap Block
  3. python羊车门问题_「羊车门」经典概率题中不换门选中车的概率是多少?
  4. sql server使用杂记
  5. html中文本格式化、预格式化、计算机输出标签、address、title、文字方向、著作
  6. Shell脚本编程30分钟入门
  7. 百练 01 Charm Bracelet
  8. 一个带CheckBox的树形目录的递归算法(javascript)
  9. 你的Parquet该升级了:IOException: totalValueCount == 0问题定位之旅
  10. 十七步学习ROS Toptics -ubuntu 18.04 melodic- ROS/教程/理解主题的概念:ROS/Tutorials/Understanding ROS Toptics
  11. SQL性能健康检查脚本
  12. 机器学习模型可解释性进行到底——特征重要性(四)
  13. 直播防盗链,域名设置
  14. C语言打印九九乘法表
  15. 官方AI语音系统电销机器人系统搭建|AI智能|电话机器人源码|2022最新电销外呼系统《各版本机器人部署》
  16. mysql 水晶报表_Crystal Reports 2008(水晶报表) JDBC连接mysql数据库
  17. 安装JDK11并配置环境变量(附百度网盘下载地址)
  18. echarts 自定义 tooltip
  19. VMware16安装win7 x64 虚拟机
  20. 在Vmware 14 pro 中安装中兴新支点操作系统

热门文章

  1. MacBook安装p7zip解压7z文件
  2. 路由器怎么连接台式电脑
  3. JavaScript---文件下载处理文件下载失败兼容IE11文件下载
  4. happen-before与volatile、final
  5. 电脑计算机键盘没反应了怎么办,电脑键盘无法使用怎么办 键盘没反应解决办法...
  6. ajax readystate为1,Ajax readyState总是等于1
  7. [翻译]CryEngine3中ClothShader详解
  8. swift-集成touch id功能 指纹验证
  9. OpenDaylight(ODL)学习笔记
  10. 【链环科技】微信公众号商城开发优势