三年 Android 开发的技术人生,浅谈自身面试的感悟

  • 手写 算法-二分查找

原因: 二分查找没写出来,对你没有看错,真的给没写出来,当场差点给老弟哭了。


MetaApp-卒

  • 笔试题

  • 大数相加。(禁止使用bigxxx,String长度可能超过long)

  • 两个String字符串除重,确保顺序不变

  • 上述的解法,算法复杂度是多少,有没有达到O(n),没有请实现一个?

原因:大数相加写的很失败。


阶段小总结


老弟算法差到离谱,于是痛定沉思,刷刷算法题,真的是丢人,排序算法,二叉树等等。


新氧科技-卒

  • 一面

  • 聊项目

  • 聊组件化,为什么要用组件化,背景,组件到的依赖问题

  • 聊聊JetPack

  • 项目中用过哪些性能优化说一下?

  • 说一下你是如何做包大小治理的

  • 说一下你的性能优化具体做了啥?

  • 说说SparseArray和HashMap区别,内部实现?

  • 说说为什么CoordLayout为啥比RelayoutLayout效率高,内部实现?

  • 当LinearLayout和CoordLayout相同情况下,优先使用谁,为什么?

  • 二面

  • 聊聊你在上家公司做了什么

  • 聊聊你为什么要辞职

  • 聊聊你的项目

  • 说一下你知道的基本数据结构

  • 说一下常见排序算法

  • 说一下快速排序的原理

  • 你还有什么想问的吗

原因:技术VP觉得工作年限不足,可能是安慰吧。


未来花朵-婉拒

  • 一面

  • 讲讲你的项目

  • 说一下你是如何做包大小治理的

  • 讲一下你对Handler的理解

  • 讲一下view绘制流程

  • 二面

  • 讲讲你再上家公司干了什么

  • 讲讲你为什么要辞职

  • 聊聊你的项目

  • 对直播一些问题的解释

  • 讲讲kotlin和协程

原因:是一家创业的小公司,在二面中发现面试官技术深度欠缺,与我职业规划有点差异。


7k7k-婉拒

  • 一面

  • 讲讲Android四大组件

  • 说一下编译版本,最低版本,最高版本的区别

  • 说一下Android各版本差异

  • 说一下服务

  • 二面

  • Java基础考察主要

  • Java多线程相关

  • 两个栈实现队列

  • 二叉树的遍历方式

  • 一个8个石头,一个天平称重,其中一个石头较重,求最快几步(穷举)

原因:面试得还不错,同样,这家也是独立开发,他们的擅长是做游戏,于是婉言谢辞。


彬彬有礼-卒

  • 一面

  • 讲讲你负责的项目

  • 说说Android事件分发机制,及dispatchEvent方法内部做了什么?

  • 说一下Retrofit,和Okhttp的区别

  • 说一下glide如何加载指定个数此gif图

  • 说一下内存泄漏常见的场景,及你如何处理一般

  • 二面

  • 讲讲为什么要离职

  • 说一下Flutter?

  • 你都了解哪些设计模式,讲一下

  • 。。。

原因:应该是音视频不怎么了解导致,这家需要音视频比较了解的小伙伴。


阶段小总结


老弟对JVM基础了解还差点,简单点来说,背的不熟练,比如Java内存区域这些基础东西,需要看看。


一下科技-卒(hc满了)

  • 一面

  • 讲一下热修复的原理

  • 说一下Java的内存模型及Gc的回收机制

  • 谈一下你项目中用到的IM

  • 简述一下 一个流式布局整体的写法,比如onMeasure和onLayout中做了什么

  • 说一下xml中的布局如何转化为代码

  • 说一下ArrayList和LinkeList区别及实现原理

  • 说一下换肤的原理,讲一下如何动态配置换肤的资源包

  • 说一下你做过的内存优化有哪些?

  • 说一下包大小治理方面你做了什么?

  • 二面

  • 说一下你认为的组件化与模块化的不同?

  • 说一下TCP三次握手

  • 除了Retrofit,还用过其他网络框架吗,说一下区别

  • 看过OkHttp源码吗,说一下原理

  • 讲一下你对Handler的理解,不要涉及源码

  • 说一下音视频相关的,比如直播的流程

  • 说一下你了解的设计模式

  • 三面(Hr)

  • 说一下你为什么要离职

  • 谈谈一些想法

  • 以一个非技术角度给我讲一下冒泡排序

  • 说一下TCP三次握手的原因是什么?

  • 说一下你对二叉树掌握多少

  • 说一下常用的排序算法及复杂度和原理

  • 四面(交叉面)电面

  • 谈谈你做过的项目

  • 说一下你做过的性能优化有哪些

  • 你还有什么要问的吗

