2020字节跳动提前批安卓客户端-一二三四+HR面,Android开发两年

引言

整体来说,面试的时间线拉的太长,从投简历到拿Offer用了一个月,还是有点疲惫的,速战速决会更好一点。尤其是最后等待Offer,每天都很焦虑。

时间线如下:
1. 2020.07.15 投递简历
2. 2020.07.20 第一轮面试(技术)
3. 2020.07.21 第二轮面试(技术)
4. 2020.07.27 第三轮面试(技术)
5. 2020.07.29 第四轮面试(技术)
6. 2020.08.04 HR面试(非技术)
7. 2020.08.17 录用意向书

一面(2020.07.20)

时间:15:00 - 15:45, 共45min
1. 自我介绍

  • Android
    2. 介绍项目
    3. Activity生命周期
    4. RecyclerView
    5. ListView
    6. SharedPreference
    7. Handler
    8. 用过哪些布局
    9. 网络请求用的什么框架
    10. OkHttp了解过吗
    11. 如何使用OkHttp发起一个GET请求

  • Java
    12. 强引用、弱引用、软引用
    13. Java线程池

  • 操作系统
    14. 线程和进程

  • 手撕代码
    15. 给出一个乱序数组,求排序后相邻两数的差的最大值。要求时间复杂度为O(n),空间复杂度为O(n)
    16. 二叉树镜像
    17. 每K个一组,反转链表

  • 反问环节(略)

17:45收到二面通知

二面(2020.07.21)

时间:13:00 - 13:46, 共46min

  • 1. 自我介绍

  • Android
    2. 介绍项目
    3. 在安卓开发过程中,平板和手机有什么区别
    4. 平时如何找开源项目
    5. 看过哪些博客
    6. 看过哪些安卓书

  • 手撕代码
    7. 判断二叉树是否是完全二叉树

  • 算法
    8. 了解过哪些排序算法
    9. 讲一下归并排序的原理

  • 计算机网络
    10. TCP与UDP
    11. 为什么UDP实时性比较好
    12. TCP如何保证可靠性
    13. TCP如何进行流量控制

  • Java
    14. Java反射

  • 反问 + 闲聊(略)

16:45收到三面通知

三面(2020.07.27)

时间:14:00 - 14:23, 共23min

  • 1. 自我介绍

  • Android
    2. 对安卓的认识
    3. 安卓操作系统基于什么操作系统
    4. Linux 和 Unix 的区别
    5. Activity 启动模式
    6. Handler
    7. Handler, Message, MessageQueue 的区别

  • 算法
    8. 排序算法

  • **计算机网络
    9. 输入网址回车,到显示页面的全过程
    10. DNS解析的过程
    11. TCP三次握手
    12. TCP四次挥手
    13. HTTP默认端口是多少

  • Java
    14. 强引用、弱引用、软引用

  • 手撕代码
    15. 懒汉式单例模式
    16. 生产者消费者模型

  • 反问+闲聊(略)

第二天接到 HR 电话,说还需要再面试一次。

四面(2020.07.29)

时间:15:00 - 15:24, 共24min

  • 1. 自我介绍
  • 2. 介绍项目

最后

**要想成为高级安卓工程师,必须掌握许多基础的知识。**在工作中,这些原理可以极大的帮助我们理解技术,在面试中,更是可以帮助我们应对大厂面试官的刁难。


2020字节跳动提前批安卓客户端-一二三四+HR面,Android开发两年

2020字节跳动提前批安卓客户端-一二三四+HR面,Android开发两年

CodeChina开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》
km-1630987150725)]

CodeChina开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》

上一篇:接上篇,十家大厂面试心得


下一篇:理论学习-工作生活办事心得-面试篇