07 _ 考官面对面:面试经验谈之校招与社招
『社招』裸辞一年半后的第一份正式工作(希望能让你少一点焦虑)
- docker 常见命令
- tcp 粘包和消息头
- Linux 文件和进程命令
三个线程并发读取,一个线程负责汇总计算,如何实现
Cron 表达式:周一到周五每半小时执行一次
有一张 user 表,写出分页查询
Linux 的常用排错命令
dockerfile 指定端口
怎么分析网络链路的故障?
1、linux top 后进程的状态讲解
2、僵尸进程以及如何避免
编程语言基础
Java
基础
java 中常见的异常?
Java8 新特性?Java11 新特性?Java17 新特性?(说只用过 Java8,新特性是分段锁和 lambda,17 公司刚换,只了解多了个封装类,final 修饰服能禁止任何类继承)
10,final 关键字
String 底层是通过 final 修饰的数组,是不可变的,这种不可变有什么好处?
- 安全性:字符串通常用于定义程序中的常量数据,不可变性确保了这些数据不会因为外部修改而发生意外变化。
- 线程安全:由于 String 对象是不可变的,它们天然是线程安全的,不需要额外的同步措施就可以在多线程环境中使用。
- 性能优化:不可变性允许对 String 对象进行一些性能优化,如字符串常量池的实现。JVM 可以对字符串常量进行重用,减少内存消耗。
5.IO 流不关闭有什么风险
数据结构
说一下 Java 中有哪些集合
hashmap
- 数据结构实现
- 扩容机制?扩容,为什么是 2 倍
- 将对象作为 key 需要注意哪些问题?键是一个对象,现在修改对象的一个属性,还能根据对象获取到对应的值吗? —— 可能可以?如果 hash 函数和这个属性没关系
- 多线程 put 会引发什么问题
- 1.7,1.8 的区别(底层数据结构,链表插入方式,哈希碰撞处理,扩容时数据的重哈希)
- 红黑树怎么遍历?遍历树有哪几种方式?
- get/put 算法给讲清楚
- 能把装载因子(load factor)和再哈希(rehashing)給讲清楚。
ConcurrentHashMap
- 线程安全?
- hashmap 的区别?
- Java8 前后对比,如何通过分段锁实现线程安全的?
- ConcurrentHashMap 的扩容机制
其他
- hashset 底层实现
- linkedHashMap 与 TreeMap 区别
- hashtable 用的是什么锁
- hash 碰撞解决方案
- 一致性 hash 算法
并发
线程
- 创建线程的方式
- abc 线程按序执行
- 主线程等待两个子线程执行
- 创建线程的几种方式
- 线程的生命周期,sleep 和 wait 的区别(持有锁,进入阻塞状态等)
- 线程底层执行的具体方法
- 线程的几种状态?
- 怎么保证线程安全?
- ThreadLocal 怎么实现的?可能的问题?
- 线程之间的同步及机制有哪些种类以及区别
CountDownLatch CyclicBarrier Semaphore LockSupport
线程池
- 线程池参数
- 线程池底层怎么实现任务提交到线程池的(提示 Worker)❌
- 线程池工作原理?从线程池 7 大核心参数角度讲
- 线程池多线程操作对象,是否需要加 volatile 保障可见性
锁
- CAS 机制问题及原理?ABA 问题讲一下,如何避免?
- 乐观锁悲观锁,cas 的应用(java 原子类 atomicInteger)
- java 原子类,atomicInteger,底层实现
- volatile 关键字,禁止重排序如何解决多线程可见性
- JAVA 共享锁和排他锁有哪几种
- Java 中的锁介绍一下,死锁一般是怎么导致的?开发中如何避免?
synchronized
- 如何升级锁级别,底层原理?
- synchronized 和 lock 区别
- 可重入锁,底层实现
- 底层实现,性能表现,锁升级
- 锁升级机制是怎么样的?偏向锁了解吗?怎么实现的
- 锁升级的过程(无锁→偏向锁→轻量级锁→重量级锁,java 对象头锁信息锁状态的变化)
synchronized和ReentrantLock实现和区别,jvm层的字节码等等(回答的不是很好)- lock 是否公平,能否实现非公平,如何实现
AQS
- 工作原理,如何实现公平锁和非公平锁。
- 哪些类型的锁
- 如何实现可重入锁,底层原理?
JVM
他至少要把 Java 的分代垃圾回收机制讲清楚,否则差不多就可以判定“不合格”了。对于有些能讲清楚的候选人,我还会进一步延伸,让他解释什么是 GC Root,解释 Java 程序中有哪些可以作为 GC Root?甚至深入到如何直接操作堆外内存(offheap)的程度,进一步挖掘这个候选人的技术广度和深度。
java 类加载流程
volatile 关键字作用
方法区存储什么数据
jvm 调优参数
- jvm 是什么,系统为什么会发生 OOM,堆内存 OOM 和栈 OOM 分别讲一下?如何排查?以及 JVM 调优
- jvm 双亲委派机制?堆内存如何从新生代进入到老年代,永久代存放什么数据?
7.垃圾回收怎么判断某个对象是否应该回收
JVM 方面有没有做过相关的调优,简单说说
双亲委派机制,如何打破
堆 gc 时的流转
1、String 内容存放在哪儿?
答:运行时常量池,然后把 jvm 的内存结构讲了一下,堆、栈、程序计数器、方法区等,每块区域的作用之类的。
2、jvm 的回收机制是什么?
问的有点大,只好从分代回收算法说起,从 GC ROOTS 的引用链机制到新生代的小空间复制
算法再到老生代的标记清除算法,最后就是新生代和老生代之间的关系以及跃迁等。
8,判断垃圾回收对象的方式
jvm 调优参数
2. JMM (Java Memory Model)
Go
- Golang 与 Java 的比较:这个问题比较广泛,我主要从虚拟机、协程支持、面向对象和泛型的区别,以及各自的使用场景进行了对比。
- Golang 的 GC 算法:我知道 Golang 使用的是三色标记法,但细节部分没有讲得很深入。
Python
框架
SpringBoot
springboot bean 生命周期
spring 事务实现,@Transaction 注解原理
用过 springboot 的注解有哪些?
Spring 和 SpringBoot 区别
2.spring 事务失效场景
1.springboot 启动原理
spring aop 实现,动态代理
反射,使用场景
spring 事务下,多线程修改数据库,失败后是否全部回滚
spring 循环依赖,如何解决
@Transaction 注解实现原理
实现一个 springboot starter
- SpringMVC 执行流程
- @ResponseBody 底层是怎么处理返回结果的?❌
- Spring 的 BeanFactory 和 FactoryBean 有什么区别
- Spring 如何解决循环依赖的?
- Spring 声明式事务,失效场景有哪些?
- 如果事务传播行为是 NOT_SUPPORT,spring 具体是怎么将事务挂起的?❌
让你设计一个 spring-boot-starter 你会怎么设计?
AOP,动态代理
MyBatis
工作中如何处理死锁;
springboot 核心模块有哪些
9,Strignbuilder 和 StringBuffer
6.怎么定位内存泄漏的情况
10.golang 和 java 中线程协程调用的区别,垃圾回收机制的区别
spring 中如何开启事务
现在有一个函数如下, 现在开启了事务,fun1 报错,fun2 不想一起回滚,有什么方法?
@Transactional
public void addData(){
// 可能涉及数据库操作、文件操作等
fun1(data);
/
fun2(data);
}
答案:开启一个异步线程或者并在 fun2 上添加 @Transactional(propagation = Propagation.REQUIRES_NEW) 注解,表示开启一个新的独立事务
jdbc 是什么?(平时只是用过,八股文没怎么背)
mybatis 是什么,和 jdbc 的关系?(寄,开始一通乱答)
mybatis plus 和 mybatis 是什么关系?
计算机网络
- tcp 与 udp 的区别
- tcp 三次握手四次挥手
- tcp 快速重传机制
- tcp time-wait
- https 如何实现签名校验
- https 和 http 区别,
- https 加密过程,https 基于对称加密和非对称加密等。
- 对称加密和非对称加密算法哪些。非对称加密算法在高并发下的缺陷怎么处理
- sql 注入,如何解决
- CSRF 攻击,如何解决
- session 是什么
- arp 协议
- 讲讲 Web 应用程序中的 Cookie 和 Session 是什么关系?
互联网应用大部分属于 Web 应用,开发人员或多或少会开发 Web 应用,而 Web 应用开发中一个很基本的问题是理解 Cookie 和 Session。有很多候选人简历中写精通 Web 开发,我就会问他们 Cookie 和 Session 是啥关系?实际上比较遗憾,真正能回答清楚的并不多。
这个问题需要一些底层 HTTP 协议知识,理解 HTTP 是无状态协议,理解服务端和客户端会话存储机制。对于能回答清楚的,我会进一步扩展,Session 可以存储在哪些地方?客户端?服务器端?缓存?还有数据库?这些存储机制有何利弊?粘性会话(sticky session)是什么意思?如何实现粘性会话?分布式会话如何实现?诸如此类,全面考查候选人 Web 应用开发和分布式架构的实战经验。
BIO、NIO
IO 多路复用
netty 了解吗
系统设计:不同数据库 sql 转换,词法分析
网络 io 分为哪几种
数据库
-
长文本如何建立索引
- (需求分析) 长文本是存储什么方向的文本? 地址、手机号、UUID。
- (需求分析) 这个数据表的数据量足够大吗,是否有必要建立索引?
- (需求分析) 数据类型是什么呢?如果是 Blob、Text 形式是不推荐的数据格式。
-
慢查询的优化。介绍项目中 SQL 优化是怎么做的?
-
间隙锁实现
SQL 题目
- 一道 mysql,十岁为一组,统计每个年龄段的用户数量。
- sql 题。量表联查拿到最新的 10 条数据
设计问题:
- 如果有一张一亿用户的用户表,你会怎么设计
- mysql 数据达到多少会产生瓶颈?
- id 哈希映射分库的话会产生什么问题?如何解决?
- 数据量大的表怎么处理(分区分表,数据归档,sql 查询走主键索引,顺序写,批量写,多表连接查询采用小表驱动大表,避免嵌套子查询)
Redis
- 为啥用 redis,怎么用的?
- redis 为啥好?(redis 快:基于内存,高效数据结构,io 多路复用等;数据稳定恢复:redis 事务,持久化 RDB 和 AOF,主从复制结构,哨兵监听重新选举等)
- redis 内部如何分散请求的,从底层分析
- redis 优势,解决了哪些问题
- redis 内存淘汰策略
- redis 过期删除策略,定期删除如何检索 key
- Redis 数据结构。
- zset 底层用的是什么数据结构 ?跳表原理是什么?时间复杂度是多少?
- hash 底层,为什么使用 ziplist,如何扩容
- redis 大 key 问题
- 怎么查出来是大key
- 怎么处理(其实就是减小单个 key 大小,可以根据属性拆分,亦可以拆成不同部分,关键在于降低一个 key 的大小)
- 清理过期数据
- 有效数据(未过期)根据业务建进行拆分
- 热点key定义,如何 `缓存热点key
- 缓存常见问题,
缓存穿透、缓存击穿等等,面试反问是不是可以做二级三级缓存,是的,可以在 redis 做一个,以及 jvm 使用 hashmap 等类似的缓存工具做一个。 → 多级缓存一致性问题
- 缓存常见问题,
- Redis 内存容量设置多少? `
- redis 持久化
- AOF 文件过大?如何重写?
- 持久化方式,优缺点是什么
- aof 日志写入流程,刷盘策略
- redis 故障恢复,rdb 和 aof 区别
- redis 如何保障高可用(持久化,集群架构)
- redis 的架构怎么选主
- redis 哨兵模式选主策略,优先级是否可变
- redis 主从复制过程
- redis cluster 与 sentinal 区别
- 缓存一致性,redis ,mysql 数据不一致问题怎么解决
- redis 延迟队列怎么做的?
- Redis 实现的延迟队列,假设数据量很大,如何进行拓展?
- Redis 乐观锁的应用场景,并举例说明;
- redission 分布式锁怎么实现的?
- redis 怎么保证原子性的?
- 编程题:多个线程从 Redis 获取一个数,进行随机累加,要求保证一致性,写出程序;
Kafka
- Kafka 怎么用的?为啥用 kafka(消息可靠传输:确认重试机制,幂等,分区多副本,偏移量手动提交,事务等;高吞吐量;页缓存,批量,零拷贝等,八股回答)
- 消息队列为什么选择 kafka, 不用 RocketMQ?
- kafka 底层如何存储数据,文件索引具体实现
- 消息队列使用场景
- kafka 如何保障高可用(和Redis、MySQL 一样)
- kafka 高吞吐量原因
- kafka 发送失败如何处理
- kafka ack 有几种,什么区别
- 如何保障消息不丢失?不丢失配置
- 顺序消费?
- kafka 重平衡过程,会造成什么问题,是否可对外服务
设计模式
- 工作中用了哪些设计模式
- 不同设计模式的概念理解
- 手写 double check 单例,为什么加 volatile, volatile 原理
系统设计题
短链服务
实现一个定时调度组件
设计一个二维码扫描登录
设计一个热点索引网站排行榜
场景题
场景:线上 cpu100 如何排查
场景:接口有大量第三方接口调用,如何优化
场景:线上机器频繁 full gc 如何排查
如果系统接口响应比较慢,你会从哪些方面排查?
服务出现问题一般怎么排查,什么命令?还是工具?
场景:mysql binlog 读取写入 kafka,服务挂掉了如何处理
场景:消费 kafka 一批数据写入数据库,服务挂掉如何确认某一消息是否已写入
项目
最近做的项目业务介绍,内部服务架构介绍和请求链路的介绍
有遇到 oom 的问题吗?怎么解决
聊项目相关,qps 多少
项目百万访问量,请求是如何优化的。
项目部署方式是什么?
系统无感切换数据源,怎么做能使得用户受到的影响最小?
线上问题处理流程,线上问题定位
多人项目流程
微服务问题排查流程
假设数据量暴增,日数据量千万级别,项目如何优化
写一下项目流程中用到的一条 sql
一般部署了多少机器,一般负载是多少
对这一块多问了一下,你们这么多机器,为什么负载这么高
另一个项目,重点也是问了大概多少流量,大概什么架构,部署了多少机器
我说了一下项目的架构,基本上都是一些数据整合,问我有没有自己的数据,这里我说了一些自己维护数据的项目
挑一个项目介绍,做的优化,解决,遇到的问题,难点
外部请求到平台的调用(nginx 域名映射,网关服务路由和白名单的设置)
接口并发量(Prometheus + Grafana 统计的)
理解题
高并发情况下优化
怎么设计高可用的系统,你会从什么方面考虑?
涉及到多个大型子系统,如何做架构设计,方法论
系统数据模型怎么设计的
监控关注的业务指标,问了一些微服务中对服务相关的监控
稳定性设计
讲讲 ddd 和 mvc 的区别
设计分布式系统的时候最需要 care 的点
服务拆分的合理性
对于服务治理、服务发现、熔断限流的理解
有些题目,稍微改一下,可以改成怎么看待 xxx
系统设计
拼音转汉字,再搜索包含汉字的词的实现方法;
- 给定一个 POI,如何召回附近的人。
做一个 Router 功能的设计,给一个 Event Class,包含了 Meta 和 Image 两个 Innerclass,Meta 里面会有参数 catalog 和 description,Image 里面也有参数,参数可以是 size 和 url。要求是 Router 可以根据不同的参数,把 event 给到不同的服务器。可能的场景:Meta 可能是一本电子书,会根据电子书的 meta 数据而发送到不同的服务器,比如 description 里描述 bookSize > 500kb ,event 会转发送到某一个服务器里,book 类别是某一类特别的分类,event 也会转发到另一个服务器里,可能 meta 里带有价格信息,也会根据价格信息做一些判断,转发到一个服务器中。而这个功能会期望 Event 携带的图片大小不超过 200kb,才能把 event 里携带的图片存储到图片服务器中,不然就要先做图片压缩,再拿新的图片 url 来存储到图片服务器中。
- 账密登录,怎么保证安全
- 设计一个短信验证码,怎么保证安全
- 设计一个分布式锁
系统设计:动态线程池
系统设计:不同数据库 sql 转换,词法分析
系统设计:多机房数据一致性
场景题:多线程转账,如何确保转账成功
- 线上服务某些
podcpu过高怎么排查,负载不均匀是什么问题,经典 Linux 场景题,回答差不多就行(top jstatck arthas dump等 )
阻塞队列底层实现
场景:数据库读写分离,如何改代码
分布式系统与中间件
-
Kubernetes 架构:面试官问我 Kubernetes 的架构是怎样的,我从 apiserver、controller、kubelet、scheduler 等方面进行了详细讲解。
-
扩展 Kubernetes scheduler:面试官问我如何扩展 Kubernetes scheduler 以处理大规模节点调度,我提到了优选阶段随机取部分节点进行优选,以及水平扩展 scheduler 节点,pod 做一致性 hash 来决定由哪个 scheduler 调度。
系统的 pod 数量、qps
- Es 怎么部署的,规格什么样的,数据量,数据到 es 是怎么流转的
- 线程池,线程池工作流程
- cap 理论
- 服务远程调用(结合 yml,springboot 启动类,consul 依赖 api,服务发现,心跳机制做健康检查,剔出宕机或不可用实例,微服务配置更新 consul 动态更新;服务调用方通过 feign 的形式从注册中心获取服务实例列表,借助 ribbon 轮询进行负载均衡)
- 项目中的滑动窗口控制流量是如何实现的?
- 分布式事务处理
项目重新设计的话可以有哪些优化
分库分表相关的设计太吓人了 —— 百度JAVA 社招 二面面经_牛客网
场景:海外规避隐私合规获取用户数据
算法与数据结构
用一台普通电脑对一个 100G 的大文件(内部是字符串记录)进行排序,本题只需给出算法思路。
有些候选人数据结构掌握较好,上面第 1 题能够轻松过关,这个时候我会进一步用问题 2 来考查。
问题 2 看上去规模很大,实际考查点也更多,但是核心考查的是分治思维(分而治之):先将大问题分解为子问题,依次解决子问题,最后再合并子问题的解得到最终解。分治思维也很强大,能帮助我们解决很多表面上看起来很庞大的问题,例如一个中大规模系统的架构设计,甚至一个企业组织的架构设计都离不开分治思维。
所以我用一个技术问题考查候选人是否具有分治思维,也就是看他是否具备解决大规模问题的思维基础。另外,这个问题同时也考查候选人对计算机组织(内外存)、文件操作、算法时空复杂度,以及各种排序算法(快排、归并等)的掌握程度,可以说是一举多得。
多线程呢?
RTree 索引的构建方法;
算法题:给定发车时间和延误区间,判断当前时间能赶上的最近的车;
- 最短路径问题
- 最长不重复子串
leetcode 63 不同路径 2
给一副扑克牌,判断里面是否有同花顺。
leetcode:字符串解码
a. leetcode79 单词搜索写了个大概,没撕出来。。。面试官说没事那再来一道,这道还是有点代码量的。
c. leetcode98 验证二叉搜索树,要求非递归写法,秒了
算法:智能水龙头
checking-existence-of-edge-length-limited-paths-ii
算法:lc82,删除排序链表中的重复元素 2
算法:lc295,数据流的中位数
算法:lc122,买卖股票的最佳时机 2 - 复原 ip 地址:leetcode 93 题
- 找到环形链表的入口处:leetcode 142. 环形链表 II
斐波那契的三种实现(递归,动规,变量替换)
算法:双线程打印 1-100
算法:获取所有回文子串
算法:三数之和
算法:lc3184,构成整天的下标对数目 1
算法:打印数组中所有比前面小比后面大的数字
(1)双端检索单例手写 (2)DFS 相关没写出来(3) 链表 k 个为止翻转
拓展:四数之和,k 数之和
leetcode 227 基本计算器 (没撕出来,写了个大概说了思路)
算法:lc98,验证二叉搜索树
一个文件里有 40 亿个数字,找出最大的 10 个数字
如何实现一个动态线程池
- 从无限字符流中随机选出 10 个字符:这个问题我没有答出来,后来查了一下是蓄水池采样算法。
算法:lc114,二叉树展开为链表
算法:lc163,寻找峰值
算法:lc3,无重复字符的最长子串
二叉树的前序遍历,递归和栈两种写法
不重复最长字串
贝叶斯的简单推理,假设有 1000 人,其中 990 人健康,1 人患病。1 个患病人检测出阳性的概率是 99%,所以患病且阳性的人数是 0. 99。990 个健康人误诊为阳性的概率是 1%,健康且阳性的人数是 9.9 人。一共 0.99+9.9=10.89 个阳性,其中真正患病的概率为 0.99÷10.89=0.0909,约等于百分之九。
假定存在某种疾病,每 1000 人中就有 1 人患上该疾病;该疾病可以被检测出来,检测准确率为 99%。如果一个人已被测出是阳性。
问:他真的得了该疾病的概率是多少?
接口设计与实现
-
如何保证接口的幂等,乐观锁与悲观锁
-
业务上怎么实现幂等?(分布式锁和采用 aop 自定义幂等注解)
-
多台机器的话怎么实现幂等?(不会) ~gpt 的回答:分布式锁,唯一索引,乐观锁等
-
接口的安全性考虑
-
protobuf 为什么快
项目经验
项目启动的 JVM 参数如何设置
caffeine 中的 LRU 怎么优化的?window-TinyLFU?mysql 中的 LRU 优化,如果让你优化怎么优化(卒)
优化 LRU 借鉴 JVM 中的标记-整理算法,
B+树对比 hash 的优点?对比 bitmap 呢?bitmap 搜索方式。
权限平台涉及几张表?(项目相关)
实现 RPC 需要注意什么;
Zookeeper 的实现原理;
ACL,RBAC,ABAC 模型的区别,ACL 基于 linux 的应用场景?
- 是否了解内部 rpc 的底层实现?
- 怎么实现一个 rpc 框架?
- 了解开源的 netpoll 吗
支付处理
- 项目中如何使用支付,支付处理失败怎么办?
个人情况
2,意向地,怎么考虑的
3,离职原因,未来规划
3,性格,家庭情况,优缺点,待提升的点
5,如何解压(冥想,给 HR 整笑了)
4,业务介绍,技术难点
6,原薪资,期望薪资,offer 情况
怎么学习技术的?看过哪些书说一下?最近读了哪些书?
平时对哪些技术方向感兴趣?
对开源技术的关注度
印象深刻的技术提升?
有读过哪些源码?答 AQS,说一下 AQS
平时工作中遇到的问题 →不是个好问题,具体哪方面,还是任意发挥?
跨部门协作、产品 battle asr 方案、设计速度的测试工具的方法
linux
linux 僵尸进程和假死进程区别
linux df 和 du 区别
自我评价,周边人评价
职业规划
更希望做偏业务还是偏底层
期望薪资
-
请简述您如何理解腾讯的企业文化,并结合您的经验谈谈您如何融入这样的文化环境。
-
在团队合作项目中,您通常扮演什么角色?请举例说明您如何在团队中发挥作用。
-
描述一次您在项目中遇到困难或挑战的情况,以及您是如何解决问题的。
-
请讲述一个您成功领导团队达成目标的经历,包括您采取的策略和最终结果。
-
面对紧急且重要的任务时,您如何安排时间和资源以确保任务按时完成?
-
请分享一个您如何通过创新思维解决工作中问题的例子。
-
描述一次您如何处理并解决了与同事之间的冲突。
-
谈谈您对数据驱动决策的理解,并给出一个您应用这一方法解决问题的案例。
-
请解释您如何保持自己在专业领域的知识更新和技能提升。
-
描述您参与的一个项目,其中您如何利用技术改善产品或服务。
-
请举例说明您如何评估并优化工作流程以提高效率。
-
谈谈您认为未来几年内,您申请的岗位将面临哪些主要挑战,以及您如何应对这些挑战。
-
描述一次您如何处理多个任务和项目的经验,特别是如何设置优先级和时间管理。
-
请分享一个您如何通过有效沟通解决工作中误解或错误的情况。
-
谈谈您对用户研究的理解,并给出一个您如何根据用户反馈改进产品的例子。
-
请解释您在项目管理中如何确保团队成员明确了解他们的职责和期望。
-
描述一次您如何处理项目延期的情况,包括您采取的措施和学习到的经验。
-
请谈谈您如何看待失败,并给出一个您从失败中学习和成长的例子。
-
描述您如何利用技术工具提高工作效率或解决问题的具体例子。
-
谈谈您对敏捷开发方法的理解,并分享一个您在项目中实施敏捷方法的经验。
-
请解释在高压环境下工作对您意味着什么,以及您如何管理压力。
-
描述一个您如何识别并抓住职业发展机会的例子。
-
请分享一个您如何克服工作中的技术难题或学习新技能的经历。
-
谈谈您对跨部门合作的看法,并给出一个您在这方面的成功案例。
-
描述一次您如何通过分析竞争对手来改善自己的产品或服务。
-
请解释您如何确保自己的工作符合公司的道德和合规标准。
了解多路复用吗
了解红黑树吗?实现原理
高德的面试难度较大,尤其是涉及到 LBS(位置服务)相关的内容,比如商家 POI 召回和 RTree 索引等,这些内容我之前没有深入研究
反问
- 成长性(所做项目方向,项目当前阶段,需求处于自我探寻 or 产品提出)
- 入职后,下一个职级需要的能力是怎么样的?平均晋升的时间长度?晋升后的薪资情况?
- 团队人数,年龄分布,分别做的方向
- 工作节奏,开会时间和长度、上下班时间
- 沉淀的资料
- 团队分享
- 绩效考核机制
- 当前公司满意和不满意的地方
- 怎么学习技术的?