抖音电商一二三hr面——排序挂两次
一面
自我介绍完之后让我在两段实习中挑一段来聊,你对哪段实习更有成就感?
聊了二十五分钟在百度的实习,因为百度实习是在一个算法组做开发,业务涉及算法内容,因此基本一直是我在讲业务
然后开始聊基础
- 讲一下MySQL中在一张表中进行查询时,如果走联合索引的查询过程
- 讲一下数据库的四个隔离级别
- MySQL是如何实现读已提交和可重复读的
- 讲一下HashMap的实现
- Java中HashMap的长度一般是2的整数次幂,为什么要这么做?
- HashMap中当链表长度超过阈值时优化为红黑树,红黑树是一个二叉比较树,需要比较key的大小,但HashMap中的key不要求实现comparable接口的,也不需要传比较器,那么它是如何把key放在红黑树中的
快四十分钟了,开始做编程题,多线程编程和算法题二选一,选了多线程编程。使用两个线程交替打印数字,一个线程打印奇数,一个线程打印偶数,但要求两个线程同步打印,也就是打印奇数-打印偶数-打印奇数…
反问知道面试官所在部门的业务,部门是抖音电商的商业平台和治理,也就是服务平台上的商家,团队内有两大业务,一个是面向大促场景,另一个是向内部运营团队提供运营系统
二面
自我介绍中说了在美团实习修复了一次线上bug,让把背景、怎么修复讲清楚
讲完问以后如何避免这种bug再出现
实习总共讲了快二十分钟吧,开始八股
- 实习中用了消息队列,主要是解决什么问题?
- 除了这种场景外还有哪些场景需要使用消息队列?
- 消息队列中如何保证消息的顺序性?
- 消息丢失怎么办?
- 简单比较一下进程、线程、协程这几个概念
- 讲几个你了解的CPU调度的算法
- 简单说一下这些算法的优缺点和适用场景
- 讲一下操作系统创建一个进程的流程
- Java如何创建线程
- 现在有8个任务,线程池的核心线程数为4,当我把8个任务提交给线程池,线程池创建线程的过程是什么样的?
- 使用Java现有工具如何实现一个生产者-消费者模型
- 讲一下JVM的组成和各部分的作用
- 如何判断一个对象可以被回收?
- Python中如何实现垃圾回收?
- 当热点缓存过期了,如何安全地重建热点缓存
算法题的题干是英文的,有n个任务,并有若干约束条件,约束条件均为某个任务必须在另一个任务之前执行,输出这n个任务的所有满足约束的执行顺序
三面
三面全程讲实习,两段实习问细节,没八股、没算法题,总共聊了四十多分钟
HR面
- 八月从美团离职拿到转正了吗?
- 秋招面了哪些?
- 两段实习,对于风格更喜欢哪家?
- 这两段实习给你带来最大的成长是什么?
- 未来城市怎么规划?
- 对工作选择的维度的排序是怎么样的?
转部门到国际电商-三面
基本在聊实习,为什么转码,个人性格,聊了五十分钟,没八股、没算法题
#抖音电商后端##秋招##Java#