原因:1,2面聊得都不错,能看出来技术深度不错,3面Hr一上来就问三次握手,老弟有点吃惊,看得出来这个HR有点意思。总体氛围也不错,4面结束,面试官说成了,等人事电话,最后等来了HC满了,也就意思是你被当备胎了。


壳壳互联-卒

  • 一面

  • 稀奇古怪聊了很多

  • 如果让你采用Linux开发,你会同意吗?

  • 最后选答题-app随机拿的:

  1. 知乎App的会员页设计你会考虑什么,都有哪些view,需要注意什么?

  2. 知乎App的我的-上半部分卡片栏你会如何设计?

  3. 如果让你设计一款知乎App,它的架构你如何选择?

上述问题有10,15,20分钟,选择一个开始作答。

选了3,组件化结构,最后结合知乎画了一个粗略的框架图

总结:面试官人不错,注重发散性思维,看着你自己的想法,如果不了解某个原理,就讲自己的看法,无关对错。

乐我无限-卒

  • 一面

  • 具体忘了,聊了1个小时

硬核聚视-卒

  • 一面面试官不讲武德,吊的没法了,你说什么,都说你不对,你问他原因吧,就说你自己回去找;

  • 问我为啥选择移动开发,我说开始是因为热爱,来了一句,你和没说有啥区别,硬忍着面完了;

  • 一顿c++的问,我是移动开发,好家伙,我是面错岗位了吗?

补充,一面是高级面我,二面是Leader面,二面感觉很好,现在知道为啥一面当不了Leader了?30多了还不讲武德,还是算了吧,怪我太菜。

莱特摩比-卒

  • 一面

  • 了解过蓝牙吗,你认为它属于四大组件中那一个

  • 使用ping命令如何计算当前已连接wifi下有多少个设备,如何获取?

  • 其他问题忘了,都很简单

  • 二面

  • 整体对面试官印象并不是很好

总结:这是一家创业公司(996),是做游戏+app工具,技术栈并不深厚,二面Leader没有平易近人的那种感觉,慎重吧

奇天乐地-拒

怎么说呢,不讲武德,虽然说做sdk开发,典型的套壳app,技术提升毫无帮助。

试用7天,无工资,如果通过就包含工资,试用期三个月,第一个月不上一金。

就这条约,招两个人,原因几何呢,心里没点数了,面试官还透漏老板脾气不好,好家伙,这种公司去了完全是放弃自己,看不到任何技术发展。

美兰德-拒

  • 笔试

先笔试题4张,Java基础+Android基础

  • 一面

  • 技术问题聊得很少,并不适合

阶段小总结


也是瞎投简历了,有些跑过去浪费了彼此时间,这点得给自己扇一巴掌。

章鱼科技-卒

  • 一面

面试官应该Android新手,聊问题时,小小的眼睛大大的疑惑

  • 二面

  • 说一下Http和Tcpip

  • Tcp为什么要三次握手,如何保证握手后就一定没问题

  • 给你两个链表节点,判断这两个链表是否相交

  • 给你一个数组,反序返回出来

总结:做智能硬件的公司,其他没什么感受

少年得道-70%卒

  • 一面

  • 说一下项目中遇到的问题,你怎么解决

  • 说说gc回收机制,怎么回收的流程

  • 说一下app启动流程

  • 说一下内存泄漏的原因和场景

  • 说一下你都做过的内存优化

  • 说一下你怎么做启动优化的

  • 说一下activity,winodws,view三者之间关系

  • 说一下activity转屏后的生命周期变化,及如何避免生命周期改变

  • 说一下你了解的插件化,谈一下为什么要有插件化,需要解决那些技术问题

  • 说一下tinker内部怎么实现

  • 说一下hashMap实现原理

  • 了解过ConcurrentHashMap,说一下原理

面试官很善谈,对于一个问题,如果你不了解原理,会让你自己想象如何去设计这样的一个组件,发散性思维

总结:一家做K12教育的公司,氛围不错,一面中有些原理没答的太好,比如tinker和插件化相关。

iRigel-70%卒

  • 视频面

引言:我是看你博客过来的,你博客的你还记住多少,我就随便问了哈

最后

我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了5、6年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。

其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。

不断奔跑,你就知道学习的意义所在!


《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
答的太好,比如tinker和插件化相关。

iRigel-70%卒

  • 视频面

引言:我是看你博客过来的,你博客的你还记住多少,我就随便问了哈

最后

我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了5、6年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。

其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。

不断奔跑,你就知道学习的意义所在!

[外链图片转存中…(img-Vi3xd0o0-1715169273573)]

[外链图片转存中…(img-T2lCCZgC-1715169273574)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值