收到字节月薪35k Offer,揭秘面试流程及考点
Posted 网易在职程序猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了收到字节月薪35k Offer,揭秘面试流程及考点相关的知识,希望对你有一定的参考价值。
前段时间,有个朋友又出去面试了,这次他面试目标比较清晰,面的都是业务量大、业务比较核心的部门。前前后后去了不少公司,几家大厂里,他说给他印象最深的是字节。
3轮技术面 + 1 轮 HR 面,他最终拿到了 35k*15薪 的 Offer。
主要考察对应⽤技术和底层原理的掌握,以及对过往项目的业务理解。之所以令他印象深刻,是因为每轮都聊了一个半小时以上,确实让他受益匪浅。
一面
1.算法题:两个栈实现队列
2.算法题:输入一个数组,想一种方法让这个数组尽可能的乱序,保证功能能实现的情况下时间复杂度和空间复杂度尽可能的小,可使用随机数函数。(面试官最后说了 O(n)的时间复杂度能实现)
3.写一个单例(自己写一种就行)
4.ActivityA -> Activity B -> Activity A
Activity A 启动模式为 singleTask
Activity B 启动模式为常规模式
问A 启动 B,B 又启动 A 的生命周期调用顺序?
5.说一下onsaveinstancestate() 调用时机,它用来干什么的。
6.onsaveinstancestate() 保存的那个参数叫什么?Bundle 里面都放一些什么东西?怎么实现序列化?Parcelable 和 Serializable有什么区别?
7.数组和链表的区别
8.HashMap 的结构以及原理
9.你能说一下retrofit它是做什么的,如果知道基本框架也说一下
10.了解 View 的绘制机制吗,能说一下吗
11.我看你项目里用的 Fragment 能说一下 Fragment A 启动了 Fragment B,Fragment B 中按下返回键只退出 Fragment B 怎么实现。
12.为什么handler可以线程切换
13.Rxjava map关键字的作用是什么
14.怎么获取view的宽高,如何确定值是准确的,说了view.post()补充viewTreeObserverOnGlobalLayoutListener
15.你还有什么要问的吗?
二面
1.算法题:一个字符串,求最长没有重复字符的字符串长度
2.string stringbuffer 和 stringbuilder 区别
3.final finally finalize区别
4.数组和链表的区别
5.HashMap 了解过吗
6.Tcp 三次握手四次挥手
7.get 与 post 的区别
8.synchronized 的作用
9.你知道哪些设计模式
10.android 进程通信的方法
11.那你能说一下 Intent 是怎么进程通信的
12.内存泄漏有哪几种情况,怎么查看内存泄露的问题
13.还有什么要问的
三面
1.项目深挖
2.ARouter路由原理
3.如何管理过多的路由表?
4.看视频的时候网络请求很慢怎么优化?
5.说说HTTP3.0有什么改进?
6.App上线后用户使用时卡顿怎么查看是什么原因?
后续就是HR面了,这里就省略了,这些大厂都不会有太大的差别。
我朋友最终选择字节,除了这是核心项目之外,还有一个原因,字节的福利号称业内最好,薪资也是同类公司中最高。
“薪资高、发展好、福利待遇优” 似乎已经成为字节跳动的标签。
而很多人觉得大厂门槛高:
“渣本双非学历进不了大厂!”
“工作不满 3 年进不了大厂!”
“非科班毕业的,进不了大厂!”
可对于我这个渣本双非毕业的朋友来说,进字节,似乎并没有那么难。用他的话说,进大厂就靠一条:技术实力。
你只要技术实力够好+在面试中表现得还不错,就能拿下 Offer。
下面是他分享给我的他的复习资料,在这里分享给大家,最后希望大家尽量避坑,可以拿到理想的offer。
《高级UI》
UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。
不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!
《Framework精编内核解析》
主要内容包含:
- 深入解析Binder
- 深入解析Handler
- Dalvik VM 进程系统
- 深入解析 WMS
- PackagerManagerService
《360°全方面性能调优》
内容主要包含一下几点:
1、设计思想与代码质量优化
2、程序性能优化
- 启动速度与执行效率优化
- 布局检测与优化
- 内存优化
- 耗电优化
- 网络传输与数据储存优化
- APK大小优化
3、开发效率优化
- 分布式版本控制系统Git
- 自动化构建系统Gradle
4、项目实战
- 启动速度
- 流畅度
- 抖音在APK包大小资源优化的实践
- 优酷响应式布局技术全解析
- 网络优化
- 手机淘宝双十一性能优化项目揭秘
- 高德APP全链路源码依赖分析
- 彻底干掉OOM的实战经验分享
- 微信Android终端内存优化实践
《Android第三方框架》
本篇内容要点(1042页)
- 热修复设计
- 插件化
- 组件化框架设计
- 图片加载框架
- 网络请求框架
- RXJava 响应式编程框架设计
- IOC 架构设计
- Android架构组件Jetpack
《NDK模块开发》
NDK是原生开发工具包,这套工具允许Android使用C/C++代码,并提供了众多的平台库。
主要内容包含:
- NDK 模块开发
- JNI 模块
- Native 开发工具
- Linux 编程
- 底层图片处理
- 音视频开发
- 机器学习
《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 最全上手指南
《Flutter技术进阶》
- Flutter跨平台开发概述
- Windows中Flutter开发环境搭建
- 编写你的第一个Flutter APP
- Flutter Dart语言系统入门
《2020大厂面试高频知识点》
一、图片
二、网络和安全机制
三、数据库
四、插件化、模块化、组件化、热修复、增量更新、Gradle
五、架构设计和设计模式
六、性能优化
七、Android Framework
八、Android优秀三方库源码
所有资料已经全部上传至开源项目【GitHub】,有需要的朋友自取。
以上是关于收到字节月薪35k Offer,揭秘面试流程及考点的主要内容,如果未能解决你的问题,请参考以下文章
收到字节 Offer,月薪 45k,揭秘Java面试流程及考点
艰辛挺过字节Android研发岗4轮面试,收到sp offer(月薪45k)!揭秘字节面试流程及考点