拿到腾讯Android面试offer,我是如何准备技术面试的!,2024一位Android中级程序员的跳槽面经

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

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

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

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注Android)
img

正文

4.内存优化和工具,APK瘦身

5.get和post的区别,浏览器中输入一个地址然后展示出页面这个过程中做了哪些操作

6.断点续传和下载的原理

7.glide缓存原理,lru算法

8.动态代理原理

腾讯二面给我最大的印象就是面试官说的一句话,挑一个你觉得可以的项目,然后我们聊一些东西。从这句话我感觉很多人都能够感觉出来,二面主要还是聊 你的,一定给有一个项目才行。并且好好去准备这个东西。同样没有什么具体的问题,每个人的项目都不一样,实现方案也不可能完全一样。所以聊的东西也就不可 能完全一样。二面什么太多的经验,主要还是认真的去准备一个项目。

二面面试题分享:

1.java虚拟机

2.内存优化

3.arraylist hashmap linkedhashmap

4.binder

5.surfaceView和view

6.AMS WMS

7.APK瘦身

8.锁(死锁的场景和解决方案)

9.算法 两个字符串 比较最大的公共字符串 ,主要是思路 (面对问题,以大化小)

三面面试题分享:

1.http优化 okhttp多路复用

2.硬币兑换问题 [算法]

3.车的通过问题,一条路上,30分钟内看到有车通过的概率是90%,那么5分钟之内概率是多少

4.图的展现形式

5.全球货币转换功能的代码

6.给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度

面试前的准备


这是我最想跟大家聊的东西,因为关于面试前的准备,或者是准备什么还是很有必要重点分享下的。

很多人面试的时候不知道说什么,同样很多人都说要引领着面试官,不要被面试官引领。但是该怎么做呢?难道我们不让面试官说话?我们给面试官规定题目?这都是不现实的,对吧?但是通过一些准备,还是可以实现让我们去给面试官”规定题目”的,怎么做?举一些简单的例子

例如:你的简历当中写到自己对Socket有一些了解,那么很自然的就会聊到TCP,你提前好好准备下,你自己都是可以预知的,当面试官问听到你 Socket的时候,自然就会走到TCP上。如何准备?很多人上网上查了一些,TCP很经典的就是连接的三次握手,断开时的四次挥手。你也简单的查了一下 三次握手什么样,四次挥手什么样,但是这仅仅就够了吗?我们为什么不在往更深层去准备下呢?例如连接为什么是三次,断开为什么是四次?连接如果两次会发生 什么?三次握手中总共发送了三个包,那么仅仅就是做了三个作用吗?更往深处可能会涉及到TCP的头部结构,以及TCP连接,断开时SYN,FIN,ACK 的有效值设置又是什么样的?我相信你把这些都说出来肯定是会被加分的。当然你想很好的说出来不是说你面试前查查就可以了,肯定是需要去好好的去理解的。这也就是我说的面试前的准备,不要为了面试而面试,而是要为了面试而去学习,提升自己。

我可以再举个简单的例子,关于图片缓存这个东西,在iOS,Android中有很多动态的图片缓存解决方案。你的简中如果写到做过相关的操作,我觉 得这个东西还是很值得去问的。明知道会被问,面试前肯定要好好准备下啊。准备的过程当中我觉得需要总结出自己的方案中优点有哪些,缺点有哪些,针对你的缺 点你准备怎么做,或者说你可以针对你知道的一些知名的开源库是如何解决的,你有什么可以借鉴的,这样我感觉你肯定是要被加分的,最起码你是阅读过开源库, 并且认真的去思考过。

我就见过有人被问到如何做图片缓存的时候,他就简单的说了一句通过URL下载图片然后保存起来,以便利用。这个话题当中有很多东西都是可以去值得聊 的,就说这么一句话,我觉得面试官不可能得到他想要的答案,他没有得到答案,肯定是要去接着问你的。这个时候你就会显着的很被动,接下来就是要被面试官引 领着走了。有人会问有什么可以聊的?

我举一些简单的例子,例如图片的缓存方案肯定是要涉及到图片的下载问题,既然是下载,那么下载进度信息的回调你怎么做的?下载失败怎么办?下载完成 的回调怎么做的?下载肯定涉及到多线程的下载,那么这些线程你是如果管理的?线程管理器的结构又是什么样的?甚至是一个URL下载连接正在被下载,另一个 地方发起了一个相同URL的下载,这种情况我认为为了节省资源不应该在新开一个线程去下载,那么这种情况你有做处理吗?如何做的?其实有很多值得考虑的问 题和值得去说的。做缓存,你做的是磁盘缓存啊?还是内存缓存?还是两者都有?是否支持磁盘空间大小的设置,图片有效期的设置如何做的,图片的清理工作,我 相信无论在iOS还是Android那些知名的开源库不可能就是简单的有一个清理方案,肯定是支持部分清理,或者全部清理,部分清理的依据又是什么?例如 依据图片的有效期来做清理,过了我们设定的有效期,这个时候我们就需要去清理掉这部分内容。另外如果如果所有缓存文件的总大小超过这一大小,则会按照文件 最后修改时间的逆序,以每次一半的递归来移除那些过早的文件,直到缓存的实际大小小于我们设置的最大使用空间。这些东西都是有很多值得去说的,当然你只要 去感悟的越深,理解的越深,就会体会的越深,表达的就会越好。

刚刚提到的东西我觉得聊个20分钟还是很容易的,因为这个里面存在的东西和值得注意的地方太多了。准备好一个项目,找出你项目中的一个亮点,然后认真的去总结, 并且看一些别人的方案,看看有哪些你没有的,你没有的就是你方案的缺陷,看看该怎么解决。我觉得,缺陷还是很重要的,没有什么很完美的解决方案,方案好也 仅仅是针对满足了现在的所有业务需求而谈的。针对你的业务需求,谈出你的设计理念。项目不用多,认真的去总结一个就可以了。关键是很多人做了很多项目,但是却没有认真的去体会总结一个,做了也是白做,仅仅是代码熟练度增加了而已。

后话


最后

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

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

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

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

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

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

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

链图片转存中…(img-8zwhvNUV-1713337263612)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值