Android-春招-面试经历-2024年,金九银十怎么从中小企业挤进一线大厂

文章分享了作者在不同公司面试过程中遇到的技术问题,如消息同步、Java类加载与代理、数据结构算法、数据库优化等,强调了基础知识和底层原理在面试中的重要性,以及提供了一份全面的学习资源以助于开发者提升技能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 两个页面的消息同步怎么做?(类似以前评论sdk的在子评论页面点赞时,back回来后需要同步这个点赞状态)

java:

  • 类加载流程

  • 类的唯一标识是什么

  • gc流程

  • map都有哪些类型,特点是什么,hashmap内部结构

  • 动态代理跟静态代理区别,如何代理一个普通对象

算法:

  • 合并两个有序链表,使得最终有序。

  • Map

map,按value平方的升序打印key-value。

  • 1000万个0~100之间的小数,找top100。如果是保留两位小数,怎么做?

4. akulaku

整体的面试体验还是不错的,面试官技术素养也不错。一下午走完了所有流程(2轮技术1轮HR)。该公司应该也算是创业公司吧,有阿里的投资,内部很多产品线,主打东南亚电商和金融,目前算是个爆发增长期。

记忆比较深刻的问题有:

retrofit的动态代理中是如何处理接口返回类型的(因为接口申明的泛型在运行时会被擦除)

在做项目架构时封装的BaseActivity/BaseFragment一般要放哪些对象

Binder整体的运行逻辑是怎样的(要能说出底层的大概原理)

5. 恒信永利

公司没什么名气,做互联网金融。但从面试过程来看技术实力还是相当不错,当时面的是架构师岗。准备不是太充分很多问题回答的确实不好(应该只复习到中期阶段),整体来讲也还可以。而且在这之后就开始慢慢找到自信了。

记忆比较深刻的问题有:

  • 架构的核心是要解决什么问题,怎样才称为好的架构

  • 桥接模式属于什么类型的设计模式(结构型模式),它是用来解决什么场景的问题

  • 画一下IM系统中用户A给用户B发送消息时数据包和信令包的交互图。

CurrentHashMap的实现有没有看过源码,说一下它优化并发的原理。

对CAS的理解,用你熟悉的并发方式实现一下生产者-消费者模式并评估它的效率。

6. oppo(应用商店)

公司就不说了,整体是很不错的。面试体验也还可以,参加的是他们周末的招聘会,面了2轮技术面。感觉是第二轮群面的时候表现得不好,有细节没准备充分。有点浪费机会了的感觉,导致后面也没有机会面其他部门了。

比较深刻的似乎大都是跟View相关的问题:

  • View体系中动画的绘制原理。(没有答到点上,需要看View中对动画处理的那部分源码)

  • 上面的提到的滑动冲突中fling()的停顿问题如何解决

  • 有哪些方式可以实现滚动一个子View

  • activity的启动流程

7. vivo(大数据中心-埋点sdk)

公司也不说了,整体都挺好的。总共面了3轮技术面+HR面,由于前面面经的积累,目前来看基本没再碰到应用层面的难题。

印象较深的面试题有:

  • 说一说系统ANR的实现原理,平常是如何解ANR问题的,如果在发生ANR时trace文件打印的堆栈是MessageQueue.nativePollOnce()处阻塞该如何定位具体问题在哪

  • 如何实现热更新的不需要重启进程就生效

  • activity的启动流程

  • 说一下乐观锁和悲观锁

  • 单例模式在实际使用中有什么缺点

8. 顺丰科技(快运)

公司平台还是不错的,而且是今年发展的核心业务,团队还在建设中,发展前景还是很不错的。只是工作内容会比较偏重业务,看个人对工作的兴趣吧。

由于是重业务的工作性质,面试问得最多的就是数据库相关的:

  • 如何做数据库表结构的升级。

  • 客户端数据库SQLite的极限是可以存多少数据,如果数据量特别大,如何优化数据的查询效率。

  • 画一下IM系统客户端的数据库表的结构图,实体要包含用户信息、单人会话、群聊。

  • 弱网状态下如何保证数据的最终的可用性和可靠性(http的缓存和压缩)。

9. 万兴科技

是一家创业版的上市公司,公司技术能力还不错,主打一款视频编辑软件,因此对标的技术点就是多媒体相关开发(c/c++、音视频、opengl)。感觉公司的商业模式比较奇怪,竟然现在还在卖软件license授权,可能是因为目标市场在国外的缘故吧。不过对多媒体开发有兴趣的还是值得试试。

总结

其实客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

总结

首先是感觉自己的基础还是不够吧,大厂好像都喜欢问这些底层原理。

另外一部分原因在于资料也还没有看完,一面时凭借那份资料考前突击恶补个几天居然也能轻松应对(在这里还是要感谢那份资料,真的牛),于是自我感觉良好,资料就没有怎么深究下去了。

之前的准备只涉及了Java、Android、计网、数据结构与算法这些方面,面对面试官对其他基础课程的考察显得捉襟见肘。

下一步还是要查漏补缺,进行针对性复习。

最后的最后,那套资料这次一定要全部看完,是真的太全面了,各个知识点都涵盖了,几乎我面试遇到的所有问题的知识点这里面都有!在这里也免费分享给大家,希望大家不要犯和我一样的错误呀!!!一定要看完!


获取方式:点击我的GitHub

[外链图片转存中…(img-vK3muHra-1710772646650)]

[外链图片转存中…(img-qD9tz0tb-1710772646650)]

[外链图片转存中…(img-fMY00Noe-1710772646650)]
获取方式:点击我的GitHub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值