985毕业工作一年,腾讯试水一面连环21问,瞬间表示怀疑人生了

44 篇文章 0 订阅
13 篇文章 0 订阅

背景

985毕业至今刚好一年+四个月,我曾做过两三个月的测试感觉不是很合适,后面选择从事Android开发,大学学习过一段时间,还挺香。

两个月前春招还在热火朝天中,内心贼想去大厂试波水。于是乎,腾讯打电话叫我面试去。不过真真的是傻眼了,果然一句话说的真对:面试造火箭,工作拧螺丝!!整个一面下来表示怀疑人生…

没想过一面就能问这么多,疯狂轰炸,连环21问,不得停歇。感觉我这辈子都不会忘记这次面试经历了,这里给大家分享一下腾讯试水的细节,我想,恐怕你也会表示同感。

面试过程

  • 栈和堆的区别
  • 接口和抽象类的本质区别
  • String、StringBuffer和StringBuilder的区别
  • 注解、反射、泛型
  • Handler消息机制,生产者和消费者模型
  • View、ViewGroup的事件传递机制,如何解决滑动冲突? 回答如何滑动冲突最好是举出实际的场景和怎么解决的
  • View、ViewGroup的绘制流程
  • okHttp、Retrofit的源码,原理
  • 解释一下什么是MVP架构
  • Https原理,加密算法
  • RecyclerView的缓存机制
  • 常见的设计模式主要问到了这几个(单例、代理、适配器、建造者),先说概念,然后面试官会问具体的使用场景
  • 最新的Google AAC架构(ViewModel、LiveData、Room等等)有没有在使用,以及背后的实现原理
    Kotlin有没有在使用,问这个问题的公司,基本上自己的公司在使用Kotlin开发新App,要么在使用Kotlin迁移、重构、与java混合在一起
  • 开发的App有哪些亮点,难点、如何排查线上的bug,有没有重构代码的经验
  • Android常见的内存泄漏原因,以及检查工具,主要是问如何使用Android Profile检查内存泄漏的,性能分析怎么做?以及第三方检查内存泄漏的工具LeakCanary的原理?
  • Android相关优化(网络优化、布局优化、电量优化、业务优化)
  • 介绍一下Java 的内存管理。回答了JVM垃圾回收机制、JVM的内存模型(忘记讲JVM的内存分配)让你实现俄罗斯方块,你会使用了哪些数据结构和算法?
  • EventBus实现原理和观察者模式在开发中的运用?
  • 动态代理模式如何运用?
  • App是如何沙箱化,为什么要这么做?

以上的面试题,主要是Android应用层知识,需要面试之前造造火箭的,还需要平时的耕耘、积累和总结。

面试结果可想而知,挂了,后面又陆陆续续面了几个大厂,有几个进了复试,没去,因为当时已经拿了浦发信用卡offer,薪资待遇还可以,就接了offer。

总体发现整个面试下来,投简历发现今年996的公司还蛮多的,前两年没有这么多。有的人事,boss会直接说是996,要么自己面试过程中问是不是996,996的公司是拒绝的,压根不想去。面试的过程中发现自己的信心不够,技术能力也不够、自己也着急。面试想想这几点要特别注意。

  • 像大一点的厂,投简历过去,在加上面试的时间回复,需要两周。
  • 如果面试官过程中,发现面试官没有问什么技术问题,或者问的问题不够深入,基本上可以断定这家公司不是靠技术作为驱动公司发展的。
  • 提高自己的信心,自己要会的多,对知识点的理解要深入。

关于知识梳理,这里再分享一下我面试这段时间的复习路线:(以下体系的复习资料是我从各路大佬收集整理好的)

一、2020大厂面试高频知识点

一、图片
二、网络和安全机制
三、数据库
四、插件化、模块化、组件化、热修复、增量更新、Gradle
五、架构设计和设计模式
六、性能优化
七、Android Framework
八、Android优秀三方库源码


二、Jetpack架构组件从入门到精通

  • Android Jetpack - Navigation
  • Android Jetpack - Data Binding
  • Android Jetpack - ViewModel & LiveData
  • Android Jetpack - Room
  • Android Jetpack - Paging
  • Android Jetpack - WorkManger
  • Android Jetpack架构组件之Lifecycle
  • Android Jetpack Compose 最全上手指南

三、Framework精编内核解析

主要内容包含:

  • 深入解析Binder
  • 深入解析Handler
  • Dalvik VM 进程系统
  • 深入解析 WMS
  • PackagerManagerService

四、Kotlin强化实战(附Demo)

第一章 Kotlin入门教程
第二章 Kotlin 实战避坑指南
第三章 项目实战《Kotlin Jetpack 实战》

  • 从一个膜拜大神的 Demo 开始
  • Kotlin 写 Gradle 脚本是一种什么体验?
  • Kotlin 编程的三重境界
  • Kotlin 高阶函数
  • Kotlin 泛型
  • Kotlin 扩展
  • Kotlin 委托
  • 协程“不为人知”的调试技巧
  • 图解协程:suspend

五、Android设计思想解读开源框架

  • 热修复
  • 插件化
  • 组件化框架设计
  • 图片加载框架
  • 网络请求框架
  • RXJava 响应式编程框架设计
  • IOC 架构设计
  • Android架构组件Jetpack

六、NDK模块开发

  • NDK 模块开发
  • JNI 模块
  • Native 开发工具
  • Linux 编程
  • 底层图片处理
  • 音视频开发
  • 机器学习

七、高级UI,自定义View

UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。

不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!

大厂面试题整合

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

该准备准备,该刷题刷题,临时抱佛脚至少体现了你对面试重视是不是?等你题目刷到一定程度,你就会发现自己的能力有了一个量变到质变的提升。

下面是我在平时的工作中就开始慢慢整理的一些面试题,有兴趣的朋友可以看看:

需要的朋友只需要 点赞支持一下 后,然后【点击这里免费获取

如果你已经错过金三银四,那么现在学习久是一个特别好的时候,学几个月,增强内功(技术能力)和外功(面试经验)。在下半年的金九银十,找一个更棒的平台,搞定一个更好的职位,给自己一个更好的未来。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值