安卓面试:2022金三银四面试工厂,请保留这张阿里钉和字节抖音脸!

小程序开发


浏览:1277 次

开始

在对一般互联网公司技术人员的面试中,将有大约三四轮面试,大约2-3轮技术面试,以及一轮人力资源面试。一些访谈是关于“目标”,一些是关于“方法”,一些关于“算法”,还有一些关于“基本面”。在我看来,面试是找工作的第一个困难。我以为面试会问一些棘手的问题。如果是一家更好的公司,问题可能就越难。

阿里巴巴钉钉部远程访谈(技术部分)

一侧:

首先自我介绍

告诉我currenthashmap的实现原理。插入时如何确保螺纹安全?更新时如何确保线程安全?锁是什么时候加的?

关于代理的理解

什么是动态代理?什么是静态代理?告诉我这两者的区别

动态代理实现之间有什么区别?

JVM的常用命令行调优工具

Redis缓存崩溃和缓存崩溃

当HashMap的容量很大时,如何扩展它?

知道什么样的?快速分类的原则?

你认为哪个项目在开发过程中有亮点?亮点是什么?你遇到过什么困难吗?如何解决?

你对阿里巴巴了解多少?你对指甲了解多少?为什么选择指甲?

两面:

我谈了一会儿这个项目。它很浅

告诉我currenthashmap和hashtable的区别

谈JVM回收算法的优缺点

数据库事务隔离级别和问题?

数据库b+树索引过程

关于Redis

你了解Redis路由吗?

理解Spring、IOC、AOP原则。

AOP的底层实现,动态代理有多动态?如果有100个对象,我们如何动态代理这100个对象?

Java有什么锁?乐观锁悲观锁同步可重入锁读写锁。你用过可重入锁吗?retrantlock和-synchronized之间的区别

MySQL如何实现事务?

什么时候读取主数据库必须进行读/写分离,读取哪个从数据库由什么方法决定,以及使用什么方法从从数据库同步MySQL?

三面:

介绍你的项目和困难?

反射的作用是什么?

数据仓库、多线程和并发工具?

私有云、Docker和K8S?

你知道什么中间件,Dubbo、RocketMQ、Mycat等?

rpc是如何在Dubbo实现的?

我应该怎么做才能自己实现rpc?

Dubbo的服务注册和发现?

排序算法

字节跳动——抖音部门

字节抖音的一面(采访时长50分钟)

理解接口和抽象

了解流程和线程

了解各种实例、DCL同步机制为什么这样做、其他设计模式知道什么以及应用场景。

了解MVP和MVVM,P层做什么,以及如何实现M、V和P层的通信。

处理程序的工作流,处理程序是否可以在子线程中初始化,以及可以使用什么方案来替换子线程中处理程序的初始化。

JVM的组成和您对四大参考文献的理解

四种启动模式的启动方法和情景分析。例如,如果您单击一个按钮跳转到相应的页面,如何多次单击仅跳转一次?你可以用两种方式回答

了解http和https

广播和本地广播的一个区别

静态变量的用途是什么?具体应用场景。

添加两个链接列表的问题。想法+伪代码实现(这与阿里巴巴不同,因为它是一个牛科平台,编码体验不是特别好。面试官让我使用伪代码来实现想法)

字节抖音两边(采访时长70分钟)

首先自我介绍并询问项目、对旧MVP和MVC的理解以及Handler中的内存泄漏

关注处理程序的内存泄漏。为什么会导致内存泄漏?(源代码分析)解决方案是什么?(上述三种)

为什么我的库中的MVP应该基于范例、实现思想和泛型擦除(主要指公共逻辑提取的内容)来实现

了解视图自定义

基于对网盘的理解,让我分析上传和下载的内容,让我来做,以及将进行什么样的处理。有关灵感,请参见以下内容:

关于上传:分析定期上传和即时上传,关注数据大小

下载方面:线程安全